Se você estivesse andando e, aleatoriamente, começou a chover, consideraria carregando um guarda-chuva amanhã? É claro que você faria.
A razão de eu fazer uma pergunta retórica como que é quando as pessoas observam um comportamento, eles responder em conformidade. Se eles esperam que algo poderia acontecer de novo, eles mudam seu comportamento para acomodar a alteração nos resultados.
Quando você pensa sobre robôs forex, todo mundo tem o sonho de desenvolver uma estratégia que funciona para sempre. Ele não exige alterações. As configurações iniciais sempre funciona. Ligue-o e mover-se para a praia.
Realidade, claro, é mais complicado do que.
Isso leva a expectativas de que você precisa fazer quando a sua estratégia, inevitavelmente, dá errado. It’s very possible that you come up with a strategy that works and does amazingly well on the current market. Contudo, a past genius doesn’t mean future genius. There’s always the chance that your strategy will no longer work in the future.
Por que é que? It’s the same reason that you might carry an umbrella tomorrow if it rains today. As pessoas observam o mercado realizando de forma consistente. À medida que mais e mais pessoas fazer a observação, as pessoas começam a negociação. O mercado responde a essas mudanças, e, finalmente, a oportunidade lava completamente fora como muitas pessoas têm orelhudo sobre isso.
Caminhada de testes para a frente é o processo de determinar se ou não a sua estratégia tem lavado. Através de testes em um conjunto de dados, e, em seguida, testá-lo em um conjunto cego, você pode dar a si mesmo uma indicação de que sua estratégia é ruim ou não. The goal of walk forward isn’t to prove that your strategy is good. It’s to prove that your strategy is not known to be bad.
O processo de teste de caminhada para a frente é muito simples. Você identifica um conjunto de informações que você deseja usar para o seu teste e otimização. Usando um exemplo real, right now it’s the beginning of 2014. Então, talvez você quer olhar e dados de teste de 2011 através 2012. Isso seria sua amostra de dados em, e, em seguida, o seu fora de dados de amostra pode ser tudo de 2013.
A fim de realizar um teste de caminhada para a frente, você iria testar e analisar a sua estratégia 2011-2012. Em Seguida, to determine if it’s “não conhecido por ser ruim”, Você, então, andar para a frente 2103 para ver rever o desempenho.
What you’ve done is a blind test. You didn’t know what how the strategy would perform in 2013 quando testado em 2011-2012. Ao colocá-lo em uma amostra cega, você dar-lhe a oportunidade de falhar.
The reason so many traders put their faith in walk forward testing is because it’s the absolute best tool to identify weaknesses in your optimization. When you’re testing a strategy, it is very likely that you’ve overfit to past opportunities.
Realimentação Auto laços no mercado atual
Deixe-me dar um exemplo. Nos mercados atuais, um grande número de comerciantes têm sido batendo ouro no mercado aberto, onde todos os dias no mercado aberto., eles vendem o ouro tanto quanto puderem. Sometimes it’s several multiples of the annual production in a span of a few minutes. O que você vê é uma queda livre absoluto por cinco ou dez minutos. Esse estado persistir por dias em um tempo. But that doesn’t last forever. Quando os comerciantes suficientes começar a ver que as pessoas bater o ouro no aberto, eles começam a fazer a mesma coisa.
Efetivamente, quem quiser ouro para recuam no mercado aberto ensinou outros comerciantes a fazer que o comércio para eles. Como as pessoas esperam de ouro a cair nos primeiros cinco minutos da aberto, Eles, então, mudar o seu comportamento. Alguns tentam saltar sobre batendo o aberto e ir curto.
Outros começar a modificar o seu comportamento. Eles percebem que as quedas livres de ouro por cinco minutos. Em Seguida, de repente ele pára, e mais de como ele será revertido para a média. They’ll start changing their tack and buying after so many minutes have elapsed from the open. Eles esperam que o volume pesado que precedeu a venda acabará por voltar ao normal. Como as pessoas mudam o seu comportamento, outras pessoas respondem em espécie.
Se pessoas suficientes começar a vender no aberto e, em seguida, comprar nas abertos cinco minutos mais tarde, você pode ver que um padrão está se formando em que uma pessoa responde às ações de outra. It’s a self feedback loop where the state that was working for the first couple of days no longer works in the future.
Se for possível identificar uma estratégia que seja capaz de sobreviver essas condições, and is able to survive conditions where you didn’t do any testing and optimization, você se dá melhores chances de sucesso no futuro. It means that not very many traders have clued into this trading opportunity that you’ve discovered.
A abordagem para andar para a frente de testes é o antídoto para o problema conhecido como ajuste de curva. Encaixe de curva é o derradeiro teria pode ter devia ter estratégia. It’s akin to opening a chart from yesterday and saying I would’ve bought here and I would’ve sold here, já sabendo o que aconteceu.
Of course you’re going to “ganhar dinheiro” em que situação. Você sabe com informação perfeita o que o mercado fez. No futuro, you don’t know the perfect information. O objetivo de uma estratégia é lidar com essa ambigüidade.
Curve fitting means that you’ve fit everything so perfectly to past market conditions that when new situations inevitably arise, tipo de parecido com a frase, “history doesn’t repeat itself, mas rima,” sua estratégia faz a mesma coisa.
Você quer uma estratégia que faz bem no desempenho passado, but you’re not coming up with a strategy to make money on historical markets. O objetivo de desenvolver uma estratégia é fazer o dinheiro em mercados futuros. When you’re backtesting, you’re trying to strike the balance between solid historical performance and, mais importante, certificando-se de que esse conhecimento histórico extrapola para o desempenho futuro. Seu objetivo é fazer dinheiro.
Rolando andar para a frente Optimization
Rolando caminhada otimização frente leva a idéia a pé para a frente e melhora continuamente a estratégia expondo-a a novos dados. So let’s say that you have a twenty four month sample period. Uma maneira de fazer isso seria para otimizar a sua estratégia para um período de dois meses, em seguida, para caminhar para a frente para o terceiro mês. Você observar o comportamento e é otimizada novamente para o segundo e terceiro mês, em seguida, caminhar para a frente para o quarto mês.
Ao fazê-lo de forma contínua, você elimina o tempo de decaimento da estratégia e dar-lhe uma chance de se adaptar às condições de mercado em curso. É uma espécie de o enteado ruiva para a aprendizagem de máquina. Experiência e perdas dar a estratégia a oportunidade de melhorar e ajustar-se às mudanças do mercado através de caminhada de otimização para a frente.
…você elimina o tempo de decaimento da estratégia e dar-lhe uma chance de se adaptar às condições de mercado em curso
Outra consideração importante para a caminhada de análise para a frente é o graus de liberdade dentro de um sistema. Por exemplo, let’s say that you are analyzing a moving averaage cross. You’re using two moving averages and use a fixed stoploss and take profit. Isso lhe daria quatro graus liberdade. A média móvel de rápido é o primeiro grau. A média móvel lento é o segundo grau. O terceiro é o stoploss eo quarto é o take profit.
Os mais graus de liberdade que você permite em um sistema aumenta muito as chances 0f ajuste de curva seus sistemas de dados históricos. Os melhores sistemas absolutos manter doze graus de liberdade ou menos. Você quer encontrar oportunidades comerciais que têm um grande número de negócios e que oferecem um desempenho que você encontrar satisfatória.
Outro elemento a considerar em sua otimização é o que você está otimizando para. A maioria das pessoas foco no retorno absoluto. Retornos são grandes, mas a maioria dos comerciantes importam muito mais sobre como eles fazem seu dinheiro em vez de quanto. Deixe-me dar um exemplo. Se eu tivesse um sistema que fez $25,000 ano passado, Como você quer que ele? Quase todo mundo diz que sim.
Se eu tiver um sistema que fez $25,000 ano passado, mas você tinha que perder para $15,000 antes de fazer qualquer dinheiro. Most people don’t want that system. O que isto significa é que você se importa muito mais sobre o desempenho no dia-a-dia, em vez de resultado final. The problem with optimization and even walk forward optimization is that you’re not necessarily focused on what you care about in the real world: the way that you’re making your money.
A maioria dos pacotes gráficos com foco no resultado líquido e que pode causar algumas deficiências em seu sistema. If you’re range trading, what you’ve really done is cherry pick the results that are the least affected by substantial news. Na realidade, you’ve chosen the settings that have not yet been affected by caudas gordas.
If you’re trend trading, you’ve done the exact opposite. Você intencionalmente escolher as configurações que maximizam os tailes gordura que aconteceram no passado. Com estratégias de negociação tendência, you probably aren’t going to find consistent performance. Em vez, what you’ll find is that the optimization frequently causes long, secas contínuas de incessante rebaixamento. Então, de repente, quase do nada, ele encontra um vencedor monstro mega que retorna vários múltiplos do saque que você experimentou. Isso é bom para um backtests hipotéticas, but in the real world where you’re suffering losses on a near daily basis, most traders can’t take the pain. The weakness I find with most optimizations is that they don’t look at the consistency of performance. Um substituto potencial para otimizar a estratégia seria olhar para o regressão linear da curva de capital ao longo do tempo. A melhor curva de equidade tem a mais forte inclinação da regressão linear.
Pacotes gráficos mais populares que implementam rolando caminhada de otimização para a frente são Amibroker, TradeStation, Multicharts e NinjaTrader.
Caminhada de otimização para a frente em NinjaTrader
Abra o Analisador de Estratégia do Centro de Controle. Clique em Arquivo / Novo / Estratégia Analyzer.
- Clique do mouse esquerdo em um instrumento ou instrumento lista e clique no botão direito do mouse para abrir o menu do botão direito do mouse. Selecione o item de menu andar para a frente. Você também pode clicar no “em um” ícone na barra de ferramentas de Estratégia Analyzer. Se preferir teclas de atalho, você também pode usar CTRL + O. Por fim, você também pode empurrar o “O” ícone no canto superior esquerdo do Analyzer Estratégia.
- Selecione uma estratégia da deslizar para fora do menu Estratégia
- Defina as propriedades de andar para a frente (Veja a “Compreender propriedades andar para a frente” seção abaixo para definições de propriedade) e pressione o botão OK.
The Walk progresso Atacante será mostrado na barra de status do Centro de Controle.
Dan diz
Testador de estratégia MT5 tem a capacidade de andar para a frente (Mas não está rolando).
Shaun Overton diz
Obrigado por compartilhar, Dan.
Wayne diz
Excelente artigo. Eu tenho um muito bom EA a parte mais difícil foi tentar obter uma boa estratégia para otimização e encaminhar teste.
O artigo dá um método muito bom para otimização.
Rudi diz
tem ferramentas WFA ?
Shaun Overton diz
Oi Rudi,
O que você entende por WFA? Análise de frente de pé?
–Shaun
Praveen Baratam diz
Recently I started experimenting with WFA and made a startling observation. When all else is equal, the outcome of one WFA i.e. Walk Forward Efficiency could vary greatly if the start date of the first In-Sample period is shifted by just one month.
Google Spread Sheet showing both the WFA runs – https://goo.gl/6VHRDU
In Case 1 the first IS-OS step starts on 2nd Aug 2006 and slides forward by 6 months in each step. In Case 2 it starts on 2nd July 2006.
Na realidade, in Case 1 the WFA leaves out one month in the beginning and includes one month in the end when compared to Case 2.
Case 1 WFE : 100%
Case 2 WFE : -12%
Is this a case of seasonal variation? Any other explanation? Its really astonishing to see such big difference between them.
Por outro lado, the phenomenon reverses when we shift from 6 month Out of Sample period to 2 meses. In this situation the WFA instance starting from 2nd July 2006 outperforms the one that starts from 2nd Aug 2006.
Google Spread Sheet showing both the WFA runs and result reversal – https://goo.gl/AkH4ID
May be you can throw more light on this phenomenon.