Testador de Estratégias - Compra e/ou Venda Afastada do Preço

 

Olá, meus caros!

Pergunto-lhes:

Alguém já enfrentou problemas de ver a compra ou a venda, ou até mesmo um resultado de operação inteiramente afastado dos candles?

A operação fica totalmente fora do preço maculando os resultados de saldo (imagem em anexo).

O problema ocorreu com 3 experts diferentes.

Caso alguém tenha enfrentado essa situação peço ajuda!

Agradecido!

Arquivos anexados:
 

nao consigo comprar nem vender minha banca e de 9.85 dolares 

 
Ilton Ornelas:

Olá, meus caros!

Pergunto-lhes:

Alguém já enfrentou problemas de ver a compra ou a venda, ou até mesmo um resultado de operação inteiramente afastado dos candles?

A operação fica totalmente fora do preço maculando os resultados de saldo (imagem em anexo).

O problema ocorreu com 3 experts diferentes.

Caso alguém tenha enfrentado essa situação peço ajuda!

Agradecido!

Parece-me puro problema de backtest. Comigo as vezes ocorre também.

Se tem solução não sei. Mas como faço backtest de períodos longos, então esses pequenos erros não dou atenção porque não impactam significativamente nos meus testes.

 
Ruy Christian Hoffmann:

Parece-me puro problema de backtest. Comigo as vezes ocorre também.

Se tem solução não sei. Mas como faço backtest de períodos longos, então esses pequenos erros não dou atenção porque não impactam significativamente nos meus testes.

Obrigado pela atenção, Ruy!


Notei que em algumas situações, alterando a modelagem entre "Cada tick" e "OHLC por 1 min", o problema fica contornado!

Mas não resolve em 100% dos casos, inclusive muitas vezes a testagem não pode levar em conta somente o OHLC né?


Grande abraço! 

Princípios básicos dos testes no MetaTrader 5
Princípios básicos dos testes no MetaTrader 5
  • www.mql5.com
A ideia da negociação automatizada é atraente devido ao fato de que o robô de negociação pode trabalhar por 24 horas por dia, sete dias por semana. O robô não se cansa, não fica em dúvida ou assustado, é totalmente livre de quaisquer problemas psicológicos. É o suficiente para claramente formalizar as regras de negociação e implementá-las nos...
 
Ilton Ornelas:

Obrigado pela atenção, Ruy!


Notei que em algumas situações, alterando a modelagem entre "Cada tick" e "OHLC por 1 min", o problema fica contornado!

Mas não resolve em 100% dos casos, inclusive muitas vezes a testagem não pode levar em conta somente o OHLC né?


Grande abraço! 

Bom dia Ilton,

Correto, nem sempre leva-se em conta apenas OHLC, mas isso depende também de sua estratégia.

A questão de backtest é bem complexa, confesso que eu mesmo tive uma decepção recente, aliás muito recente mais precisamente agora dia 20/04/2020. Na minha conta real meu robô fez 162 reais em conta real/produtiva, base 1 contrato.

Dai, por coincidência um amigo testou em backtest e deu resultado negativo.

Fui eu testar este mesmo dia, mesmo robô, mesma conta, mesma corretora, mesmo timeline, mesma internet, enfim, de +162 reais REAL passou a ser -154 em backtest. Isso mesmo, em apenas um dia de positivo para negativo.

Dai fui eu lá e minunciosamente fiz outros diversos testes neste mesmo dia, coloquei latência de 1ms a 100ms para simular diversos aspectos, e para cada uma mudança eu testava absolutamente em todos os tipos de testes "Cada tick, Cada tick real, ....". O que tem lá nas caixinhas eu testei. E o mais próximo da realidade que cheguei foi no backtest com Latência de 20ms e a opção "Cada Tick Real", chegou a +104 reais vs 162 que foi o da conta real.

Claro que com esse resultado desastroso eu tive que testar períodos maiores para ver se o problema estava apenas no dia 20, e infelizmente não, quanto maior o período mais negativo dava o resultado em relação a conta real.

Dai, olhando mais atentamente, observei que os gráficos estavam idênticos (backtest vs real), que os valores dos candles estavam também idênticos, mas que apenas a "ordem" da sequencia de variação dentro do mesmo candle é que não estava correta. Explicando melhor: meu setup e ST 300 vs GAIN 100 pontos, indice WIN. Então, no timeline acima de 1 minuto, um candle que antingiu 400 pontos no meu setup pode tanto chegar a STOP quanto GAIN. Na conta REAL deu ganho, porque ele "sambou" dentro do candle na direção do meu GAIN e atingiu os 100 pontos antes de reverter e ir para a outra extremidade do candle onde, se ainda a operação estivesse aberta chegaria ao STOP. Pois bem, no backtest esta ordem dele "sambar" dentro do candle não está acontecendo identico, então em alguns casos na minha conta REAL deu ganho mas no backtest as vezes PERDA. Esse as vezes foi de um dia onde tive mais de 20 operações realizadas ele deu falha em 8 operações apenas, ou seja equivalente a 8 candles digamos assim.

Acredito que para setups mais longos essa diferença não faça impacto, mas para meu caso onde no mesmo candle em questão de segundos pode bater GAIN ou STOP está fazendo diferença.

Resumindo, literalmente "rasguei" todas minhas anotações de backtest com períodos longos. Até porque meu setup já está rodando e com consistência então não tenho mais porque mexê-lo neste momento. O único inconveniente é eu imaginar quantos e quantos setup´s eu descantei no passado porque no backtest davam resultados ruins e poderiam não refletir a mesma coisa em conta real, bem como vice-e-versa que aposto que já aconteceu com mais gente, ou pelo menos comigo sim, de em backtest dar um resultado magnífico e na conta real não tão bem assim.... ok ok ok que tem spread, delay, volume, etc que influenciam nesses resultados entre backtest e conta real; mas em 1 contrato, 1 único contrato em apenas 1 dia dar diferença de +162 para +104 é um tantão demais né...

Dai um outro amigo me deu a dica de ler https://www.mql5.com/pt/docs/runtime/testing, pois bem, li e algumas partes até revisei, mas efetivamente não consegui "engolir" essa diferença como algo "normal".

Enfim, parar de reclamar que meu setup tá indo bem senão Deus castiga. Só quis mesmo é dividir com você(s) uma situação para mim não agradável.

Essa imagem abaixo foi do dia 20/04/2020, onde a tela fundo preto foi em Backtest.

E a de "cor de dor de barriga" foi em conta real. Os anéis em vermelho foi onde ocorreram divergências.


Abraços,

Documentação sobre MQL5: Programas MQL5 / Testando Estratégias de Negociação
Documentação sobre MQL5: Programas MQL5 / Testando Estratégias de Negociação
  • www.mql5.com
A ideia de negociação automática é atraente pelo fato de que o robô de negociação pode trabalhar sem parar 24 horas por dia, sete dias por semana. O robô não fica cansado, em dúvida, ou com medo, ele é totalmente livre de quaisquer problemas psicológicos. Basta formalizar de forma clara as regras de negociação e implementá-las nos algoritmos, e...
Razão: