Início > Blog > Não se deixe enganar pelo cache de inputs do testador MT5

Strategy Testerbacktestprocedimento de validação

Não se deixe enganar pelo cache de inputs do testador MT5

Publicado: 2026-10-18Leitura: cerca de 2 min
⏱ Este artigo reflete as informações na data de publicação. Os números de desempenho dos EAs (PF, DD, retorno anual) mudam com a operação real e com a revalidação — confira os mais recentes nas páginas dos EAs. Ver os resultados mais recentes dos EAs →

Conclusão: parta do princípio de que os inputs do testador são os "da vez anterior"

O Strategy Tester do MT5 lembra os últimos inputs usados em cada EA. É um recurso prático, mas, depois de atualizar o EA ou logo após outro teste, pode acontecer de a configuração que você achava que estava testando ser diferente da que realmente rodou.

Nossa solução é simples: não confie nos valores exibidos na tela do testador. Escreva todos os parâmetros na seção [TesterInputs] do arquivo de configuração e confira com os inputs que ficam registrados no relatório. Neste artigo explicamos o motivo e o passo a passo.

📧 Curso gratuito por e-mail (8 e-mails) + pacote com 13 indicadores MT5 exclusivo para inscritos

Logo após a inscrição, você recebe um link para baixar um pacote exclusivo com nossos 13 indicadores MT5: arquivos compilados (.ex5), código-fonte e um guia de instalação. Depois, 8 e-mails sobre os fundamentos do trading automatizado, como ler um backtest corretamente e como escolher a corretora (um por dia nos primeiros 5 dias e depois 7, 14 e 30 dias após a inscrição). Você também é avisado antes de cada aumento de preço das versões vendidas no MQL5 Market (preço de lançamento que sobe em etapas conforme as vendas). Neste site, nossos EAs são gratuitos com uma conta real em uma corretora parceira.

* Privacidade rigorosamente protegida. Você pode cancelar a inscrição a qualquer momento.

Por que o teste acaba rodando com outra configuração

O testador salva os inputs e os reutiliza

O testador do MT5 guarda, para cada EA, os últimos parâmetros usados e os carrega na próxima vez que você seleciona o mesmo EA. Isso poupa o trabalho de digitar os valores, mas causa problemas em situações como estas:

  • Você alterou o EA e mudou os valores padrão, mas o testador continuou com os valores antigos
  • Depois de testar valores extremos em uma otimização, você rodou um backtest normal mantendo esses valores
  • O lote ou os filtros ajustados para outro par de moedas foram carregados para o teste seguinte

Em todos esses casos, bastaria olhar a tela com atenção para perceber. Mas, num EA com dezenas de inputs, um único valor diferente passa despercebido com facilidade.

O pior é que o resultado parece "plausível"

Mesmo com a configuração errada, o testador não mostra erro nenhum. Se o resultado fosse completamente absurdo, você notaria; o problema é quando saem números que parecem razoáveis.

Como exemplo, veja dois EAs baseados em Donchian operando no mesmo USDJPY H1 (ambos com valores medidos em backtest real no MT5):

EAPFNegociaçõesDD efetivo
DONCHIAN ENGINE1.563110.8%
MEGAMAX DONCHIAN1.5562958.6%

O PF e o número de negociações são quase iguais, mas o drawdown efetivo é muito diferente. As diferenças de projeto entre os dois estão descritas na página de cada EA; o ponto aqui é que, olhando apenas o PF e o número de negociações, não dá para saber com qual configuração o teste rodou. Um único input fora do lugar pode mudar por completo a avaliação de risco.

Nosso procedimento de verificação

1. Escrever todos os parâmetros em [TesterInputs] no arquivo de configuração

O MT5 permite iniciar o testador passando um arquivo de configuração (ini). Na seção [TesterInputs], escreva todos os inputs, e não apenas os que você vai alterar.

[Tester]
Expert=MyEA
Symbol=USDJPY
Period=H1
Model=4

[TesterInputs]
InpLots=0.10||0.10||0.01||1.00||N
InpPeriod=20||10||5||50||N

O formato é "valor||início||passo||fim||otimizar (Y/N)". Em um backtest comum, o último campo é N.

Não contamos com o valor que um parâmetro não declarado vai assumir, pois isso pode variar conforme o ambiente. A suposição de que "deve estar no padrão" é exatamente a causa do problema de que trata este artigo.

2. Conferir os parâmetros de entrada do relatório

O relatório do testador registra os inputs que foram realmente usados. Ao terminar o teste, compare os inputs do ini com os do relatório. Em vez de comparar a olho, é mais seguro converter ambos em texto e gerar um diff.

3. Tratar o EA atualizado como um "outro EA"

Se uma alteração mudou os valores padrão do EA, salve-o com outro nome, incluindo a versão no nome do arquivo. Assim, eliminamos desde o início o caminho pelo qual valores antigos seriam carregados automaticamente.

Checklist

  • Escrevi todos os inputs em [TesterInputs]
  • Após uma otimização, o final de todas as linhas voltou a ser N
  • Os inputs do relatório coincidem com os do ini
  • Mudei o nome do arquivo após alterar o EA
  • Símbolo, timeframe e modelagem também foram definidos explicitamente em [Tester]

Limites e cuidados

Mesmo com esse procedimento, nem todos os erros são evitados.

  • Constantes internas do EA que não aparecem como inputs não podem ser controladas pelo ini. É preciso verificar por outros meios se o código-fonte é o mesmo.
  • Mesmo com os inputs corretos, se as condições de dados históricos ou de spread forem diferentes, o resultado muda. Conferir os inputs é apenas um dos fatores para manter a reprodutibilidade.
  • Nós mesmos não podemos afirmar que todos os testes feitos antes de adotarmos esse procedimento estavam corretos. Refizemos os que identificamos, mas não podemos garantir que não haja nenhum deslize.

Para saber como configurar os EAs que distribuímos, consulte Como configurar o EA; outras dicas de validação estão reunidas na Base de conhecimento.

Resumo

  • O testador do MT5 lembra os inputs anteriores e pode herdá-los sem que você perceba
  • Mesmo com a configuração desalinhada não aparece erro, e os números parecem plausíveis, o que dificulta a percepção
  • A solução é escrever todos os parâmetros em [TesterInputs] e conferir com os inputs do relatório
  • Ao alterar o EA, salve-o com outro nome para que valores antigos não sejam carregados
  • Ainda assim, constantes internas e diferenças nas condições dos dados não são cobertas, de modo que o controle dos inputs é apenas uma parte da validação

📧 Curso gratuito por e-mail (8 e-mails) + pacote com 13 indicadores MT5 exclusivo para inscritos

Logo após a inscrição, você recebe um link para baixar um pacote exclusivo com nossos 13 indicadores MT5: arquivos compilados (.ex5), código-fonte e um guia de instalação. Depois, 8 e-mails sobre os fundamentos do trading automatizado, como ler um backtest corretamente e como escolher a corretora (um por dia nos primeiros 5 dias e depois 7, 14 e 30 dias após a inscrição). Você também é avisado antes de cada aumento de preço das versões vendidas no MQL5 Market (preço de lançamento que sobe em etapas conforme as vendas). Neste site, nossos EAs são gratuitos com uma conta real em uma corretora parceira.

* Privacidade rigorosamente protegida. Você pode cancelar a inscrição a qualquer momento.

Tem alguma dúvida sobre EAs ou Forex?

Você pode publicá-la no fórum de trading da Nattzy (cadastro gratuito). Dúvidas além deste artigo também são bem-vindas — configuração de EAs, escolha de corretora e mais.

Perguntar na Nattzy ↗

Comentários e perguntas