Monday, 23 October 2017

Trading system back testing


Backtesting O que é Backtesting Backtesting é o processo de testar uma estratégia de negociação em dados históricos relevantes para garantir sua viabilidade antes que o comerciante arrisque qualquer capital real. Um comerciante pode simular a negociação de uma estratégia durante um período adequado de tempo e analisar os resultados para os níveis de rentabilidade e risco. BREAKING DOWN Backtesting Se os resultados satisfazem os critérios necessários que são aceitáveis ​​para o comerciante, a estratégia pode ser implementada com algum grau de confiança que resultará em lucros. Se os resultados forem menos favoráveis, a estratégia pode ser modificada, ajustada e otimizada para alcançar os resultados desejados, ou pode ser completamente descartada. Uma quantidade significativa do volume negociado no mercado financeiro de hoje é feito por comerciantes que usam algum tipo de automação de computador. Isto é especialmente verdadeiro para estratégias de negociação com base em análise técnica. Backtesting é uma parte integrante do desenvolvimento de um sistema de negociação automatizado. Backtesting Significado Quando feito corretamente, backtesting pode ser uma ferramenta inestimável para tomar decisões sobre se deve utilizar uma estratégia de negociação. O período de tempo de amostra em que um backtest é realizado é crítico. A duração do período de tempo de amostragem deve ser suficientemente longa para incluir períodos de condições de mercado variáveis, incluindo tendências de alta, tendências de baixa e negociação de intervalo limitado. Realizar um teste em apenas um tipo de condição de mercado pode produzir resultados únicos que podem não funcionar bem em outras condições de mercado, o que pode levar a conclusões falsas. O tamanho da amostra no número de negócios nos resultados dos testes também é crucial. Se o número de amostras de ofícios é muito pequeno, o teste pode não ser estatisticamente significativo. Uma amostra com muitas transações durante um período muito longo pode produzir resultados otimizados em que um número esmagador de trades vencedores coalesce em torno de uma condição de mercado específico ou tendência que é favorável para a estratégia. Isso também pode causar um comerciante para tirar conclusões enganosas. Mantê-lo real Um backtest deve refletir a realidade na medida do possível. Os custos de transacção que de outra forma poderiam ser considerados negligenciáveis ​​pelos operadores quando analisados ​​individualmente podem ter um impacto significativo quando o custo agregado é calculado durante todo o período de backtesting. Estes custos incluem comissões, spreads e derrapagem, e eles poderiam determinar a diferença entre se uma estratégia comercial é rentável ou não. A maioria dos pacotes de software de backtesting inclui métodos para contabilizar esses custos. Talvez a métrica mais importante associada ao backtesting seja o nível de robustez da estratégia. Isto é conseguido comparando os resultados de um teste de volta otimizado num período de tempo de amostra específico (referido como in-sample) com os resultados de um backtest com a mesma estratégia e configurações num período de tempo de amostra diferente (referido como out - Da amostra). Se os resultados são igualmente rentáveis, então a estratégia pode ser considerada válida e robusta, e está pronta para ser implementada em mercados em tempo real. Se a estratégia falhar em comparações fora da amostra, então a estratégia precisa de mais desenvolvimento, ou deve ser abandonado completamente. Teste de Bordo com o MetaTrader Antes de entrar e começar a operar com seu sistema de negociação automatizado, é aconselhável que você gaste algum Avaliando o seu Expert Advisor para ajudar a validar o desempenho do sistema. Fazer um investimento de tempo nesta fase vai lhe pagar dividendos no longo prazo, permitindo que você melhor avaliar o desempenho do sistema. Isso ajudará a evitar muitos choques desagradáveis ​​quando você começar a negociar o sistema em sua conta real. O primeiro passo neste processo de avaliação é testar o desempenho do EA usando o aplicativo Strategy Tester encontrado no MetaTrader. O testador de estratégia MetaTrader embutido, permite testar o desempenho da estratégia em relação aos dados históricos de preços de mercado. Isso permite que você veja como a abordagem de negociação usada pela EA tem se realizado historicamente nos mercados. Voltar teste desta forma permite que você simular o desempenho da estratégia durante um longo período de tempo em apenas uma questão de minutos. Depois de ter concluído o seu primeiro teste de volta, então você pode optar por fazer uso do recurso de otimização. Isso permitirá que você encontre as configurações ótimas de estratégia ao longo do período de teste. No entanto, resta muito debate entre os comerciantes quanto à confiabilidade do Testador de Estratégia contido no MT4. Grande parte dessa crítica centra-se na precisão dos dados utilizados. Muitas vezes os dados fornecidos pelo corretor estão incompletos e terão lacunas onde não há informações de preço disponíveis. Isto é, naturalmente, não é ideal e parece ser um problema específico com os dados fornecidos em contas de demonstração. No entanto, existem maneiras que você pode melhorar o nível de precisão de seus testes de volta que nós cobrimos em nosso MetaTrader 4 Strategy Tester tutorial. Os resultados melhorados podem ser alcançados aumentando a qualidade dos dados dos carrapatos e a qualidade de modelagem utilizada. Enquanto um backtesting com MetaTrader deve ser realizado, você precisa ter cuidado em colocar demasiada ênfase sobre os resultados que você conseguir. Em última análise, este método de teste só pode oferecer uma aproximação dos resultados de negociação ao vivo. Os resultados que você gera para o seu EA Forex não será 100 precisos e só irá fornecer uma indicação de como ele pode executar para a frente. História é exatamente isso. A dinâmica do mercado muda ao longo do tempo e o que pode ter funcionado nos anos do mercado ou mesmo há alguns meses, pode não funcionar novamente. Apesar dessas deficiências, um backtest do MetaTrader oferece uma maneira conveniente de validar o desempenho passado em uma série de cenários de negociação em tempo real. Também com a falta de uma bola de cristal, também fornece provavelmente a melhor indicação de como um EA executará quando colocado ao vivo. Portanto Expert Advisor testes continua a ser um importante primeiro passo que você deve conduzir como você iniciar a sua avaliação de uma estratégia de negociação Forex. Back Testing A arte de testar de volta Como eu já mencionei antes, uma das coisas que eu realmente amo sobre a negociação é que, ao contrário de qualquer outro negócio, você pode testar completamente o seu modelo de negócio (plano de negociação) sem arriscar dinheiro real. Na negociação, este processo de avaliação é chamado de volta testing. Back testes é a área agora mais negligenciada pelos comerciantes. Ive falou sobre a importância da psicologia e gestão de dinheiro em capítulos anteriores e assim tem um monte de outros treinadores de negociação. Tanto assim, há agora um bevy da informação e da consciência ao redor. Você só tem que navegar na net para ver o quanto foco é colocado sobre estas áreas como deve haver. Mas toda esta atenção parece ser à custa de back testing. Como resultado da negociação de volta de testes, eu acho, tornou-se agora a nova área menos compreendida e apreciada de negociação. Por que o teste de volta é tão importante? O teste de troca de volta é mais importante porque impacta diretamente em suas entradas e saídas, gerenciamento de dinheiro e psicologia das seguintes maneiras. O teste de entradas e saídas permite testar todo o desempenho do sistema usando dados históricos. Com essa informação, você pode fazer os ajustes necessários para produzir os resultados que você está procurando. Dinheiro gestão back testar permite testar vários modelos de gestão de dinheiro para ver qual funciona melhor com o seu sistema. Psicologia como discutido anteriormente no livro, a compreensão de seus sistemas de pontos fortes e fracos, mesmo que eles estão apenas no papel irá melhorar a sua confiança comercial. Isso terá um efeito indizível sobre o seu desempenho quando você começar a negociar de verdade. Seja qual for o critério de análise técnica que você usa para negociar com as médias móveis, castiçais, fugas de volatilidade, retrocessos Fibonacci ou qualquer outro sistema de negociação você vai precisar para testá-lo de volta, a fim de remover qualquer dúvida possível sobre sua capacidade. Sem negociação de volta testes, surge uma falta de confiança e, normalmente, obriga os comerciantes a questionar seus próprios sistemas de negociação. Eles cedem à tentação de modificar seu plano de negociação, muitas vezes com consequências devastadoras. Esta tentação geralmente vem de uma seqüência de negociações perdendo ou uma oportunidade para substituir seu sistema de comércio com um novo indicador whiz-bang que é a última moda falada em fóruns de bate-papo. Qualquer coisa que parece bom demais para ser verdade vai atrair a atenção de um comerciante que não está satisfeito com seu sistema comercial, simplesmente porque ela não testou adequadamente seu sistema em primeiro lugar. Ela não acumulou a necessária confiança necessária para trocar com êxito o sistema que desenvolveu. A minha estratégia de negociação será rentável Esta é a pergunta mais frequente no mundo do comércio. O autor Mark Jurik teve um ir em respondê-lo em seu livro Computerized Trading, como mostrado na caixa 9.1. Fonte: Jurik, M 1999, Negociação Informatizada: Maximizando o Dia de Negociação e os Lucros de Noite, Instituto de Finanças de Nova York, Nova York. Mas o que é negociação de volta testando exatamente backtesting Trading é o processo de testar uma estratégia comercial usando dados históricos, em vez de testá-lo em tempo real com dinheiro real. As métricas obtidas a partir do teste podem ser usadas como uma indicação de quão bem a estratégia teria executado se tivesse sido aplicada a negócios anteriores. Interpretar esses resultados, em seguida, fornece ao comerciante com métricas suficientes para avaliar o potencial do sistema de comércio. Logicamente, sabemos que os resultados deste tipo de teste não será capaz de prever retornos futuros com precisão pontual no entanto, ele pode fornecer um indicador sobre se você deve mesmo perseguir um sistema comercial ou não. O que é mais, se você decidir ir em frente e trocar o sistema, ele vai lhe dar guias sobre o que esperar. Mas a questão permanece: como você pode testar um desempenho de sistemas de negociação ao longo do tempo Existem apenas duas maneiras de fazer isso manualmente ou com software de computador. Para ser honesto, o software de computador é a única opção real. Eu tentei ambos os métodos de teste e testes manuais não é apenas demorado, mas muito difícil de replicar e testar de forma eficaz. Os benefícios derivados da negociação backtesting software não pode ser superestimada. Ele vai lhe poupar tempo e proporcionar uma oportunidade infinita para afinar e testar seu sistema. Um pequeno investimento em capital para comprar software de teste de volta bom potencialmente você vai economizar milhares no mercado é um investimento muito sábio se você está pensando em projetar um sistema comercial bem sucedido e mecânico. Mecânica back testing Por favor, entenda, desde que o seu sistema de negociação mecânica trabalha exclusivamente com dados de preços (aberto, alto, baixo, fechar, volume), você será capaz de usar software de teste de volta. Por exemplo, digamos que você crie um sistema de negociação mecânico com a seguinte regra de entrada: Regra: Compre uma garantia quando a média móvel de 10 dias do preço de fechamento ultrapassar a média móvel de 30 dias do preço de fechamento. Esta regra pode ser testada muito facilmente sobre os dados históricos. Por outro lado, a regra do sinal de compra pode ser um pouco mais complexa, como: Regra: Compre uma garantia quando a média móvel de 10 dias do preço de fechamento ultrapassar a média móvel de 30 dias do preço de fechamento ea relação PE 75 ou inferior ao seu valor três meses antes. Esta regra introduz dados que muitas vezes não são fornecidos ou mantidos em um banco de dados de informações sobre preços. Para testar com êxito, isso implicaria a obtenção de dados históricos de uma segurança, bem como a relação preço / lucro (razão PE). Tipicamente, os dados históricos de um grupo de ações incluirão apenas os índices aberto, alto, baixo, fechado e de volume Para cada período. Devido a esta limitação, muitos sistemas de negociação mecânica são projetados em torno de preços puramente indicadores técnicos. Infelizmente, a maioria dos sistemas de negociação mecânica baseada em dados fundamentais está além do escopo de investidores de varejo devido à falta de dados históricos disponíveis para realizar um teste de negociação completa de volta. Software de teste de volta Felizmente, nestes dias, muitos pacotes gráficos têm software de teste de volta construído dentro Se você seguiu o processo para selecionar um pacote de gráficos no capítulo anterior, você deve ter encontrado um com capacidades de teste de volta incluído ou encontrado um que é compatível Com outro pacote off-the-shelf. Para aqueles de vocês que decidiram comprar o MetaStock no capítulo 8, o TradeSim 8211 ultimate-trading-systems / tradesim é provavelmente o simulador / analisador de negociação mais realista e verdadeiro que eu encontrei. Ele pode rapidamente testar e avaliar um sistema de negociação, seja uma única segurança ou um portfólio de múltiplas seguranças. Eu acredito que tading o teste traseiro é a única maneira de remover o self-doubt. Depois de ter estabelecido que você tem um sistema de comércio confiável e robusto só então você vai ser confiante na negociação dele. Da mesma forma que o seu software de gráficos, certifique-se de conhecer o seu pacote de volta à frente. Você não será capaz de tirar o melhor proveito dela a menos que você entenda completamente como ele funciona eo que você pode fazer com ele. Soluções alternativas Infelizmente, tenho visto muitos clientes nunca bastante obtê-lo no que diz respeito ao teste de volta. Para muitos, o software de teste de volta é simplesmente demasiado técnico. Se você cair nessa categoria, não desista. É um passo crítico no processo de design do sistema. Para os menos técnicos, eu encontrei uma solução chamada Trading Performance Analyzer ultimate-trading-systems / tpa. É fácil de usar e perfeito para analisar seu sistema antes de negociá-lo em tempo real. Nota importante: Se você encontrar-se testando e re-testing na esperança de tropeçar através dessa bala de prata, lembre-se, você nunca vai criar um sistema comercial que tem uma taxa de 100 sucesso. Muitos tentaram (eu mesmo incluído) e todos falharam. Você deve estar à procura de um bom sistema de negociação com drawdown mínimo e um bom risco para recompensa ratio. Many sistemas de negociação têm mais comércios perdedores do que ganhar e ainda assim eles ainda ganham dinheiro. Como o gerenciamento de dinheiro. (Ver capítulo 6.) A peça final no quebra-cabeças de design de sistema é pegar o sistema de negociação que você projetou nos capítulos anteriores e testá-lo. Ao testar seus sistemas você acabou de se colocar entre os top 1 dos comerciantes, garantindo Seu sucesso. Parabéns Acções Comprar um pacote de teste de negociação de volta: TradeSim 8211 ultimate-trading-systems / tradesim Analisador de Desempenho de Negociação 8211 ultimatetradingsystems / tpa Aprenda o seu software de teste de volta escolhido por dentro e por fora. Teste de volta seu sistema recém-projetado, incluindo sua entrada, saídas e regras de gestão de dinheiro. Você verificou Portfolio123 Para 50 dólares por mês você tela para variáveis ​​técnicas e fundamentais, backtest-lo, fazer verificações de robustez (entradas aleatórias centenas de vezes para garantir que você não é cereja escolhendo os resultados) e testes de simulação com comprar e vender regras separadas , Deslizamento, universos feitos sob encomenda, blá, blá, blá. Você pode usá-lo por 45 dias como um teste gratuito se você usar o código HKURTIS ao se inscrever para testá-lo. Antes Portfolio123 eu pensei que somente Zacks Research Wizard era uma alternativa de baixo custo 8211, mas centenas de dólares para a versão aguada, viés de sobrevivência, e outros problemas 8211 não obrigado. IMO seu software de grau institucional para cerca de 1/20 do custo. Jesuraj 7 de março de 2017 às 5:07 am Oi Dave, eu aconteceu de ler este excelente aritcle. Em Metastock, eu gostaria de reservar lucro para apenas metade da minha posição e eu não poderia encontrar uma maneira de fazer isso. Você poderia por favor me avise se tal teste é possível em Metastock. Obrigado e considera JesurajBacktesting: Interpretando o passado O Backtesting é um componente chave do desenvolvimento efetivo do sistema de negociação. É realizado reconstruindo, com dados históricos, negócios que teriam ocorrido no passado usando regras definidas por uma determinada estratégia. O resultado oferece estatísticas que podem ser usadas para avaliar a eficácia da estratégia. Usando esses dados, os comerciantes podem otimizar e melhorar suas estratégias, encontrar quaisquer falhas técnicas ou teóricas, e ganhar confiança em sua estratégia antes de aplicá-lo aos mercados reais. A teoria subjacente é que qualquer estratégia que funcionou bem no passado é susceptível de funcionar bem no futuro e, inversamente, qualquer estratégia que teve um desempenho ruim no passado é susceptível de funcionar mal no futuro. Este artigo dá uma olhada no que as aplicações são usadas para backtest, que tipo de dados é obtido, e como colocá-lo para usar Os dados e as ferramentas Backtesting pode fornecer abundância de estatística valiosa comentários sobre um determinado sistema. Algumas estatísticas de backtesting universal incluem: Lucro líquido ou perda - ganho ou perda percentual líquido. Prazo - Datas passadas em que o teste ocorreu. Universo - Estoques que foram incluídos no backtest. Medidas de volatilidade - Percentagem máxima de subida e descida. Médias - Percentual de ganho médio e perda média, média de barras mantidas. Exposição - Percentual de capital investido (ou exposto ao mercado). Razões - Relação vitórias-perdas. Retorno anualizado - Retorno percentual ao longo de um ano. Retorno ajustado ao risco - Retorno percentual em função do risco. Normalmente, backtesting software terá duas telas que são importantes. O primeiro permite que o profissional personalize as configurações para backtesting. Essas personalizações incluem tudo, desde o período até os custos de comissão. Aqui está um exemplo de tal tela no AmiBroker: A segunda tela é o relatório de resultados de backtesting real. Isto é onde você pode encontrar todas as estatísticas mencionadas acima. Novamente, aqui está um exemplo desta tela no AmiBroker: Em geral, a maioria dos softwares comerciais contém elementos semelhantes. Alguns programas de software high-end também incluem funcionalidades adicionais para realizar dimensionamento automático da posição, otimização e outros recursos mais avançados. Os 10 mandamentos Há muitos fatores comerciantes atenção para quando eles estão backtesting estratégias de negociação. Aqui está uma lista das 10 coisas mais importantes para lembrar enquanto backtesting: Tome em conta as tendências do mercado amplo no período em que uma determinada estratégia foi testada. Por exemplo, se uma estratégia foi apenas testada de 1999 a 2000, pode não ser bem em um mercado de baixa. É muitas vezes uma boa idéia para backtest durante um período de tempo longo que engloba vários tipos diferentes de condições de mercado. Leve em conta o universo no qual o backtesting ocorreu. Por exemplo, se um sistema de mercado amplo é testado com um universo consistindo de ações de tecnologia, pode deixar de fazer bem em diferentes setores. Como regra geral, se uma estratégia é direcionada para um gênero específico de estoque, limitar o universo a esse gênero, mas, em todos os outros casos, manter um grande universo para fins de teste. Medidas de volatilidade são extremamente importantes a considerar no desenvolvimento de um sistema de comércio. Isto é especialmente verdadeiro para as contas alavancadas, que são submetidas a chamadas de margem se a sua equidade desce abaixo de um certo ponto. Os comerciantes devem procurar manter a volatilidade baixa, a fim de reduzir o risco e permitir uma transição mais fácil dentro e fora de um determinado estoque. O número médio de barras mantidas também é muito importante para assistir ao desenvolver um sistema de negociação. Embora a maioria dos backtesting software inclui custos de comissão nos cálculos finais, isso não significa que você deve ignorar esta estatística. Se possível, aumentar o número médio de barras mantidas pode reduzir os custos de comissão e melhorar o retorno geral. A exposição é uma espada de dois gumes. Aumento da exposição pode levar a maiores lucros ou maiores perdas, enquanto diminuição da exposição significa lucros mais baixos ou menos perdas. No entanto, em geral, é uma boa idéia para manter a exposição abaixo de 70, a fim de reduzir o risco e facilitar a transição para dentro e para fora de um determinado estoque. A estatística de ganhos / perdas médios, combinada com a relação ganhos-perdas, pode ser útil para determinar o dimensionamento de posição otimizado e o gerenciamento de dinheiro usando técnicas como o Critério Kelly. (Veja Money Management Usando o Critério Kelly.) Os comerciantes podem assumir posições maiores e reduzir os custos de comissão, aumentando seus ganhos médios e aumentando sua relação ganhos-para-perdas. Retorno anualizado é importante porque é usado como uma ferramenta para comparar os retornos de sistemas contra outros locais de investimento. É importante não só olhar para o retorno global anualizado, mas também para ter em conta o risco aumentado ou diminuído. Isso pode ser feito olhando para o retorno ajustado ao risco, que explica vários fatores de risco. Antes de um sistema de negociação ser adotado, ele deve superar todos os outros locais de investimento em igual ou menos risco. Backtesting personalização é extremamente importante. Muitas aplicações backtesting têm entrada para valores de comissão, tamanhos de lote redondos (ou fracionários), tamanhos de carrapatos, requisitos de margem, taxas de juros, pressupostos de deslizamento, regras de dimensionamento de posição, regras de saída da mesma barra, configurações de parada e muito mais. Para obter os resultados de backtesting mais precisos, é importante ajustar essas configurações para imitar o corretor que será usado quando o sistema for ativado. Backtesting às vezes pode levar a algo conhecido como super-otimização. Esta é uma condição onde os resultados de desempenho são ajustados tão altamente ao passado que eles não são mais precisos no futuro. É geralmente uma boa idéia implementar regras que se aplicam a todas as ações ou um conjunto selecionado de ações segmentadas e não são otimizadas na medida em que as regras não são mais compreensíveis pelo criador. Backtesting nem sempre é a maneira mais precisa para avaliar a eficácia de um determinado sistema de comércio. Às vezes, as estratégias que funcionaram bem no passado não conseguem fazer bem no presente. O desempenho passado não é indicativo de resultados futuros. Certifique-se de comércio de papel de um sistema que foi testado com sucesso antes de ir ao vivo para ter certeza de que a estratégia ainda se aplica na prática. Conclusão Backtesting é um dos aspectos mais importantes do desenvolvimento de um sistema comercial. Se criado e interpretado corretamente, pode ajudar comerciantes a aperfeiçoar e melhorar suas estratégias, encontrar todas as falhas técnicas ou teóricas, assim como ganhar a confiança em sua estratégia antes de aplicá-la aos mercados reais. Recursos (tradecision) - Desenvolvimento de Sistemas de Negociação de Alto Nível AmiBroker (amibroker) - Desenvolvimento de Sistema de Negociação de Orçamento. WIN 1.000 para uma Licença de Vida MultiCharts Alguns corretores oferecem melhores taxas e alguns feeds de dados fornecem mais dados históricos. Escolha aqueles que atendam às suas necessidades. Mesmo com uma estratégia vencedora, apenas um pequeno atraso na execução da ordem pode fazer toda a diferença. Negociação automatizada é muito mais rápido do que um ser humano. Conhecido como um quotscreenerquot, ou ldquoquote boardrdquo, esta ferramenta permite monitorar milhares de símbolos de mercado em uma janela para encontrar oportunidades rentáveis. O EasyLanguage é uma linguagem padrão para a programação de estratégias e indicadores. Foi feito especificamente para comerciantes principal vantagem é que você pode começar em minutos. Backtesting está aplicando uma estratégia de dados históricos para ver ldquohow você teria donerdquo. Portfolio backtesting permite projetar e testar estratégias em vários símbolos. 2017 t2w Members39 Choice Award Melhor Software para Tradutores de Sistemas Mecânicos Melhor Software de Análise Técnica 2017 t2w Members39 Prêmio Choice Melhor Plataforma de Negociação Profissional Melhor Software para Traders Intra-Day 2017 Análise Técnica de Ações e Mercadorias Readers39 Prêmio Choice Semifinalista Software Analítico Autônomo 1,000 and Above 2017 BMT Best Of Trading Prêmio Plataforma De Negociação Do Ano Futuros Plataforma De Negociação Do Ano

No comments:

Post a Comment