Backtesting em Python
As armadilhas que invalidam backtests
5 min
A maioria dos backtests impressionantes está errada. As razões são conhecidas, e evitá-las é grande parte da habilidade.
Viés de look-ahead
Usar informação que não estaria disponível no momento da decisão. O caso clássico: decidir comprar no fechamento de hoje usando a máxima de hoje — que você só conhece depois que a sessão termina. Mais sutil ainda: ajustar um scaler ou indicador no conjunto de dados inteiro antes de dividi-lo. Se qualquer dado futuro vazar para uma decisão passada, o backtest é ficção.
Viés de sobrevivência
Testar apenas em instrumentos que ainda existem hoje. Fazer backtest de uma estratégia de ações nos membros atuais de um índice ignora toda empresa que faliu ou foi deslistada — exatamente os perdedores que sua estratégia teria carregado. Os retornos parecem bem melhores do que a realidade.
Sobreajuste (curve-fitting)
Ajustar parâmetros até a estratégia encaixar perfeitamente no ruído histórico. Com parâmetros suficientes você consegue encaixar qualquer passado — e não prever futuro nenhum. Uma estratégia com doze parâmetros otimizados que parece impecável dentro da amostra é a armadilha mais comum do algo trading de varejo.
Custos e slippage
Ignorar o custo real de operar. Toda operação paga o spread, possivelmente uma comissão, e sofre slippage (executar a um preço pior que o esperado, especialmente em stops e em mercados rápidos). Uma estratégia que opera muito pode ser absurdamente lucrativa antes dos custos e perdedora garantida depois deles. Sempre modele os custos, e os modele de forma pessimista.
A defesa
Reserve dados fora da amostra (out-of-sample) que o modelo nunca vê durante o desenvolvimento, prefira menos parâmetros, teste em múltiplos instrumentos e períodos, e assuma que seu resultado no mundo real será pior que o backtest. Se não for, desconfie.
Este conteúdo tem finalidade exclusivamente educacional e informativa e não constitui recomendação de investimento, consultoria financeira, tributária ou jurídica. Operar e investir envolvem risco, incluindo a possível perda de capital. Qualquer desempenho exibido por ferramentas de terceiros é hipotético e não promessa de resultado futuro. Faça sua própria análise e considere orientação profissional antes de qualquer decisão.