06172013 A versão mais recente do TraderCode (v5.6) inclui novos indicadores de Análise Técnica, Gráficos de Ponto e Gráfico e Backtesting de Estratégia. 06172013 Última versão do NeuralCode (v1.3) para Neural Networks Trading. 06172013 ConnectCode Barcode Font Pack - permite códigos de barras em aplicações de escritório e inclui um suplemento para o Excel que suporta a geração em massa de códigos de barras. 06172013 InvestmentCode, um conjunto abrangente de calculadoras e modelos financeiros para o Excel está agora disponível. 09012009 Lançamento do Investimento Livre e Calculadora Financeira para Excel. 0212008 Lançamento do SparkCode Professional - add-in para criar Dashboards no Excel com sparklines 12152007 Anunciando ConnectCode Duplicate Remover - um poderoso add-in para encontrar e remover entradas duplicadas no Excel 09082007 Lançamento do TinyGraphs - add-in de fonte aberta para criar sparklines e minúsculo Gráficos em Excel. Estratégia Backtesting no Excel Estratégia Backtesting Expert O Backtesting Expert é um modelo de planilha que permite criar estratégias de negociação usando os indicadores técnicos e executando as estratégias através de dados históricos. O desempenho das estratégias pode então ser medido e analisado rápida e facilmente. Durante o processo de backtesting, o Backtesting Expert executa os dados históricos em uma linha por linha maneira de cima para baixo. Cada estratégia especificada será avaliada para determinar se as condições de entrada são atendidas. Se as condições forem satisfeitas, uma negociação será inserida. Por outro lado, se as condições de saída forem satisfeitas, uma posição que foi inserida anteriormente será encerrada. Diferentes variações de indicadores técnicos podem ser geradas e combinadas para formar uma estratégia de negociação. Isso torna o Backtesting Expert uma ferramenta extremamente poderosa e flexível. Backtesting Expert O Backtesting Expert é um modelo de planilha que permite criar estratégias de negociação usando os indicadores técnicos e executando as estratégias através de dados históricos. O desempenho das estratégias pode então ser medido e analisado rápida e facilmente. O modelo pode ser configurado para entrar em posições longas ou curtas quando determinadas condições ocorrem e sair das posições quando outro conjunto de condições forem atendidas. Ao negociar automaticamente em dados históricos, o modelo pode determinar a lucratividade de uma estratégia de negociação. Backtesting Expert Step by Step Tutorial 1. Inicie o Backtesting Expert O Backtesting Expert pode ser iniciado a partir do Menu Iniciar do Windows - Programas - TraderCode - Backtesting Expert. Isso lança um modelo de planilha com várias planilhas para gerar indicadores de análise técnica e testar as diferentes estratégias. Você vai notar o Backtesting Expert inclui muitas planilhas familiares como DownloadedData, AnalysisInput, AnalysisOutput, ChartInput e ChartOutput do modelo de análise técnica Expert. Isso permite que você execute todos os seus testes de volta rapidamente e facilmente a partir de um ambiente de planilha familiar. 2. Primeiro, selecione a planilha DownloadedData. Você pode copiar dados de qualquer planilha ou arquivos separados por vírgula (csv) para esta planilha para análise técnica. O formato dos dados é como mostrado no diagrama. Como alternativa, você pode consultar o documento Download Stock Trading Data para baixar dados de fontes de dados bem conhecidas, como o Yahoo Finance, o Google Finance ou o Forex para uso no Backtesting Expert. 3. Depois de ter copiado os dados, vá para a folha de cálculo AnalysisInput e clique no botão Analyze e BackTest. Isso irá gerar os diferentes indicadores técnicos na planilha AnalysisOutput e executar backtesting nas estratégias especificadas na planilha StrategyBackTestingInput. 4. Clique na folha de cálculo StrategyBackTestingInput. Neste tutorial, você só precisará saber que especificamos estratégias longas e curtas usando cruzamentos de média móvel. Estaremos entrando em detalhes de especificação de estratégias na próxima seção deste documento. O diagrama abaixo mostra as duas estratégias. 5. Uma vez concluídos os testes de volta, a saída será colocada nas folhas de cálculo AnalysisOutput, TradeLogOutput e TradeSummaryOutput. A folha de cálculo AnalysisOutput contém os preços históricos completos e os indicadores técnicos do stock. Durante os testes de volta, se as condições para uma estratégia são satisfeitas, informações como o preço de compra, preço de venda, comissão e lucros serão registrados nesta planilha para facilitar a referência. Esta informação é útil se você gosta de rastrear através das estratégias para ver como as posições de ações são inseridas e saídas. A planilha TradeLogOutput contém um resumo das operações realizadas pelo Backtesting Expert. Os dados podem ser facilmente filtrados para mostrar apenas os dados de uma estratégia específica. Esta planilha é útil para determinar o lucro ou a perda global de uma estratégia em períodos diferentes. A saída mais importante dos testes de volta é colocada na planilha TradeSummaryOutput. Esta planilha contém o lucro total das estratégias realizadas. Conforme demonstrado no diagrama abaixo, as estratégias geraram um lucro total de 2.548,20, totalizando 10 negócios. Destes negócios, 5 são Long posições e 5 são Short posições. A Razão de maior que 1 indica uma estratégia lucrativa. Explicação das diferentes planilhas Esta seção contém a explicação detalhada das diferentes planilhas no modelo do Backtesting Expert. As planilhas DownloadedData, AnalysisInput, AnalysOutput, ChartInput e ChartOutput são as mesmas do modelo Expert de análise técnica. Assim, eles não serão descritos nesta seção. Para obter uma descrição completa dessas planilhas, consulte a seção Especialista em Análise Técnica. StrategyBackTestingInput worksheet Todas as entradas para backtesting incluindo as estratégias são inseridas usando esta planilha. Uma estratégia é basicamente um conjunto de condições ou regras que você vai comprar em um estoque ou vender um estoque. Por exemplo, você pode querer executar uma estratégia para ir Long (ações de compra) se a média móvel de 12 dias do preço cruza acima da média móvel de 24 dias. Esta planilha trabalha em conjunto com os indicadores técnicos e dados de preço na planilha AnalysisOutput. Daí a média móvel indicadores técnicos têm de ser gerados, a fim de ter uma estratégia de negociação baseada na média móvel. A primeira entrada necessária nesta planilha (como mostrado no diagrama abaixo) é especificar se a Sair de todas as operações no final da sessão de teste de volta. Imagine o cenário onde as condições para a compra de um estoque ocorreu eo especialista Backtesting entrou em um comércio Long (ou Short). No entanto, o período de tempo é demasiado curto e terminou antes do comércio pode satisfazer as condições de saída, resultando em alguns comércios não saiu quando a sessão backtesting termina. Você pode definir isso para Y para forçar todos os comércios a serem encerrados no final da sessão backtesting. Caso contrário, os negócios serão deixados abertos quando backtesting sessão termina. Estratégias Um máximo de 10 estratégias podem ser apoiadas em um único teste de volta. O diagrama abaixo mostra as entradas necessárias para especificar uma estratégia. Iniciais de Estratégia - Esta entrada aceita um máximo de dois alfabetos ou números. As iniciais de estratégia são usadas nas planilhas AnalysisOutput e TradeLog para identificar as estratégias. Long (L) Short (S) - Isso é usado para indicar se deve ser inserida uma posição Long ou Short quando as condições de entrada da estratégia forem atendidas. Condições de entrada Uma negociação longa ou curta será inserida quando as Condições de Entrada forem atendidas. As condições de entrada podem ser expressas como uma expressão de fórmula. A expressão de fórmula diferencia maiúsculas de minúsculas e pode usar Funções, Operadores e Colunas conforme descrito abaixo. Crossabove (X, Y) - Retorna True se a coluna X cruzar acima da coluna Y. Esta função verifica os períodos anteriores para garantir que um crossover realmente ocorreu. Crossbelow (X, Y) - Retorna True se a coluna X cruzar abaixo da coluna Y. Esta função verifica os períodos anteriores para garantir que um crossover realmente ocorreu. E (logicalexpr,) - Boolean E. Retorna True se todas as expressões lógicas forem True. Ou (logicalexpr,) - Boolean Or. Retorna True se alguma das expressões lógicas for True. Daysago (X, 10) - Retorna o valor (na coluna X) de 10 dias atrás. Previoushigh (X, 10) - Retorna o valor mais alto (na coluna X) dos últimos 10 dias, inclusive hoje. Previouslow (X, 10) - Retorna o valor mais baixo (na coluna X) dos últimos 10 dias, inclusive hoje. Operadores Maior que Igual Não igual Maior ou igual Subtração Multiplicação Divisão Colunas (de AnalysisOutput) A - Coluna AB - Coluna BC .. .. YY - Coluna YY ZZ - Coluna ZZ Esta é a parte mais interessante e flexível da entrada Condições. Ele permite que as colunas da planilha AnalysisOutput sejam especificadas. Quando os testes de retorno forem realizados, cada linha da coluna será usada para avaliação. Por exemplo, A 50 significa que cada uma das linhas na coluna A da folha de cálculo AnalysisOutput será determinada se é maior do que 50. AB Neste exemplo , Se o valor na coluna A na folha de cálculo AnalysisOutput for maior ou igual ao valor da coluna B, a condição de entrada será satisfeita. E (A B, CD) Neste exemplo, se o valor na coluna A na folha de cálculo AnalysisOutput for maior do que o valor da coluna B eo valor da coluna C for maior que a coluna D, a condição de entrada será satisfeita. Crossabove (A, B) Neste exemplo, se o valor da coluna A na folha de cálculo AnalysisOutput ultrapassar o valor de B, a condição de entrada será satisfeita. Crossabove significa que A originalmente tem um valor que é menor ou igual a B eo valor de A posteriormente se torna maior que B. Condições de Saída As Condições de Saída podem usar Funções, Operadores e Colunas conforme definido nas condições de entrada. Além disso, ele também pode fazer uso de variáveis como mostrado abaixo. Variables for Exit Condições lucro Isso é definido como o preço de venda menos o preço de compra. O preço de venda deve ser superior ao preço de compra para um lucro a ser feito. Caso contrário, o lucro será zero. Perda É definido como o preço de venda menos o preço de compra quando o preço de venda é inferior ao preço de compra. (Preço de venda - preço de compra) Preço de compra. Preço de venda deve ser maior ou igual ao preço de compra. Caso contrário, profitpct será zero. Losspct (preço de venda - preço de compra) preço de compra. Preço de venda deve ser inferior ao preço de compra. Caso contrário, losspct será zero. Exemplos profitpct 0.2 Neste exemplo, se o lucro em termos de percentagem for superior a 20, as condições de saída serão satisfeitas. Comissão em termos de percentagem do preço de negociação. Se o preço de negociação é 10 e Comissão é 0,1, em seguida, comissão será 1. A comissão percentual e comissão em dólares serão somados para calcular a comissão total. Comissão em dólares. O percentual de comissão e comissão em dólares será somado para calcular o total da comissão. Número de Ações - Número de ações a serem compradas ou vendidas quando as condições de entrada e saída da estratégia forem atendidas. Folha de trabalho TradeSummaryOutput Esta é uma planilha que contém um resumo de todos os negócios realizados durante os testes de volta. Os resultados são categorizados em Long e Short Trades. Uma descrição de todos os campos pode ser encontrada abaixo. Total ProfitLoss - Resultado total após a comissão. Este valor é calculado somando todos os lucros e perdas de todas as operações simuladas no back test. Lucro total antes da comissão - Lucro ou prejuízo total antes da comissão. Se a comissão for definida como zero, este campo terá o mesmo valor que o Total ProfitLoss. Comissão Total - Comissão total exigida para todas as operações simuladas durante o backtest. Número total de negócios - Número total de negócios realizados durante o teste de volta simulada. Número de negócios vencedores - Número de negócios que obtêm lucro. Número de negócios perdidos - Número de negócios que causam prejuízo. Percentagem de negócios vencedores - Número de negócios vencedores dividido pelo número total de negócios. Percentagem de negócios perdidos - Número de negócios perdedores dividido pelo número total de negócios. Average winning Trade - O valor médio dos lucros dos negócios vencedores. Média perdendo Comércio - O valor médio das perdas das operações perdedoras. Average Trade - O valor médio (lucro ou prejuízo) de um único negócio do teste de volta simulada. Maior Comércio Vencedor - O lucro do maior comércio vencedor. Maior perda de comércio - A perda do maior comércio perdedor. Razão média de perda de renda - Média ganhando Comércio dividido pela Média perdendo Comércio. Ratio winloss - Soma de todos os lucros nos comércios vencedores dividido pela soma de todas as perdas nos comércios perdedores. Uma razão maior do que 1 indica uma estratégia lucrativa. Planilha TradeLogOutput Esta planilha contém todos os negócios simulados pelo Expert Backtesting classificados pela data. Ele permite que você faça zoom em qualquer comércio específico ou período de tempo para determinar a rentabilidade de uma estratégia de forma rápida e fácil. Data - A data em que uma posição Long ou Short é inserida ou saiu. Estratégia - A estratégia que é usada para executar este comércio. Posição - A posição do negócio, se Long ou Short. Comércio - Indica se este comércio está comprando ou vendendo estoques. Ações - Quantidade de ações negociadas. Preço - O preço em que as ações são compradas ou vendidas. Comm. - Comissão total para este comércio. PL (B4 Comm.) - Lucro ou prejuízo antes da comissão. PL (Aft Comm.) - Lucro ou prejuízo após a comissão. Porra. PL (Aft Comm.) - Lucro ou prejuízo acumulado após comissões. Isso é calculado como o lucro acumulado total do primeiro dia de um negócio. PL (na Posição de Encerramento) - Lucro ou prejuízo quando a posição é fechada (encerrada). Tanto a comissão de entrada como a comissão de saída serão contabilizadas neste PL. Por exemplo, se temos uma posição Longa onde o PL (B4 Comm.) É 100. Assumindo que quando a posição é inserida, uma comissão 10 é cobrada e quando a posição é saida, outra comissão de 10 é carregada. O PL (na posição de fecho) é 100-10-10 80. Tanto a comissão ao entrar na posição e sair da posição são contabilizadas na posição fechada. Voltar para TraderCode Análise Técnica Software e Indicadores TécnicosUsando Excel para Back Test Trading Estratégias Como testar de volta com o Excel Ive feito uma boa quantidade de estratégia de negociação de volta testes. Ive usou sofisticadas linguagens de programação e algoritmos e Ive também feito com lápis e papel. Você não precisa ser um cientista de foguetes ou um programador para testar muitas estratégias de negociação. Se você pode operar um programa de planilha como o Excel, então você pode voltar testar muitas estratégias. O objetivo deste artigo é mostrar a você como testar uma estratégia de negociação usando o Excel e uma fonte de dados publicamente disponível. Isso não deve custar mais do que o tempo que leva para fazer o teste. Antes de começar a testar qualquer estratégia, é necessário um conjunto de dados. No mínimo, esta é uma série de datas e preços. Mais realisticamente você precisa o datetime, aberto, alto, baixo, fechar preços. Você geralmente só precisa do componente de tempo da série de dados se você estiver testando estratégias de negociação intraday. Se você quiser trabalhar junto e aprender a testar de volta com o Excel enquanto você está lendo isso, em seguida, siga as etapas que eu esboço em cada seção. Precisamos obter alguns dados para o símbolo que vamos voltar a testar. Ir para: Yahoo Finance No campo Enter Symbol (s) digite: IBM e clique em GO Under Quotes no lado esquerdo, clique em Historical Prices e insira os intervalos de datas desejados. Selecionei de 1 de janeiro de 2004 a 31 de dezembro de 2004 Desloque-se até a parte inferior da página e clique em Fazer download da planilha. Salve o arquivo com um nome (como ibm. csv) e em um local que você possa encontrar mais tarde. Preparando os dados Abra o arquivo (que você baixou acima) usando o Excel. Devido à natureza dinâmica da Internet, as instruções que você leu acima eo arquivo que você abrir pode ter alterado pelo tempo que você ler isso. Quando eu baixei este arquivo, as primeiras poucas linhas ficaram assim: Agora você pode excluir as colunas que você não vai usar. Para o teste que estou prestes a fazer vou usar apenas a data, abrir e fechar valores para que eu tenha excluído o Alto, Baixo, Volume e Adj. Fechar. Eu igualmente classifiquei os dados de modo que a data a mais velha fosse primeiramente e a data a mais atrasada fosse na parte inferior. Use as opções de menu Data - gt Sort para fazer isso. Em vez de testar uma estratégia per se eu vou tentar encontrar o dia da semana que forneceu o melhor retorno se você seguiu uma compra a abrir e vender a estratégia de fechar. Lembre-se que este artigo está aqui para apresentá-lo a como usar o Excel para testar estratégias de volta. Podemos construir sobre isso em frente. Aqui está o arquivo ibm. zip que contém a planilha com os dados e fórmulas para este teste. Meus dados agora residem nas colunas A a C (Data, Abrir, Fechar). Nas colunas D a H, tenho fórmulas de lugar para determinar o retorno em um determinado dia. Entrando as fórmulas A parte complicada (a menos que você seja um especialista em Excel) está trabalhando as fórmulas a serem usadas. Esta é apenas uma questão de prática e quanto mais você pratica mais fórmulas você descobrirá e mais flexibilidade você terá com seus testes. Se você baixou a planilha, então dê uma olhada na fórmula na célula D2. Parece isto: Esta fórmula é copiada para todas as outras células nas colunas D a H (exceto a primeira linha) e não precisa ser ajustada uma vez que foi copiada. Vou explicar brevemente a fórmula. A fórmula IF tem uma condição, parte verdadeira e falsa. A condição é: Se o dia da semana (convertido para um número de 1 a 5 que coincide com a segunda-feira a sexta-feira) é o mesmo que o dia da semana na primeira linha desta coluna (D1) em seguida. A verdadeira parte da declaração (C2-B2) simplesmente nos dá o valor do Close-Open. Isso indica que compramos o Open e vendemos o Close e este é o nosso profitloss. A parte falsa da declaração é um par de aspas duplas () que não coloca nada na célula se o dia da semana não é correspondido. Os sinais à esquerda do número da coluna ou da linha da coluna travam a coluna ou a linha de modo que, quando a cópia dela, parte da referência de célula não muda. Portanto, aqui no nosso exemplo, quando a fórmula é copiada, a referência à célula de data A2 mudará o número da linha se ela for copiada para uma nova linha, mas a coluna permanecerá na coluna A. Você pode aninhar as fórmulas e fazer regras excepcionalmente poderosas E expressões. Os resultados Na parte inferior das colunas do dia da semana coloquei algumas funções de resumo. Nomeadamente as funções média e soma. Estes mostram-nos que durante 2004 o dia mais rentável para implementar esta estratégia foi em uma terça-feira e este foi seguido de perto por uma quarta-feira. Quando eu testei as sextas-feiras - Bullish ou Bearish estratégia e escreveu que o artigo que eu usei uma abordagem muito semelhante com uma planilha e fórmulas como esta. O objetivo desse teste era verificar se as sextas-feiras de expiração eram geralmente de alta ou de baixa. Experimente. Faça o download de alguns dados do Yahoo Finance. Carregá-lo no Excel e experimentar as fórmulas e ver o que você pode vir acima com. Publique suas perguntas no fórum. Boa sorte e rentável estratégia huntingStrategy Backtesting Backtesting estratégia é uma ferramenta essencial para ver se sua estratégia funciona ou não. Backtesting software simula sua estratégia em dados históricos e fornece um relatório de backtesting, que permite que você conduza análise de sistema de negociação adequada. A versão de 64 bits permite carregar o máximo de dados necessários para o backtesting mais preciso. Para obter informações técnicas sobre este recurso, consulte a página Wiki relacionada. A precisão é a chave MultiCharts é uma solução criada especificamente para desenvolvimento de estratégia e backtesting. Nossa filosofia é que a estratégia backtesting deve ser tão realista quanto a tecnologia moderna permite. Multicharts 64-bit torna possível lidar com enorme quantidade de Tick-by-Tick dados para backtesting preciso. Backtesting realista Embora nenhuma aproximação possa ser 100 perfeita, fizemos tudo para recriar com precisão as condições de mercado passadas e a execução de ordens para negociação de estratégia. Motores de backtesting típicos têm um monte de suposições e atalhos, que resultam em testes irrealistas e resultados não confiáveis. MultiCharts é uma plataforma de negociação de nível institucional que minimiza suposições e considera muitos fatores. Advanced tech Estratégia backtesting muitas vezes precisa de um monte de dados, e software que é capaz de processá-lo. Multi-threading é usado quando você processa a otimização de estratégia em MultiCharts. Ele se espalha várias tarefas em diferentes núcleos, de modo que eles completam muito mais rápido. A versão de 64 bits do MultiCharts permite carregar até anos e anos de dados de carrapatos para movimentos de preços detalhados. Fácil de ler Você pode alterar a forma como seus sinais aparecem em seu chartin apenas alguns cliques. As ordens de saída podem ser conectadas por uma linha visível a todas as ordens de entrada relacionadas a linha será verde se o comércio foi rentável, vermelho se não. Se você não gosta dessas cores, ou de todo o outro aspecto visual, você pode facilmente mudá-lo. Escolha sua moeda para backtesting A moeda base permite calcular lucros e perdas durante o backtesting de estratégia com uma moeda especificada para pares de Forex ou símbolos não-americanos. Se você backtest sua estratégia em um símbolo que é baseado em uma moeda diferente do que sua conta de corretor, então você pode querer aplicar uma conversão de moeda. Para tornar os resultados o mais próximo possível da perfeição, usamos taxas de câmbio reais para cada dia. Todas as conversões de moeda ocorrem nos bastidores para tornar sua negociação tão fácil quanto possível. Usamos nossos servidores para solicitar dados em segundo plano e realizar os cálculos necessários. Todos os fatores essenciais contidos no nosso software de backtesting considera os seguintes fatores essenciais: liquidez, tick-by-tick mudanças de preço, ask-bid-trade diferenças de preços, comissão, derrapagem, capital inicial, taxa de juros e tamanho do comércio. Levando em conta a liquidez Quando o mecanismo MultiCharts backtests uma estratégia, ele reconhece que nem todas as ordens limite será preenchido, devido à falta de liquidez. Por esta razão, você tem a opção de preencher ordens quando um alvo de preço é atingido ou quando é excedido por um certo número de pontos (pips). Mais informações estão na nossa página Wiki. Pergunte, lance e preços comerciais Backtesting leva em conta que a compra real acontece a preços de pedir, venda real a preços de oferta. Isso torna nossa simulação backtesting o mais realista possível. Estratégia precisa Backtesting pode dar ao usuário uma emulação mais realista. Para backtest estratégias de alta freqüência como arbitragem estatística, o usuário pode precisar ter em conta os dados bidask histórico, além dos dados comerciais históricos. Tick-by-tick simulação Bar Magnifier é essencial para aumentar a precisão durante backtesting. MultiCharts pode construir barras maiores fora dos segundos segundos e barras menores dos minutos dos tiquetaques, barras da hora e do dia fora dos minutos. Você pode recriar movimentos de preços exatos dentro de cada barra usando a lupa de barra. Por exemplo, Bar Magnifier pode invisivelmente carregar minutos que compõem a hora, ea estratégia será backtested em uma base minuto por minuto. Saiba mais detalhes técnicos aqui. Estratégias para a prática imediata O mecanismo de backtesting do MultiCharts emula ordens de mercado, stop, limit, stop limit e one-cancels-other (OCO). Objetivo de lucro, stop-loss e trailing stops também são backtesting padrão características. Em cima disso, MultiCharts vem com mais de 80 estratégias EasyLanguage, assim você pode praticar backtesting.
Comments
Post a Comment