UTC
PT
ForexForStarters.com

Vieses no backtest (overfitting, lookahead, sobrevivência)

Você passou semanas fazendo o backtest da sua estratégia. Os resultados parecem incríveis: setenta por cento de taxa de acerto, fator de lucro de três, quase nenhum drawdown. Você está pronto para operar na conta real e ficar rico. Aí a realidade bate. A estratégia perde dinheiro desde o primeiro dia.

Aviso de risco: Este conteúdo tem fins exclusivamente educacionais e não é uma recomendação de investimento. Operar forex envolve riscos e você pode perder dinheiro.

Curva de capital
DRAWDOWN MÁX. −4%CURVA DE CAPITAL · EXEMPLO

Viés no backtest

O que deu errado? O mais provável é que o seu backtest tenha sido contaminado por vieses. São erros sistemáticos no seu processo de teste que fazem os resultados parecerem melhores do que realmente são. Entender esses vieses é essencial se você quer que o seu backtest signifique alguma coisa.

Esta página trata dos três vieses mais prejudiciais e de como evitá-los.

O que é

Overfitting (sobreajuste) significa que você ajustou a sua estratégia tão perfeitamente aos dados passados que ela só funciona naqueles dados específicos. Você acrescenta regra após regra, filtro após filtro, até que a estratégia evite todas as operações perdedoras do histórico e capture todas as vencedoras. O resultado fica incrível no gráfico passado, mas não tem nenhum valor preditivo para o futuro.

É como decorar as respostas da prova do ano passado. Você tira cem por cento naquela prova, mas vai mal na nova, porque as perguntas são diferentes.

Como acontece

  • Você percebe que a estratégia perde às segundas-feiras, então acrescenta uma regra: não operar às segundas.
  • Você percebe que ela perde quando o IFR (RSI) está entre 40 e 60, então acrescenta um filtro: só operar quando o IFR estiver acima de 60 ou abaixo de 40.
  • Você percebe que ela perde no GBP/JPY em março, então exclui esse caso.
  • Você continua acrescentando condições até o backtest ficar perfeito.

Cada regra que você acrescenta faz a estratégia se encaixar mais nos dados passados, mas também diminui a chance de ela funcionar em dados novos. A estratégia não está capturando uma vantagem real do mercado; está capturando ruído e aleatoriedade de um período específico.

Como evitar o overfitting

  • Mantenha as regras da sua estratégia simples. De três a cinco regras, no máximo. Se você precisa de dez regras para fazê-la funcionar, provavelmente há overfitting.
  • Teste fora da amostra (out-of-sample). Divida os seus dados históricos em duas metades. Desenvolva a estratégia na primeira metade e depois teste-a na segunda, sem mudar nada. Se ela continuar funcionando, é mais provável que a vantagem seja real.
  • Forward test. Teste a estratégia em tempo real em uma conta demo. Estratégias com overfitting falham rapidamente em condições reais. Veja /pt/estrategias/backtesting/forward-testing/.
  • Desconfie de resultados perfeitos. Estratégias reais têm curvas de capital irregulares, com drawdowns e sequências de perdas. Se a sua parece limpa demais, provavelmente há overfitting.

O que é

O viés de antecipação (lookahead bias) acontece quando o seu backtest usa informações que não estariam disponíveis no momento da operação. Na prática, você está espiando o futuro e usando esse conhecimento para tomar decisões, o que é impossível no trading em tempo real.

Como acontece

  • Você vê no gráfico que um suporte segurou e registra uma compra naquele nível. Mas, em tempo real, você não saberia que o nível ia segurar. Ele poderia ter sido rompido.
  • Você usa o valor de um indicador que é recalculado com base em dados futuros. Alguns indicadores repintam, ou seja, os seus sinais mudam depois que o candle fecha.
  • Você entra em uma operação exatamente na mínima de uma barra, algo que é visível nos dados históricos, mas quase impossível de executar em tempo real.
  • Você usa dados de fim do dia para tomar uma decisão que deveria acontecer no início do dia.

Como evitar o viés de antecipação

  • Avance um candle por vez. Nunca olhe além do candle atual ao tomar decisões de trading durante o backtest.
  • Garanta que os seus indicadores não repintam. Teste-os em um gráfico ao vivo para confirmar.
  • Entre nas operações na abertura do candle seguinte ao sinal, e não no melhor preço possível dentro do candle do sinal.
  • No backtest manual, cubra o lado direito do gráfico para não ver o que acontece depois.

O que é

O viés de sobrevivência (survivorship bias) acontece quando você testa a sua estratégia apenas em instrumentos ou dados que existem hoje, ignorando os que desapareceram. Em ações, esse é um problema enorme, porque empresas vão à falência e saem da bolsa. No forex, ele é menos grave, mas continua relevante.

Como acontece no forex

  • Você testa a estratégia em pares de moedas que hoje são populares e líquidos, mas alguns desses pares talvez não fossem tão líquidos anos atrás. O seu backtest assume que eles sempre foram fáceis de operar.
  • Você evita testar pares que tiveram eventos extremos ou anomalias (como o choque do franco suíço em janeiro de 2015) porque são pontos fora da curva. Mas esses eventos são reais, e a sua estratégia precisa sobreviver a eles.
  • Você testa apenas os pares em que já percebeu que a estratégia parece funcionar, ignorando aqueles em que ela não funciona. Essa é uma forma de viés de seleção, muito próxima do viés de sobrevivência.

Como evitar o viés de sobrevivência

  • Teste em um conjunto amplo de pares, incluindo os que não parecem ideais para a estratégia. Se a estratégia só funciona em dois de vinte pares, a vantagem talvez não seja real.
  • Inclua períodos de crise nos seus dados. O evento do franco suíço em 2015, o crash da pandemia em 2020 e outros movimentos extremos devem estar nos seus dados de teste.
  • Não exclua períodos de perda ou eventos fora da curva só porque ficam feios no resultado.

Outros vieses para ficar de olho

  • Viés de confirmação. Você acredita que a sua estratégia funciona, então, sem perceber, interpreta setups ambíguos como entradas válidas quando eles estão no limite. Seja implacável com as suas regras.
  • Viés de seleção. Testar a estratégia apenas nas condições de mercado em que você acha que ela vai funcionar (só em tendências, só em ranges). Uma estratégia robusta precisa ser testada em todas as condições.
  • Viés de qualidade dos dados. Usar dados históricos ruins, com candles faltando, preços incorretos ou erros de fuso horário. Sempre verifique se a sua fonte de dados é confiável. Plataformas como TradingView e MetaTrader 4 oferecem dados históricos geralmente sólidos para backtest.

O melhor processo de backtest inclui estas proteções

  1. Escreva regras claras e sem ambiguidade antes de começar.
  2. Use um conjunto de dados grande o suficiente (pelo menos um ano, de preferência dois ou mais).
  3. Divida os dados em um período dentro da amostra (in-sample) para o desenvolvimento e um período fora da amostra (out-of-sample) para a validação.
  4. Mantenha a estratégia simples, com poucas regras.
  5. Avance um candle por vez e não olhe à frente.
  6. Inclua condições de mercado diversas e períodos de crise.
  7. Depois, faça um forward test em uma conta demo.

Se você seguir esses passos, os resultados do seu backtest serão muito mais confiáveis e a sua transição para a conta real será mais tranquila.