O que é backtesting de EA (e o que não é)
O backtesting de EA é o processo de pegar um sistema de negociação baseado em regras (frequentemente chamado de Expert Advisor, ou EA) e aplicar suas regras a dados históricos de preços para ver como ele teria se comportado. O resultado não é uma prova de desempenho futuro. É uma evidência sobre como as regras reagiram a dados passados sob premissas específicas de simulação.
O backtesting também é diferente de negociação simulada (paper trading) ou negociação ao vivo. No backtesting, você controla as entradas (dados históricos e escolhas de modelagem). Nos mercados ao vivo, as entradas podem diferir: os spreads aumentam, ocorrem atrasos de execução e a liquidez muda.
Como o backtesting de EA funciona na prática
A maioria dos backtests segue o mesmo fluxo básico:
-
Defina as regras da estratégia. Um EA normalmente tem lógica de entrada/saída, lógica de dimensionamento de posição e regras de risco ou gerenciamento de dinheiro. Essas regras determinam quais ordens seriam acionadas.
-
Escolha os dados históricos. Os “preços históricos” usados no teste afetam o resultado. Se o conjunto de dados tiver lacunas, qualidade de tick diferente ou formação de barras diferente daquela que o EA espera, os resultados podem ser enganosos.
-
Modele os detalhes de execução. Um backtest frequentemente precisa de premissas sobre spread, comissões, slippage, preenchimento de ordens e se stops/alvos são atingidos exatamente quando o preço aparece. Pequenas mudanças aqui podem alterar a lucratividade e os rebaixamentos (drawdowns).
-
Execute a simulação. O motor avança no tempo e aplica as regras do EA. Se o EA usa indicadores, esses indicadores são calculados usando apenas as informações disponíveis até cada momento simulado.
-
Avalie as métricas de desempenho. As métricas comuns incluem retorno líquido, rebaixamento (drawdown), taxa de acerto e distribuição de negociações. Interpretar essas métricas exige entender o período de tempo, os custos incluídos e se o EA foi ajustado (tunado).
Evidências e exemplos: de onde podem vir resultados “bons”
Um exemplo realista ajuda a esclarecer as armadilhas típicas:
-
Suponha que um EA pareça forte em um mês de dados históricos porque a tendência do mercado correspondeu à lógica do EA. Se essa lógica depende de momentum constante, as mesmas regras podem ter desempenho ruim em regimes laterais ou voláteis.
-
Suponha que o backtest ignore ou subestime os custos de transação. Na negociação real, spreads e comissões reduzem os retornos, e o slippage altera os preços de entrada/saída. Um backtest que não inclui custos realistas pode exagerar os resultados.
-
Suponha que os parâmetros do EA foram repetidamente ajustados para maximizar os resultados em um único conjunto de dados. Isso pode criar uma solução sobreajustada: ela “aprende” peculiaridades do passado em vez do comportamento geral do mercado.
Limitações materiais e modos de falha
Os iniciantes devem tratar os resultados do backtesting como condicionais às premissas. As limitações materiais incluem:
-
Mudança de regime de mercado As relações que apareceram no passado frequentemente não persistem. Mesmo que as regras da estratégia permaneçam as mesmas, o comportamento do mercado pode mudar.
-
Incompatibilidade de execução As premissas do backtesting sobre preenchimento de ordens, slippage e acionamento de stops/alvos podem diferir da execução real.
-
Qualidade e amostragem dos dados Os dados históricos podem não replicar a sequência exata de ticks ou barras que o EA espera. Isso pode alterar os valores dos indicadores e o timing dos sinais.
-
Sobreajuste Se o ajuste de parâmetros, escolhas de indicadores ou filtros forem otimizados repetidamente para um período, a estratégia pode se tornar frágil.
-
Viés de sobrevivência e de seleção (quando aplicável) Se o teste usar janelas de tempo selecionadas (por exemplo, apenas períodos de “boa aparência”), os resultados podem ser tendenciosos.
Como verificar independentemente os fatos relevantes
Um ponto de controle prático é verificar se o backtest responde a uma pergunta testável sob premissas explícitas.
Considere estas etapas de verificação:
-
Replique o teste usando entradas consistentes. Verifique se o mesmo conjunto de dados históricos e as mesmas configurações do EA produzem as mesmas saídas.
-
Use múltiplos períodos de tempo não sobrepostos. Testar em diferentes anos (ou pelo menos em diferentes condições de mercado) ajuda a revelar se os resultados dependem de um único regime.
-
Inclua configurações realistas de custos e execução. Se o backtest não modelar custos como comissões e spreads (e não incluir premissas de slippage quando relevante), trate os resultados como incompletos.
-
Teste a sensibilidade sob estresse. Se pequenas mudanças nos parâmetros ou na modelagem de execução alterarem drasticamente o resultado, isso indica fragilidade.
-
Compare a lógica de treino vs. validação. Se os parâmetros foram otimizados em um período, valide-os em um período separado que não foi usado para o ajuste.