Sunday 26 November 2017

Back Testing Forex Trading


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 de tempo apropriado e analisar os resultados para os níveis de rentabilidade e risco. BREAKING DOWN Backtesting Se os resultados atendem aos critérios necessários que são aceitáveis ​​para o comerciante, a estratégia pode então ser implementada com algum grau de confiança de 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 é feita por comerciantes que usam algum tipo de automação de computador. Isto é especialmente verdadeiro para estratégias comerciais baseadas em análises técnicas. Backtesting é parte integrante do desenvolvimento de um sistema de negociação automatizado. Backtesting significativo Quando feito corretamente, backtesting pode ser uma ferramenta inestimável para tomar decisões sobre a utilização de uma estratégia de negociação. O período de tempo da amostra em que um backtest é executado é crítico. A duração do período de tempo da amostra deve ser suficientemente longa para incluir períodos de diferentes condições do mercado, incluindo as tendências de elevação, as tendências de baixa e as negociações indexadas ao intervalo. A realização de 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 do mercado, o que pode levar a conclusões falsas. O tamanho da amostra no número de trocas nos resultados do teste também é crucial. Se o número de amostras de trocas é muito pequeno, o teste pode não ser estatisticamente significativo. Uma amostra com muitas negociações durante um período muito longo pode produzir resultados otimizados em que um número irresistible de negociações vencedoras coalesce em torno de uma condição de mercado específica ou tendência favorável para a estratégia. Isso também pode causar um comerciante para tirar conclusões enganosas. Mantendo-o real Um backtest deve refletir a realidade na melhor medida possível. Os custos de negociação que, de outra forma, podem ser considerados negligenciáveis ​​pelos comerciantes quando analisados ​​individualmente podem ter um impacto significativo quando o custo total é calculado durante todo o período de teste. Estes custos incluem comissões, spreads e deslizamentos, e podem determinar a diferença entre se uma estratégia de negociação é rentável ou não. A maioria dos pacotes de software de backtesting incluem métodos para explicar esses custos. Talvez a métrica mais importante associada ao backtesting seja o nível de robustez das estratégias. Isso é conseguido comparando os resultados de um teste de retorno otimizado em um período de tempo de amostra específico (referido como na amostra) com os resultados de um backtest com a mesma estratégia e configurações em um período de tempo de amostra diferente (referido como out - De-amostra). Se os resultados forem igualmente rentáveis, 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 de amostra, então a estratégia precisa de um desenvolvimento adicional, ou deve ser abandonada completamente. Mais alto software de backtesting Tanto quanto eu sei forex tester é mais software de gráficos. É um tipo de simulador de forex, ao invés de software de teste de análise técnica. De qualquer forma, onde você obtém dados. Esta empresa fornece você ou usa dados de terceiros. Depende do que você quer dizer com um software de teste TA, mas você pode programar suas regras de ingresso e executar um teste nos dados. Na verdade, eu não uso isso para isso, mas acho que esse é o principal ponto. Tem todos os indicadores e coisas populares. Você também pode fazê-lo reproduzir os dados em velocidade normal ou rápida como se estivesse acontecendo em tempo real. Eu o uso principalmente para ver dados antigos em pequenos quadros de tempo, pois o MT4 só mostrará até agora nos 5 minutos ou seja o que for. A empresa fornece os dados, cerca de 10 anos, mas você também pode usar dados de outras fontes. Tirei quotForex Strategy Builderquot É um (quote): quotVisual forex testador de back-back de estratégia. Ele usa combinações de indicadores técnicos e regras lógicas para simular um processo de negociação com taxas históricas do forex. Um gerador de estratégia automático incluído permite que você crie uma estratégia lucrativa. Há também um otimizador, um scanner intradía e um explorador de barra. É o software livre. Baixado e tentou este. Não gosta. É sobre tudo, mas nada em particular. No entanto, é muito mais prático do que MT4 e Omega. Tanto quanto eu entendi, temos mais 2 programas para votar. Junte-se a Mar 2009 Status: Membro 80 Posts se você ama o backtesting, leia isso: pelo menos, a grande diferença entre Backtest e Forward-Test é perceptível para os desenvolvedores do sistema quando eles ativam um sistema após um desenvolvimento bem sucedido no Live-Trading. Muitas vezes, a curva de desempenho excelente em Backtest acaba por ser uma curva completamente desagradável na operação ao vivo. Assim, pode acontecer que um sistema rentável se torne um fabricante de perda. Tivemos essa experiência também. Bem, quais são os motivos para isso. 1. O MetaTrader não reconhece dados de marca Todas as etapas e decisões desenvolvidas baseiam-se nos dados disponíveis e históricos se você estiver desenvolvendo um sistema. Mas os dados disponíveis não são dados de marca. Muitos desenvolvedores acreditam que estão se desenvolvendo com base em dados de referência reais históricos reais. Isso não é o caso porque MetaTrader calcula Pseudo-Ticks e como eles poderiam ter sido com base em 1 minuto de vela com o HighLowOpenClose apropriado. Mesmo sistemas Scalping que parecem praticamente fantásticos no Backtest. Falhar regularmente neste fato. Embora, claro, estamos desenvolvendo nossos próprios sistemas com base em dados disponíveis. Então, depois de reunir os dados de teste direto apropriados, nós fazemos melhorias nesse sistema ou decidimos rejeitá-lo. 2. Todos os Backtests são baseados nos dados que foram carregados pelo Metaquotes Server. Não importa qual corretor você obteve. Os dados no desenvolvimento são baseados nos dados fornecidos pela Metaquotes. Os dados corretos não estão disponíveis no Forex-Markt, mas cada Broker Dealing-Desk faz seus próprios preços ou, em vez disso, transmite cada preço dos bancos associados. Na realidade, isso leva ao fenômeno quot3 Broker - 3 taxas de câmbio. Um sistema que entrega em Forward-Test no Broker 1 x trades e no Broker 2 y trades vai entregar no Backtest um número totalmente diferente de negócios. 3. Eles trabalham com uma propagação estabelecida em Backtest A propagação de cada corretor parece, muitas vezes, completamente diferente e é mesmo balançando. O texto acima mencionado não é de mim, é de um codificador profissional. Registrado em setembro de 2010 Status: Membro 16 Posts É por isso que você tem que usar os dados diretamente do corretor com o qual você vai negociar. Junte-se a Abr 2010 Status: Membro 113 Posts Forextester foi o que eu usei. Recomendo. Funciona muito parecido com o Metatrader, então você ganhará o jeito muito rápido. Junte-se a janeiro de 2010 Status: Membro 9 Posts forextester 2 é o software de backtesting mais barato e bom, porque é o único pagamento único e podemos importar dados históricos para par moedas populares desde vários anos. Podemos colocar trocas, incluindo parar de perder e tirar proveito, é como o comércio real para testar nossa estratégia. Eu não sou muito confiável testando mais do que o gráfico de 4 horas porque o mercado é influenciado por notícias de alto impacto que não podemos prever enquanto backtest, acho que o backtest mais seguro é usando o gráfico diário. Com o MT4, há algum tempo, há algum script para colocar o comércio no testador de estratégia, mas não é muito conveniente (não como o comércio diário real), eu esqueci isso. O MT4 está focado para tornar o comércio real mais fácil, não feito especificamente para o mercado Forex backtesting. Juntou-se a julho de 2014 Status: Membro 1 Post Eu uso apenas o Ninjatrader 7 para todo o meu Forex amp Futures trading e todos os backtesting. Acabei de desligar todas as negociações de Forex no MT4 nos últimos 30 dias, então terminei com essa plataforma. Agora que a Ninjatrader é uma corretora de Futuros (eles compraram o Mirus Futures na semana passada) e vai adicionar Forex à corretora em breve, o movimento que fiz parece ser o momento perfeito para despejar o MT4 de uma vez por todas. Confio nos dados de backtesting do NT7 e nunca confiei realmente nos dados de backtesting no MT4. A modelagem de dados não 99 não foi suficientemente boa para mim no MT4, então mudei para uma plataforma mais robusta para negociação e backtesting. Junte-se a Jul 2012 Status: Membro 2 Posts Eu tenho um indicador e tentei executar um backtest na estratégia de backtest do mt 4 e toda vez que eu executo, ele diz que não verificou ter tentado em várias ocasiões verificar a caixa para dll e ainda o mesmo problema qualquer As sugestões seriam úteis. Os membros devem ter no mínimo 0 comprovantes para publicar neste tópico. 0 comerciantes que visualizam agora Forex Factoryreg é uma marca comercial registrada. Testes internos internos Praticando a arte do manual de negociação Back-Testing Praticando a arte da negociação Por James Stanley Trading, como muitas outras coisas na vida, pode ser aprimorado com a experiência. Isso é frequentemente quando novos comerciantes falham. Depois de perceber este fato, eles olham uma negociação muito simples. Eu estou aprendendo a negociar com valor lucrativo meu timerdquo Eu mesmo e muitos outros comerciantes (ou, talvez, mais precisamente, lsquohaversquo) responderam a uma pergunta enfática a essa pergunta e embarcaram em um processo de aprendizagem para obter nossos resultados no ponto que queremos. Mas nem todos estariam naquele barco. A coisa difícil sobre a experiência ao negociar é o fato de que essa mesma experiência pode nos custar dinheiro. Ao longo dos anos Irsquove ouviu muitos alegar alegadamente lsquoah, thatrsquos sua taxa de matrícula para os mercados. rsquo E esse pode ser o caso. Mas há outras maneiras de ganhar experiência na arte antiga da especulação. Os comerciantes de cereais e arroz, os criadores originais de análise técnica, empregariam um elemento de negociação de lsquopaper, rsquo para rastrear lucros ou perdas hipotéticos para as estratégias que eles estão negociando. Isso é semelhante ao comércio de demonstração hoje, uma maneira de testar nossas teorias e estratégias no mercado sem riscos financeiros. Isso é exatamente o mesmo que o comércio ao vivo, não, porque não existe um provedor de liquidez no outro lado do seu comércio que executa a execução REAL, mas pode me permitir testar minhas estratégias em um ambiente dinâmico. A desvantagem para o comércio de demonstração ou a demonstração de uma estratégia é o fato de que pode demorar muito tempo para obter resultados suficientes para determinar a consistência de minhas estratégias. Se eu quiser testar uma estratégia em um gráfico diário, pode levar-me um ano inteiro apenas para colocar alguns negócios. E após esses poucos negócios, Irsquom não tem certeza de que Irsquod esteja o bastante confortável com a estratégia de empregá-lo ao vivo (afinal, apenas alguns negócios foram colocados, como eu sei se isso era uma anomalia ou não). É aqui que o back-testing manual pode entrar em jogo. Este é um manoiismo no qual eu posso simular um ambiente de mercado ao vivo com preços dinâmicos. Itrsquos é importante para assinalar quaisquer back-tests que executemos, manualmente ou automatizados, que sofrem de uma desvantagem singular e que é o fato de que o desempenho passado não é necessariamente se replicar dessa maneira no futuro. Mas isso não é o ponto do back-test manual. A razão pela qual eu estou fazendo o teste é me treinar, usando as ferramentas da estratégia que está sendo testada, para que eu possa saber como empregar mais eficazmente a abordagem. Eu posso fazer isso em qualquer período de tempo, com qualquer par de moedas e quase qualquer estratégia que negocie. Passo 1: vestir o gráfico O primeiro passo quando o back-testing manual é para vestir nossos gráficos com os indicadores que usaremos na estratégia que estamos testando. Para esta ilustração, a Irsquom vai usar uma EMA de 89 períodos e uma CCI de 13 períodos. Depois de obter o quadro vestido, estamos prontos para prosseguir. Criado por James Stanley Passo 2: Dê um passo atrás no tempo Depois de ter nosso gráfico vestido, precisamos ir para um período anterior no gráfico. Aqui é que eu não estou familiarizado com a ação de preço para o período testado. Quero que os preços sejam tão próximos da dinâmica do mercado real quanto possível. Eu quero que isso seja imprevisível. Para fazer isso, posso simplesmente clicar e arrastar para trás no tempo para chegar a uma data anterior no gráfico. Criado por James Stanley Passo 3: Avançar no tempo Esta característica é muito benéfica para os comerciantes que fazem muitos back-testing manual, mas muitas vezes desconhecidos para muitos. Isso tem a ver com o lsquoforward, rsquo e lsquobackwards, rsquo setas no seu teclado. Se eu quisesse voltar 1 hora, eu simplesmente posso pressionar a tecla lsquobackward-arrow, rsquo uma vez. No entanto, se o teste da Irsquom em uma tabela de 4 horas, digite 1 pressionar as teclas de seta para frente ou para trás será equivalente a avançar para a frente ou para trás 4 horas por vez. Esta é uma característica extremamente conveniente que me permite percorrer uma grande distância no gráfico em um curto período de tempo. Neste ponto, eu quero caminhar para a frente na tabela e até encontrar um comércio que atenda aos meus critérios. Uma vez que eu faço, eu vou pausar e wersquore pronto para passar para a etapa 5. Passo 4: Registrar os resultados Esta etapa pode se desviar entre comerciante para comerciante com base no estilo e maneirismo da manutenção de registros. Exorto todos os novos comerciantes ou aqueles novos para o back-testing manual para escrever cada uma dessas negociações, quer seja um diário, uma planilha ou um registro comercial. Algumas informações importantes são de destaque aqui: Onde você colocaria sua parada Onde você procuraria tirar lucros Você pode gravar toda essa informação, bem como quaisquer outras observações que você fez. Após algumas negociações, você terá algumas informações que você pode usar para tornar a estratégia mais eficaz para seus objetivos. Passo 5: Enxágüe e repita Depois de ter encontrado um comércio hipotético, nesse ponto, podemos caminhar mais adiante no futuro para ter uma idéia de como ele pode ter funcionado. Mais uma vez, podemos registrar esses resultados em nossos periódicos. Então, podemos passar ao próximo comércio. Podemos continuar a fazer isso até sentir o conforto e a experiência com a estratégia para avançar para a próxima etapa de teste. Para alguns comerciantes que testaram com saldos menores, outros dão o salto diretamente aos mercados ativos, enquanto outros, como eu, ndash, então, testaremos a estratégia em uma conta demo com preços dinâmicos ao vivo. --- Escrito por James B. Stanley Para entrar em contato com James Stanley, você pode seguir James no Twitter JStanleyFX. O DailyFX fornece notícias e análises técnicas sobre as tendências que influenciam os mercados monetários globais. Tutorial do Tester Estratégia MetaTrader 4 Para obter o máximo de seu consultor especialista, você precisará otimizar e testar sua estratégia usando o MetaTraders Strategy Tester. Enquanto o teste para frente em uma conta de demonstração é essencial, o backtesting permite simular a negociação durante um longo período de tempo em apenas alguns minutos. E com o recurso de otimização, você pode descobrir quais configurações melhoraram em um período de gráfico histórico selecionado. Há um debate considerável sobre a precisão do testador de estratégia MetaTraders. Na melhor das hipóteses, o backtesting oferece apenas uma aproximação próxima de como os negócios seriam executados em tempo real. Mas é a única ferramenta disponível para testar rapidamente qualquer estratégia em uma ampla gama de situações comerciais e uma que você deve aprender a usar bem. Abra o Strategy Tester no MetaTrader clicando no botão apropriado na barra de ferramentas ou selecionando Strategy Tester no menu Exibir. Centro de histórico Antes de testar ou otimizar, é importante certificar-se de que os dados do seu histórico sejam completos e precisos, especialmente se você estiver usando Cada marca como seu modelo de teste. Se você ver erros de gráfico incompatíveis no seu diário ou se sua qualidade de modelagem for inferior a 90, seus dados de histórico são insuficientes para gerar carrapatos precisos. Abra o Centro de História no menu Ferramentas ou pressionando F2 no seu teclado. Clique duas vezes no par do gráfico na coluna da esquerda para a qual você pretende testar. Uma lista de períodos de tempo aparecerá abaixo. Comece clicando duas vezes em 1 Minuto (M1) para carregar os dados de histórico desse período. O backtester usa dados M1 para gerar carrapatos, por isso é importante que seus dados M1 estejam completos. No Centro de Histórico, você pode baixar ou importar dados para usar no backtesting. Seu corretor fornecerá automaticamente alguns dados recentes, mas pode não ser suficiente para um backtest mais longo. Além disso, os dados gratuitos para download do MetaTrader (acessíveis através do botão Download) nem sempre estão completos e podem conter grandes lacunas. Você pode baixar dados M1 gratuitos de forextesterdatadatasources. html. Primeiro, selecione o período M1 para o símbolo da lista no lado esquerdo. Clique no botão Importar e, em seguida, clique em Procurar na caixa de diálogo Importar para selecionar o arquivo de dados M1 que você acabou de baixar. Pressione OK para importar os dados - pode demorar vários minutos. Agora você tem vários anos de dados M1 para esse símbolo. Para usar esses dados em prazos maiores, você precisará usar o script periodconverter que vem com MetaTrader. Abra uma janela de gráfico e configure-a para M1. Arraste e solte o script periodconverter da janela Navegador no gráfico e defina a configuração ExtPeriodMultiplier para o número de minutos para converter. Para M15, use 15 para H1, use 60 para H4, use 240 e assim por diante. Repita este processo para todos os períodos de símbolos que você pretende testar. Depois de ter dados históricos suficientes, você pode começar a testar. O vídeo abaixo demonstra o processo de importação e conversão dos dados M1: Otimização O recurso de otimização do MetaTrader 4 permite que você teste milhares de combinações de configurações de consultor especialista para encontrar as configurações mais rentáveis ​​para o gráfico selecionado, período e intervalo de datas. As estratégias baseadas em indicadores precisarão ser otimizadas para a máxima rentabilidade. No entanto, quase todas as EAs se beneficiarão com a otimização - mesmo aquelas que comercializam dados de marca, desde que você tenha dados de histórico M1 completos (veja acima). Enquanto o otimizador retornará as configurações mais rentáveis ​​para o intervalo de datas selecionado, isso não garante que essas configurações sejam lucrativas no futuro. As condições do mercado mudam frequentemente, por isso é importante re-optimizar regularmente o seu consultor especializado para obter melhores resultados. Para otimizar seu consultor especializado, primeiro selecione-o na caixa suspensa Advisor especialista. Selecione o par de moedas da caixa Símbolo e do período do gráfico na caixa Período. Para modelo. Você geralmente deseja selecionar Open Prices Only, a menos que você esteja otimizando uma EA que é executada em dados de marca. Nesse caso, selecione Every Tick. Verifique a opção Usar data e selecione um intervalo de datas para otimizar. Por fim, certifique-se de que a Otimização esteja marcada. Clique no botão Propriedades Especializadas para abrir as configurações do seu consultor especializado. Sob a guia Inputs é onde você entrará o intervalo de valores para otimizar. A coluna Iniciar será o valor mais baixo para uma determinada configuração, enquanto a coluna Stop será a mais alta. A coluna Etapa é a quantidade que o otimizador irá passar da configuração Iniciar para Parar. Na imagem acima, estamos optimizando as configurações de SL, TS e TP para um consultor especializado. O valor de início é 20, o Passo é 20 eo Stop é 200. O otimizador testará cada combinação de valores de 20, 40, 60 e assim por diante até 200. Use um valor de início, etapa e parada apropriado para A configuração que você está otimizando. Mesmo os valores (5, 10, etc.) são bons. A caixa de seleção para o extremo esquerdo deve ser selecionada para que essa configuração seja otimizada. Qualquer configuração que não esteja marcada usará o número na coluna Valor ao otimizar. Sob a guia Teste, você pode ajustar o Depósito inicial para algo um pouco mais realista. Deixe as outras configurações em seus padrões. Quando você estiver pronto para começar a otimizar, aperte o botão Iniciar, na parte inferior direita, da janela Estratégia testadora. Dependendo do período, o intervalo de datas, o modelo de teste e o número de configurações a serem otimizadas podem levar de alguns minutos a várias horas. Se levar muito tempo, considere encurtar o intervalo de datas, otimizando menos configurações ou usando um valor de passo maior. Assim que a otimização for concluída, abra a guia Resultados da Otimização e clique duas vezes na coluna Lucro para classificar os resultados. Clique duas vezes em qualquer um dos resultados para carregá-lo no testador. Pressione o botão Iniciar novamente para voltar a testar com as configurações selecionadas. Backtesting Até agora, deve ser óbvio como o backtester funciona. Selecione seu consultor especialista. Símbolo. Período e modelo. Marque a caixa Usar data e selecione um intervalo de datas. Selecione o Modo visual apenas se desejar um procedimento visual do backtesting. Deixe a Otimização desmarcada. Pressione o botão Expert Properties e insira suas configurações na coluna Value sob a guia Entradas. Você também pode carregar ou salvar configurações usando os botões no canto inferior direito. As colunas Start, Step e Stop são ignoradas, assim como as caixas de seleção. Feche a caixa de diálogo Propriedades Expert e pressione Iniciar para iniciar o teste. Levará de alguns segundos a vários minutos dependendo das suas configurações. Uma vez finalizado o teste, abra a guia Relatório na parte inferior para ver seus resultados. Algumas estatísticas para tomar nota: lucro líquido total - O lucro bruto menos a perda bruta. Fator de lucro - A relação entre lucro bruto e perda bruta. Mais alto é melhor, qualquer coisa acima de 1,5 é boa. Remessa absoluta - A retirada do seu depósito inicial. As altas retiradas aumentam a probabilidade de que sua conta seja explodida. Negociações de lucro - Sua porcentagem global de vitórias. Qualidade de modelagem - Apenas importante se seu modelo de teste for Every Tick. Em caso afirmativo, isso deve estar em 90. Caso contrário, siga as instruções acima para atualizar seu histórico com dados M1 precisos. A guia Resultados na parte inferior do testador de estratégia fornecerá os detalhes em pedidos abertos e fechados, incluindo parada final, obtenção de lucro e perda de parada. Clique no botão Abrir gráfico para obter uma representação visual de seus resultados. Ao testar sua nova EA, examine estes de perto para garantir que sua estratégia esteja funcionando como pretendido. Walk Forward Analysis Embora backtesting e otimização possam dar uma boa idéia de como sua EA irá trocar, você precisará fazer testes mais extensos para garantir que seu sistema de negociação seja realmente lucrativo. A melhor maneira de conseguir isso é por um processo chamado análise walk-forward. A análise da frente para a frente consiste simplesmente em múltiplos ciclos de otimização e backtesting, e analisando os resultados dos testes durante um longo período. Nosso artigo sobre walk forward analysis explica o processo com mais detalhes. Nosso Walk Forward Analyzer para MetaTrader permite que você execute WFA de forma rápida e fácil.

No comments:

Post a Comment