Signal Pilot
🟡 Intermediário • Lição 32 de 82

Backtesting e realidade: essa expectativa perfeita está mentindo para você

16 min de leitura • Validação de estratégia
Signal Pilot
Formação profissional em trading
0%
Estás a progredir!
Continua a ler para concluir esta aula

Seu backtest: expectativa de 8R. Fator de lucro 3,5. 50.000 $ de ganho numa conta de 10.000 $.

Você vai para o real. Primeira semana: expectativa de -2R. Fator de lucro 0,4. Conta 12 % abaixo.

O que aconteceu? Seu backtest mentiu.

🚨 Falando a sério

A maioria dos backtests é pura fantasia. Eles supõem execuções perfeitas, zero slippage, spread nenhum e entradas mágicas que não existem no mercado de verdade.

Se o seu backtest parece bom demais para ser verdade, é porque é. Você se ajustou ao ruído, não ao sinal.

Nesta aula vais aprender:

  • Por que 90 % dos backtests fracassam quando vão para o real
  • Os 4 pecados capitais: sobreajuste, viés de antecipação, custos irreais e viés de sobrevivência
  • Como modelar o slippage e os spreads de um jeito que reflita a realidade
  • Dentro da amostra contra fora da amostra (a única validação que importa)
⚡ Ganhos rápidos para amanhã (clica para abrir)
  1. Acrescente custos realistas ao seu backtest — Inclua 0,03-0,05 % de slippage por operação mais o spread real. Se os resultados desabam, sua vantagem era falsa.
  2. Divida seus dados 70/30 — Otimize em 70 % dos dados e valide nos 30 % que você nunca viu. Se falhar fora da amostra, você sobreajustou.
  3. Opere em simulado por 30 dias antes do real — Se os resultados em simulado diferirem muito do backtest, algo está errado. Não vá para o real enquanto não baterem.

Exemplo real: como um backtest «perfeito» com expectativa de 1,3R virou um desastre de -0,45R no real

Contexto: Em março de 2024, Chris (exemplo composto) desenvolveu uma estratégia de rompimento após 6 meses de otimização. O backtest parecia incrível: expectativa de 1,3R, fator de lucro 4,9 e 67 % de acerto, testado em 2 anos de dados do SPY (2022-2023). Em abril de 2024 colocou 50.000 $ para trabalhar. Em junho de 2024 a conta estava 8.400 $ no vermelho (-16,8 %). Aqui vai a autópsia completa.

O backtest «perfeito» (dados de 2022-2023)
Resultados do backtest (jan. de 2022 - dez. de 2023, 2 anos)
Métrica Valor O que Chris pensava
Operações no total 156 Amostra de bom tamanho
Taxa de acerto 67.3% (105W / 51L) «Inacreditável! Muito acima da média.»
Ganho médio / perda média +2.4R / -1R «Ótimo R:R, os ganhos valem 2,4× as perdas.»
Fator de lucro 4.9 «Um número de nível profissional.»
Esperança +1,3R por operação «Território de santo graal.»
drawdown máximo -8.2% «Um drawdown minúsculo. Seguríssimo.»
Retorno total (2 anos) +$40,600 (+406%) «É esta. Vou largar meu emprego.»

O processo de otimização de Chris:

  • Testou 50 períodos de EMA diferentes (achou que EMA(34) era «perfeita»)
  • Testou 20 multiplicadores de ATR para os stops (achou que 1,47× ATR era «ótimo»)
  • Testou 15 níveis de alvo (achou que 2,8R era «o melhor»)
  • Estratégia final: cruzamento de EMA(34) + stop em 1,47× ATR + alvo de 2,8R
  • Combinações testadas no total: 50 × 20 × 15 = 15.000 variações

O que Chris não colocou no backtest:

  • O slippage (supôs execuções perfeitas nos preços exatos)
  • O spread de compra e venda (supôs spread zero)
  • As corretagens (esqueceu de modelá-las)
  • A rejeição de ordens (supôs 100 % de execução)
  • O teste fora da amostra (nunca testou em dados não vistos)
A realidade no real (abril-junho de 2024, 10 semanas)
Resultados no real (10 semanas, conta de 50.000 $)
Métrica Backtest Realidade no real Diferença
Taxa de acerto 67.3% 51.4% (19W / 18L) -15,9 pontos pior
Ganho médio +2.4R (+$1,200) +1.8R (+$900) -25 % menor
Perda média -1R (-$500) -1.3R (-$650) -30 % maior
Fator de lucro 4.9 1.46 -70 % de desabamento
Esperança +1.3R -0,45R líquido de custos -1,75R NEGATIVO
drawdown máximo -8.2% -21.4% 2,6× pior
Retorno total (10 semanas) +9.600 $ projetados -$8,400 (-16.8%) 18.000 $ de diferença
A contabilidade completa: para onde foram os 18.000 $
Anatomia da diferença de desempenho (37 operações, 10 semanas)
Categoria de custo Descrição Impacto
1. Sobreajuste (curva ajustada) EMA(34) + 1,47× ATR funcionava perfeitamente nos dados de 2022-2023, mas estava otimizado ao ruído histórico. As condições de 2024 = outro ruído. -$6,200
2. Slippage (não modelado) Slippage médio de 0,08 % por operação × 25.000 $ de posição média × 37 idas e voltas = 1.480 $ em custos de slippage -$1,480
3. Spread de compra e venda Spread do SPY 0,01 $ × 500 ações em média × 37 operações = 185 $. Opções (usadas para alavancar) spread = 0,03 $ por ação × 100 ações por contrato × 20 contratos × 37 operações = 2.220 $ de custo total de spread -$2,405
4. Corretagens Opções: 0,65 $ por contrato × 20 contratos × 37 operações × 2 (ida e volta) = 962 $ -$962
5. Rejeição de ordens Em 8 operações as ordens limitadas nunca foram executadas (5 ganhadoras perdidas, 3 perdedoras perdidas). Custo de oportunidade líquido: 5 ganhadoras a +1,8R perdidas (-9R) menos 3 perdedoras a -1,3R evitadas (+3,9R) = -5,1R = 2.550 $ -$2,550
6. Viés de antecipação O código do backtest usava close[0] para calcular a entrada e entrava no fechamento daquele mesmo candle (impossível no real). No real a entrada é na abertura do candle seguinte. Uma entrada 0,3 % pior em média = 2.775 $ de degradação -$2,775
7. Atrasos de execução Latência da plataforma + tempo de conferência da ordem = 2 a 8 segundos de atraso. Rompimentos rápidos andavam 0,15 % em média antes da execução = 1.387 $ de slippage por atraso -$1,387
DEGRADAÇÃO TOTAL EM RELAÇÃO AO BACKTEST: -$17,759

As contas:

  • Lucro projetado pelo backtest (10 semanas): +9.600 $
  • Menos os custos de degradação: -17.759 $
  • Resultado esperado no real: -8.159 $
  • Resultado efetivo no real: -8.400 $ — a contabilidade chega a 250 $ do que realmente aconteceu
O que deveria ter sido feito: a validação correta
Passo O que Chris fez (errado) O que se deve fazer (certo)
1. Divisão dos dados Usou todos os dados de 2022-2023 para otimizar Otimizar em 2022 e guardar 2023 para o teste fora da amostra
2. Otimização Testou 15.000 combinações de parâmetros Usar parâmetros padrão (EMA 20/50, stops em 2× ATR). Limitar os testes a menos de 10 variações
3. Modelagem de custos Supôs custos iguais a zero Modelar 0,10 % de slippage + 0,01 $ de spread + 2 $ de corretagem por operação = no mínimo -30 $ por operação
4. Verificação de antecipação Usou o fechamento do mesmo candle para o sinal e a execução Sinal em close[0], execução em open[1] (candle seguinte). Tempo realista.
5. Teste fora da amostra Nunca testou em dados não vistos Testar nos dados de 2023 (intocados). Se o desempenho piorar mais de 30 %, a estratégia está sobreajustada
6. Walk-forward Um único período de backtest Janelas de otimização de 6 meses, teste nos 3 meses seguintes. Repetir avançando. Conferir a consistência.
O teste fora da amostra que Chris deveria ter feito

O método correto:

  1. Período dentro da amostra: Otimizar só nos dados de 2022 (não encostar em 2023)
  2. Encontrar os parâmetros: EMA(34) + 1,47× ATR (mesmo resultado, mas obtido só com 2022)
  3. Congelar os parâmetros: NADA MAIS MUDA. Os parâmetros estão fixados.
  4. Teste fora da amostra: Rodar exatamente esses parâmetros nos dados de 2023
  5. Comparar os resultados: Se o desempenho de 2023 ficar abaixo de 70 % do de 2022, a estratégia está sobreajustada

O que teria acontecido:

Período Esperança Fator de lucro Veredicto
2022 (dentro da amostra) +1.4R 3.1 Desempenho otimizado
2023 (fora da amostra) +0.4R 1.4 ⚠️ 71 % de degradação
Conclusão: A estratégia está gravemente sobreajustada. A expectativa de 2023 é 29 % da de 2022. Com custos realistas (-30 $ por operação = -0,15R), a expectativa líquida fica em +0,25R (mal acima de zero). NÃO COLOCAR EM PRODUÇÃO.

A lição: o backtest de Chris era uma fantasia. Testar 15.000 combinações de parâmetros garante que você vai achar uma que encaixe perfeitamente no ruído histórico. Aquela expectativa «perfeita» de 1,3R era lixo ajustado à curva. Um teste fora da amostra teria revelado isso antes de perder 8.400 $. Backtesting não é achar o melhor desempenho passado, é achar o que vai funcionar daqui para a frente. E isso exige dados não vistos, custos realistas e zero viés de antecipação.

Parte 1: as quatro formas de o backtest mentir

Por que sua estratégia perfeita vai fracassar no real

Vamos começar pela verdade incômoda: se você otimizou uma estratégia para encaixar em dados passados, não achou uma vantagem. Achou ruído.

Ajustar a curva a ruído aleatório

O que é: Otimizar parâmetros até o backtest ficar perfeito

Exemplo:

  • Você testa 100 períodos de EMA diferentes (10, 11, 12… 110)
  • EMA(47) dá 4,2R de expectativa no backtest
  • Você acha que achou o «número mágico»

Realidade: EMA(47) simplesmente encaixou por acaso naquele conjunto de dados. E no teste adiante? Expectativa de -0,8R. Você aprendeu o ruído, não o sinal.

Melhor: Limite a otimização. Use parâmetros padrão. Teste em dados não vistos.

Usar dados do futuro (impossível no real)

O que é: Código que «espia» candles futuros para decidir agora

Exemplo:

if close[0] > high[5]:  # usa os 5 candles FUTUROS
    enter_long()

O problema: No backtesting você tem os dados do futuro. No real, não.

Realidade: Esse código simplesmente não roda no real. Seu backtest está testando uma estratégia que não existe.

Melhor: Use só os dados disponíveis no momento da decisão.

Supor execuções perfeitas a preços perfeitos

Suposição do backtest: «Compro a 100,00 $ exatos»

Realidade: A ordem a mercado executa a 100,12 $ (spread + slippage)

Impacto ao longo de 100 operações:

  • Lucro do backtest: 5.000 $
  • Custo do spread (0,10 $ por operação): -1.000 $
  • Slippage (0,05 $ por operação): -500 $
  • Corretagens (2 $ por operação): -200 $

Realidade: Lucro real = 3.300 $ (34 % menos que o backtest)

Testar só nos sobreviventes

O que é: Fazer backtesting só nas ações que hoje compõem o S&P 500

O problema: Você está deixando de fora mais de 200 ações que saíram do índice ou quebraram

Exemplo:

  • Backtest na lista do S&P 500 de 2024: expectativa de 1,8R, fator de lucro 2,1
  • Mas ao longo desse período você teria ficado comprado em Hertz (quebrou em 2020), em SVB Financial (colapsou em 2023) e em todo outro nome que foi a zero.

Realidade: Sua expectativa deixa de fora as perdas catastróficas das saídas do índice. Expectativa real: -0,2R (um sistema perdedor).

💡 o momento da verdade

Um backtest não é a realidade. É uma simulação. E se a sua simulação embute suposições impossíveis, seus resultados no real também serão impossíveis.

Parte 2: modelar custos realistas

Os custos escondidos que matam estratégias

Isto é o que a maioria dos backtests ignora — e por isso o seu está provavelmente 20-40 % otimista demais:

Passo 1: modelar o spread de compra e venda

O que é: A diferença entre o preço de compra e o de venda

Exemplo:

  • SPY compra: 450,00 $ / venda: 450,01 $ → spread = 0,01 $
  • Você compra: paga 450,01 $ (meio spread = 0,005 $)
  • Você vende: recebe 450,00 $ (meio spread = 0,005 $)

Custo por ida e volta: $0.01

Para 1.000 ações: 0,01 $ × 1.000 = 10 $ por operação

100 operações: 1.000 $ em custos de spread

Passo 2: modelar o slippage

O que é: Diferença entre o preço pretendido e a execução real

Slippage realista conforme as condições:

  • Liquidez normal: 0.01-0.02%
  • Mercados voláteis: 0.05-0.10%
  • Liquidez rala: 0.10-0.30%
  • Posição de tamanho grande: 0.20-0.50%

Suposição conservadora: 0,05 % por operação

Posição de 10.000 $ × 0,05 % = 5 $ de slippage por lado = 10 $ na ida e volta

Passo 3: modelar as corretagens

Exemplo: Interactive Brokers

  • 0,005 $ por ação, mínimo de 1 $
  • 200 ações × 0,005 $ = 1 $ por lado
  • Ida e volta = 2 $

100 operações: 200 $ em corretagens

Passo 4: custo realista total

Por operação (ida e volta):

  • Spread: 10 $
  • Slippage: 10 $
  • Corretagem: 2 $

Total: 22 $ por operação

Se sua estratégia rende 50 $ brutos por operação → 28 $ líquidos (44 % a menos!)

Exemplo de ajuste do backtest

Antes e depois dos custos realistas

Estratégia: 100 operações, 50 $ de lucro médio por operação


Backtest (fantasia):

100 operações × 50 $ = 5.000 $ de lucro


Depois dos custos realistas:

  • Bruto: 5.000 $
  • Spread: -1.000 $
  • Slippage: -1.000 $
  • Corretagens: -200 $

Lucro líquido: 2.800 $ (44 % a menos)

Parte 3: dentro da amostra contra fora da amostra

A única validação que importa

É assim que os profissionais validam uma estratégia:

Divida seus dados em dois períodos.

  1. Dentro da amostra (60-70 %): É aqui que você desenvolve e otimiza sua estratégia
  2. Fora da amostra (30-40 %): Validação em dados NÃO VISTOS

🎯 Exemplo: 6 anos de dados (2018-2024)

Dentro da amostra: 2018-2022 (otimize aqui)

  • Teste parâmetros diferentes
  • Ache as regras de melhor desempenho
  • Refine a lógica de entrada e saída

Fora da amostra: 2023-2024 (valide aqui)

  • Rode a estratégia sem NENHUMA mudança
  • Compare o desempenho com o de dentro da amostra
  • Se for parecido → não está sobreajustada!
  • Se for bem pior → sobreajustada ao ruído de dentro da amostra

Sinais de alerta de sobreajuste

🚩 Indícios de que sua estratégia está ajustada à curva

  • Sharpe acima de 3,0: Bom demais para ser verdade
  • Expectativa acima de 5R: Extremamente raro (confira suas suposições de execução)
  • Só 20-30 operações: Amostra pequena demais (estatisticamente sem sentido)
  • Curva de capital perfeita: Uma linha lisa sem drawdowns (impossível)
  • Testada num único ativo: Provavelmente ajustada àquele regime específico
  • 10 ou mais parâmetros otimizados: Você ajustou o ruído, não o sinal
Parte 4: análise walk-forward

O método profissional de validação

Dentro contra fora da amostra é bom. Walk-forward é melhor.

Como funciona:

📊 O esquema walk-forward

Período 1: Treine em 2018-2019 → teste em 2020

Período 2: Treine em 2019-2020 → teste em 2021

Período 3: Treine em 2020-2021 → teste em 2022

Período 4: Treine em 2021-2022 → teste em 2023


Se for consistente em todos os períodos: Estratégia robusta

Se o desempenho piorar: Sobreajustada ou dependente do regime

🎓 Pontos essenciais

  • Modele custos realistas: Spread, slippage, corretagens (20-40 % menos lucro)
  • Evite o sobreajuste: Limite os parâmetros e teste em vários mercados
  • Dentro contra fora da amostra: Desenvolva em 60-70 %, valide em 30-40 %
  • Teste walk-forward: Confira a consistência ao longo do tempo
  • Sinais de alerta: Sharpe acima de 3,0, expectativa acima de 5R, menos de 30 operações
  • Teste adiante antes do real: Simulado por no mínimo 3 a 6 meses
Exercício prático

🎯 Prática de validação de backtest

Exercício: valide sua estratégia com o detector de sinais de alerta

Pegue sua estratégia atual (ou uma que esteja considerando) e passe-a pela validação:

  1. Faça o backtest em 60 % dos seus dados (dentro da amostra). Anote: operações, expectativa, Sharpe, DD máximo
  2. Identifique os parâmetros usados (EMAs, limiares etc.). Você os otimizou testando vários valores?
  3. Teste nos 40 % restantes (fora da amostra). Compare com o resultado de dentro da amostra.
  4. Use a ficha de validação do modelo (8 categorias, 60 pontos no máximo)
  5. Some sua pontuação: 50-60 = seguir em frente, 40-49 = revisar, abaixo de 40 = descartar
  6. Se a pontuação chegar a 50: opere em simulado de 30 a 60 operações antes de ir para o real

Objetivo: Pegue o ajuste de curva, o viés de antecipação e as suposições irreais ANTES que destruam sua conta real. Melhor descartar uma estratégia ruim no backtesting do que perder dinheiro de verdade.

Testa o que percebeste

🎮 Verificação rápida

P: Você faz o backtest de uma estratégia: expectativa de 5,2R, índice de Sharpe de 4,2, testada em 25 operações, usando EMA(47) porque foi a que deu o melhor resultado depois de testar 100 períodos diferentes. O que está errado?

A) Nada, estratégia excelente!
B) Tudo: amostra pequena demais, Sharpe e expectativa altos demais, EMA(47) está ajustada à curva
C) Só a expectativa, que está alta demais
D) Só a amostra, que está pequena demais
Certo! Três sinais de alerta sérios: (1) só 25 operações = estatisticamente insignificante, (2) Sharpe de 4,2 = suspeitosamente alto (provavelmente sobreajustada), (3) EMA(47) achada testando 100 períodos = ajustada ao ruído. Essa estratégia vai fracassar no real. É preciso: mais de 100 operações, um Sharpe realista (1,5-2,5) e parâmetros padrão.

Você faz o backtest de uma estratégia de reversão à média no SPY de 2010 a 2024. Resultados: expectativa de 2,8R, 68 % de acerto, 120.000 $ de lucro. Os dados incluem apenas os componentes atuais do S&P 500 (as ações que estão no índice hoje). Você vai para o real em 2025 e fracassa. O que deu errado?

A) Nada: as condições de mercado de 2025 mudaram, era imprevisível
B) Viés de sobrevivência: o backtest deixou de fora 30-40 % das ações que saíram do índice ou quebraram entre 2010 e 2024
C) Amostra pequena demais: são precisos mais de 14 anos de dados
D) Expectativa alta demais: 2,8R é irreal para reversão à média
Certo! A armadilha clássica do viés de sobrevivência. Testar nos «componentes atuais do S&P 500» significa que você testou só os VENCEDORES: ações que sobreviveram 14 anos e chegaram ao índice de hoje. Você deixou de fora empresas quebradas, ações retiradas do índice e negócios fracassados (30-40 % do total). São justamente essas ações mortas que teriam disparado suas entradas de reversão à média sem nunca se recuperar. É exatamente isso que transforma a expectativa de 1,8R do exemplo acima num -0,2R de verdade. Solução: use dados point-in-time que incluam TODAS as ações existentes em cada data, inclusive as que saíram do índice depois. O viés de sobrevivência infla os resultados do backtest em 20-50 %.

Você faz um teste walk-forward da sua estratégia: treina em 2018-2020 e testa em 2021 (passa). Treina em 2018-2021 e testa em 2022 (passa). Treina em 2018-2022 e testa em 2023 (passa). Você não modelou o slippage nem as corretagens. Deve operar essa estratégia no real?

A) Sim: passou em todos os testes walk-forward, é uma estratégia robusta
B) Não: é preciso acrescentar custos realistas (0,2-0,4 % de slippage mais corretagens) e testar de novo. Se continuar lucrativa, aí sim.
C) Sim: a validação walk-forward basta, os custos pouco importam
D) Não: são precisos pelo menos 10 períodos walk-forward para validar
Certo! Os testes walk-forward comprovam robustez (ou seja, que não está ajustada a um único período), mas você PRECISA modelar custos realistas antes de operar no real. O slippage (0,1-0,2 % por lado = 0,2-0,4 % na ida e volta) mais as corretagens (2-5 $ por operação) podem reduzir a expectativa em 30-60 %. Uma estratégia com expectativa de 2,5R sem custos pode cair para 1,2R com eles: ainda lucrativa, mas por pouco. O caso do Chris lá em cima é exatamente esse fracasso: um backtest de 1,3R que saiu a -0,45R no real assim que os custos ficaram reais. Acrescente os custos POR ÚLTIMO (depois do walk-forward); se a expectativa ficar acima de 1,5R e o acerto acima de 45 %, opere no real. Nunca pule a modelagem de custos: é a diferença entre o lucro e a dor.

No backtesting, a perfeição é suspeita. O realismo é a vantagem. Modele os custos, evite o sobreajuste, teste adiante — ou fracasse no real.

Aulas relacionadas

Intermediário #34

Dominar o diário de trading

Acompanhe o desempenho no real e compare com os resultados do backtest.

Ler a aula →
Iniciante #9

Dimensionamento da posição

Aplique um dimensionamento correto nos backtests, para resultados realistas.

Ler a aula →
Intermédio #30

Reconhecimento de regime

Teste sua estratégia em todos os regimes para verificar a robustez.

Ler a aula →

⏭️ A seguir

Lição #33: gestão avançada de risco — os modelos profissionais — Aprenda o critério de Kelly, o dimensionamento dinâmico e os protocolos de drawdown.

Apenas para fins educativos. Negociar envolve risco substancial de perda. Resultados passados não garantem resultados futuros.

💬 Discussão (0 comentários)

0/1000

A carregar comentários…

← Aula anterior Aula seguinte →

Pronto para operar com a Signal Pilot?

Põe a tua formação em prática com indicadores profissionais e ferramentas de análise de mercado em tempo real.

Voltar à Signal Pilot →
Apenas para fins educativos. Negociar envolve risco substancial de perda. Não é aconselhamento financeiro. Resultados passados não garantem resultados futuros.