Você está na página 1de 14

TUTORIAL

WALK FORWARD OPTIMIZER


(Para Robot Crowd)
- Utilize o celular na posição lateralizada p/ melhor visualização -

1º Passo: Comprado ou alugado a biblioteca: “Walk Forward Optimizer” no site mql5.community (link aqui) instale a biblioteca no seu terminal MT5, faça isso
primeiramente logando sua conta do MQL5.Community no próprio programa MT5, e depois acessando a caixa ferramentas (Control + T) > Mercado > Comprado, instale
a biblioteca em seu terminal MT5, conforme fotos abaixo - p/ melhor visualização utilize o celular na posição lateralizada
2º Passo: Devidamente instalada a biblioteca no seu terminal MT5, agora você precisa sobrescrever o arquivo “WalkForwardOptimizer MT5” que se encontra dentro da
pasta do terminal do seu MT5, especificamente em: MQL5>Scripts> Market (ver foto) para dentro da pasta do Robot Crowd (ver foto posterior) - p/ melhor visualização
utilize o celular na posição lateralizada
...sobrescreva o arquivo para dentro da pasta do Robot Crowd…
Pronto, biblioteca integrada ao robô RobotCrowd ! Obs: Há cada nova atualização do robô este procedimento acima precisa se refeito!
Considerações iniciais sobre o uso da biblioteca
Você precisa saber que a biblioteca irá rodar o WFM juntamente com os parâmetros específicos do “set” que você irá otimizar, portanto, a análise WFM e WFA serão
juntas num mesmo arquivo .html, que irá aparecer no seu windows na seguinte pasta: MQL5 > Files, com o nome do arquivo: RC-WFO-Output (foto abaixo)
CONHECENDO UM POUCO O RELATÓRIO GERADO (VER FOTO ABAIXO)
O relatório consistirá em duas partes, 1º Parte - Análise WFM e 2º Parte - Análise WFA
1º PARTE - ANÁLISE WFM - Nesta 1º Parte se encontrarão o melhor período “In sample” e o melhor período “out of sample” a serem usados na otimização WFA
Nota: usei poucas janelas in sample (120, 150 dias) tendo em vista apenas o caráter ilustrativo deste mini tutorial, mas o autor desta biblioteca (STANISLAV KOROTKY)
recomenda na comunidade mql (https://www.mql5.com/pt/articles/3279) procurar uma otimização pelas seguintes janelas in sample: (120, 150, 180, 210, 240, 270
dias), e quanto às janelas out of sample (15%, 20%, 25%). A biblioteca indicará as janelas mais perfomáticas baseadas nos melhores índices WFE%, WFC% bem como no
resultado da métrica usada na otimização, seja lucro por drawdown, função interna leve etc.
2º PARTE - ANÁLISE WFA - Aqui constarão os melhores parâmetros recomendados em cada período “out of sample” bem como o WFE% e Walk Forward Consistency
(%)
DICA: Gerado o relatório WFM do set a ser otimizado, basta ESCOLHER E FIXAR as janelas mais perfomáticas (estão em negrito) que no exemplo acima, foi a janela in
sample de 150 dias e a melhor janela out of sample foi de 15%, e partir pra uma nova otimização exclusivamente WFA, conforme foto 09 abaixo:
Foto 09 - Com a Janela In Sample (w.03.1) e períodos out of sample (w.04.1) FIXOS - o relatório virá apenas com a 2º Parte - análise WFA
Obs: O Parâmetro W.05 deverá constar a quantidade de passos necessário para cobrir todo o intervalo de tempo otimizado. Existe uma fórmula no final deste .doc que
ajuda a saber este valor.
Pronto, possuído uma visão geral dos relatórios gerados, vamos a parte prática de: como começar a usar a biblioteca WFO, a fim de se encontrar o WFM e WFA
A tela do Testador de Estratégia (Control + R) no MT5 deve ser configurado da seguinte forma (ver foto):

Baseando-se pela foto acima, escolha um intervalo de tempo total a ser otimizado (particularmente uso 2 anos), no campo “Otimização” escolha: “Critério máximo do
usuário” e “Algoritmo Completo Lento”, de hipótese nenhuma use: “Algoritmo baseado em genética rápida”.
Agora, basta carregar o .set que você irá otimizar no robô e selecionar os parâmetros a serem otimizados com seus passos, juntamente com a opção “Walk Forward
Analysis” habilitada (true) - W.02 que deverá ficar inicialmente da seguinte forma:
Dica: Indico como função objetivo de otimização usada (W.07) a “Função interna leve” ou “Lucro por Drawdown”.

Sugestões p/ prenchimento dos Parâmetros WALK FORWARD ANALYSIS (W.):


- As janelas “in sample” poderão ficar nos valores: (120, 150, 180, 210, 240 dias...) com incrementos de 30 em 30 dias;
- Os períodos Forwards deverão ficar nos valores: (15,20,25%...) com incrementos de 5 em 5%;
- A quantidade de passos ao longo do intervalo de tempo (Parâmetro: W.05) deverá cobrir todo o intervalo de tempo, de modo que o resultado do “forward final”
ultrapasse a data atual (se isso acontecer, ficará na cor verde na tabela do relatório final) e serão estes os parâmetros a serem utilizados no futuro.
Observando a foto acima, extraído do relatório gerado pela biblioteca, suponhamos que hoje seja dia 30/01/2020, o período forward final deverá vir com uma data
futura, no caso o .set deverá ser usado de 31/01/2020 até 23/02/2020 e os parâmetros a serem usados estão na última linha da coluna à direita, na cor verde.
Obs: Lembre-se de que a cada 10 mil passos se demora em média 1 hora para finalizar a otimização, por isso se recomenda otimizar os principais parâmetros da
estratégia principal, os períodos dos indicadores (filtros) bem como Stop máximo e TP mínimo/máximos, por vezes, isso resulta em mais de 135 mil passos, ou seja,
aproximadamente 14 hrs ou mais de otimização.
Dica: Rode o WFM com menos passos e depois rode o WFA já com as janela “in sample” e janela “out of sample” já definidos, de modo que você possa otimizar o
maior número de parâmetros do .set.
Como se gastam muitos passos para gerar a análise WFM do set (período “in sample” e período “out of sample”) recomendo quando for rodar o WFM usar apenas
alguns passos do set, só com o fim de achar a melhor janela “in sample” e “out of sample”, de modo que você possa rodar apenas uma análise WFA (conforme foto 09,
mais acima) com a janela “is” e “oos” FIXAS, economizando passos e horas de otimização e óbvio utilizando o maior número de parâmetros do set.
COMO E QUANDO DEVO PROCEDER A REOTIMIZAÇÃO DO SET
No caso usado como exemplo, na tabela acima, vimos que o set pode ser usado em ambiente real até o dia 23/02/2020, devendo ser reotimizado após este período,
devido a perda considerável do índice WFE% (relação do período “out of sample” com “in sample”).
Para isso, recomenda-se sempre salvar o relatório final (“RC-WFO-Output.html), de modo que para proceder a próxima otimização, você já conheça a janela in sample,
no caso 150 dias, e a janela out of sample, no caso 15%, partindo direto para otimização via WFA, conforme Foto 09.
No caso, o intervalo de tempo deverá começar com 1 (um) passo a frente, começando agora a partir de 23/10/2018 e não mais 01/10/2018 (ver tabela acima) e
terminando no dia 24/02/2020 (dia de hoje) com 15 passos, usando uma janela de 150 dias e um período out of sample de 15%.
Este Mini - Tutorial ficará disponibilizado via link através do Google docs de modo que poderá ser atualizado a qualquer tempo pelo autor.

Guilherme Jr
Dúvidas:
Whatsapp ou telegram: 81 – 995752494
Leia também:
O que é Walk Forward Optimizer - Clique aqui
Guia da biblioteca WFO - Clique aqui
Otimização Walk Forward feita pelas suas próprias mãos - Clique aqui
Dicas:
Não sabe quantos passos é preciso dar pra cobrir um intervalo de tempo total, observe a pergunta abaixo:
- Qnts passos é preciso inserir no parâmetro do Robotcrowd (W.05) de modo que se cubra um intervalo de tempo total de 3 anos, sendo is: 360 dias e oos de 20%?

Fórmula:

(total - window) / step

(3*360-360)/(360*0,20)

720 / 72 = 10 passos

Ou seja, vc precisa deixar este campo (W.05) no robotcrowd com 10 passos.

Obs: usar este mini tutorial com a versão 2.24 do RC ou versão superior.

Dica: Se ao começar a otimização, a quantidade de passos for muito grande e lhe custar muitas horas de otimização, tente selecionar menos parâmetros do setup.

Outras observações:

O que é conhecido por WFM, a biblioteca chama de WalkForwardOptimizer Cluster Report (análise clustorizada);

O que é conhecido por WFA, a biblioteca chama de WalkForwardOptimizer Report;

Você também pode gostar