Friday, 3 November 2017

How to backtest a trading system in excel


Usando o Excel para voltar Testar estratégias de negociação Como fazer uma volta ao teste com o Excel Ive feito uma quantidade razoável de teste de back-up da estratégia de negociação. Eu usei linguagens e algoritmos de programação sofisticados e eu também fiz isso com lápis e papel. Você não precisa ser um cientista de foguetes ou um programador para testar várias estratégias de negociação. Se você pode operar uma planilha eletrônica, como o Excel, você pode voltar testar muitas estratégias. O objetivo deste artigo é mostrar como fazer o teste testar uma estratégia comercial usando o Excel e uma fonte de dados acessível ao público. Isso não deve custar-lhe mais do que o tempo necessário para fazer o teste. Antes de começar a testar qualquer estratégia, você precisa de um conjunto de dados. No mínimo, esta é uma série de data e preços. Mais realista, você precisa dos preços de data e hora, aberto, alto, baixo e fechado. Você geralmente precisa apenas do componente de tempo da série de dados se estiver testando estratégias de negociação intradiária. Se você quer trabalhar junto e aprender a rever o teste com o Excel enquanto estiver lendo isso, siga as etapas que eu descrevo em cada seção. Precisamos obter alguns dados para o símbolo que vamos voltar a testar. Vá para: Finanças do Yahoo No campo Símbolo de inserir digite: IBM e clique em Ir sob Cotações no lado esquerdo, clique em Preços históricos e insira os intervalos de datas desejados. Selecionei de 1 de janeiro de 2004 a 31 de dezembro de 2004 Desça até a parte inferior da página e clique em Baixar para planilha Salve o arquivo com um nome (como ibm. csv) e para um local que você pode 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 e o arquivo que você abriu podem ter mudado no momento em que você lê isso. Quando eu baixei esse arquivo, as melhores linhas parecem 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, então eu exclui o Alto, o Baixo, o Volume e o Adj. Fechar. Eu também ordenei os dados para que a data mais antiga fosse a primeira e a última data estava na parte inferior. Use as opções do menu Classificar dados para fazer isso. Em vez de testar uma estratégia por si, vou tentar encontrar o dia da semana que proporcionou o melhor retorno se você seguiu uma compra aberta e venda a estratégia de fechamento. Lembre-se que este artigo está aqui para apresentá-lo sobre como usar o Excel para suportar as estratégias de teste. Podemos construir sobre isso no futuro. Aqui está o arquivo ibm. zip que contém a planilha com os dados e as fórmulas para este teste. Meus dados agora residem nas colunas A a C (Data, Abrir, Fechar). Nas colunas D a H, eu tenho fórmulas para determinar o retorno em um dia específico. Inserindo as fórmulas A parte complicada (a menos que você seja um especialista do Excel) esteja trabalhando as fórmulas para usar. Isso é apenas uma questão de prática e quanto mais você praticar, mais fórmulas você descobrirá e mais flexibilidade você terá com seus testes. Se você baixou a planilha, examine a fórmula na célula D2. Parece assim: 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 de segunda a sexta-feira) é o mesmo que o dia da semana na primeira linha desta coluna (D1). A verdadeira parte da declaração (C2-B2) simplesmente nos dá o valor do Close-Open. Isso indica que nós 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 for combinado. Os sinais à esquerda da letra da coluna ou do número da linha bloqueiam a coluna ou a linha para que, quando esta copiou, essa parte da referência da célula não muda. Então, aqui no nosso exemplo, quando a fórmula é copiada, a referência para a célula de data A2 mudará o número da linha se 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 meio-dia eu coloquei algumas funções de resumo. Nomeadamente, as funções de média e soma. Estes nos mostram que, durante o ano de 2004, o dia mais lucrativo para implementar esta estratégia foi em uma terça-feira e esta foi acompanhada de perto por uma quarta-feira. Quando testei as negociações de Vendas de Vencimento - Bullish ou Bearish e escrevi esse artigo, usei uma abordagem muito similar com uma planilha e fórmulas como esta. O objetivo desse teste era ver se as Frondas de Expiração eram geralmente de alta ou baixa. Experimente. Baixe alguns dados do Yahoo Finance. Carregue no Excel e experimente as fórmulas e veja o que pode surgir. Poste suas perguntas no fórum. Boa sorte e estratégias rentáveis ​​Estratégia de BacktestingStrategy Backtesting é uma ferramenta essencial para ver se sua estratégia funciona ou não. O software Backtesting simula sua estratégia em dados históricos e fornece um relatório de backtesting, que permite que você realize a análise adequada do sistema de negociação. A versão de 64 bits permite que você carregue a quantidade de dados necessários para até mesmo o backtesting mais preciso. Para obter informações técnicas sobre este recurso, consulte a página Wiki relacionada. A precisão é a chave O MultiCharts é uma solução criada especificamente para desenvolvimento de estratégias e backtesting. Nossa filosofia é que a estratégia de backtesting deve ser tão realista quanto a tecnologia moderna permite. O Multicarts de 64 bits possibilita a manipulação de grande quantidade de dados Tick-by-Tick para testes precisos. Backtesting realista Mesmo que nenhuma aproximação possa ser 100 perfeita, fizemos tudo para recriar com precisão as condições do mercado passado e a execução de ordens para negociação estratégica. Os motores de backtesting típicos têm muitos pressupostos e atalhos, o que resulta em testes irrealistas e resultados não confiáveis. O MultiCharts é uma plataforma de negociação a nível institucional que minimiza os pressupostos e considera muitos fatores. Tecnologia avançada O backtesting de estratégia geralmente precisa de muitos dados e softwares capazes de processá-lo. Multi-threading é usado quando você processa a Otimização de Estratégia em MultiCharts. Ele difunde várias tarefas em diferentes núcleos, para que eles completem muito mais rápido. A versão de 64 bits do MultiCharts permite que você carregue anos pares e anos de dados de marca para movimentos de preços detalhados. Fácil de ler Você pode alterar a forma como os seus sinais aparecem no seu filme 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 fosse lucrativo, se não fosse vermelho. Se você não gosta dessas cores, ou qualquer outro aspecto visual, você pode mudá-lo facilmente. Escolha sua moeda para backtesting A moeda base permite calcular os lucros e perdas durante a estratégia backtesting com uma moeda especificada para pares Forex ou símbolos não-americanos. Se você voltar a testar sua estratégia em um símbolo que se baseie em uma moeda diferente da sua conta do corretor, então você pode querer aplicar uma conversão de moeda. Para tornar os resultados tão próximos da perfeição quanto possível, usamos taxas de câmbio reais para cada dia. Toda conversão de moeda ocorre 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 consideram os seguintes fatores essenciais: liquidez, mudanças de preço por marca, diferenças de preço de oferta-oferta-comércio, comissão, deslizamento, capital inicial, taxa de juros e tamanho de comércio. Levando em consideração a liquidez Quando o mecanismo MultiCharts reage a uma estratégia, reconhece que nem todas as ordens de limite serão preenchidas, devido à falta de liquidez. Por esse motivo, você pode optar por 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 de negociação O Backtesting leva em conta que a compra real acontece nos preços de venda, venda real a preços de oferta. Isso faz com que nossa simulação backtesting seja tão realista quanto possível. Backtesting de estratégia precisa pode dar ao usuário uma emulação mais realista. Para testar estratégias de alta freqüência como a arbitragem estatística, o usuário pode precisar levar em consideração os dados históricos do bidask, além dos dados comerciais históricos. Simulação de tique-por-tico A ampliação da barra é essencial para aumentar a precisão durante o teste de respaldo. O MultiCharts pode construir barras maiores de componentes menores, barras de segundo e minuto, fora de carrapatos, barras de hora e dia, fora dos minutos. Você pode recriar movimentos de preços exatos dentro de cada barra, usando o Bar Magnifier. Por exemplo, o Bar Magnifier pode invisivelmente carregar minutos que compõem a hora e a estratégia será testada novamente minuto a minuto. Saiba mais detalhes técnicos aqui. Estratégias para prática imediata O motor de backtesting MultiCharts mesmo emula o mercado, o stop, o limite, o limite de parada e os pedidos de um-cancelamento-outro (OCO). As metas de lucro, stop-loss e trailing também são características padrão de backtesting. Além disso, o MultiCharts vem com mais de 80 estratégias EasyLanguage, para que você possa praticar backtesting.

No comments:

Post a Comment