Sharpe Deflacionado: Por Que Seu Backtest Está Inflado por Múltiplos Testes

Testar muitas estrategias infla o Sharpe por acaso. O Sharpe deflacionado e as correcoes de multiplos testes separam descoberta real de fantasma estatistico.

Resposta rápida: se você testa muitas estratégias (ou ajusta muitos parâmetros), algumas vão parecer excelentes por puro acaso. O Sharpe que aparece no backtest está inflado pelo número de tentativas — o melhor de N sorteios é, em média, maior que zero mesmo quando nenhuma estratégia tem edge. O Sharpe Deflacionado (Deflated Sharpe Ratio, DSR) corrige isso, perguntando: “esse resultado sobreviveria se eu descontasse todas as vezes que tentei, mais a assimetria e as caudas dos retornos?”. Quase sempre, não sobrevive.

O backtesting tem um inimigo silencioso que não é o overfitting clássico de um único modelo — é o problema dos múltiplos testes (multiple testing / data-snooping). Ele engana até quem é cuidadoso, porque o viés não está em nenhuma estratégia isolada, e sim no processo de selecionar a melhor entre muitas. Esta é a versão quantitativa da crise de replicação: Harvey, Liu e Zhu (2016) documentaram pelo menos 316 “fatores” publicados que prometiam prever retornos de ações, e argumentaram que a maioria não sobreviveria a um teste estatístico honesto.

O problema dos múltiplos testes

Imagine testar 100 estratégias geradas aleatoriamente — sem nenhum edge real. Por puro acaso, algumas vão ter curvas de capital lindas e Sharpe alto no período testado. Se você escolher a melhor e reportar o Sharpe dela como se fosse a única que tentou, está mentindo para si mesmo. O ponto crucial é que o viés é mecânico: você está reportando o máximo de uma amostra, e o máximo de N sorteios cresce com N mesmo quando a média verdadeira de cada sorteio é zero.

Bailey e López de Prado (2014), no artigo The Deflated Sharpe Ratio: Correcting for Selection Bias, Backtest Overfitting and Non-Normality, formalizaram exatamente esse fenômeno. Eles separam duas fontes de inflação que andam juntas: (1) o viés de seleção sob múltiplos testes — escolher o melhor de muitos — e (2) a não-normalidade dos retornos (assimetria e caudas gordas), que quebra a tradução ingênua de Sharpe para significância estatística. O DSR ataca as duas de uma vez.

Curva mostrando o Sharpe maximo por acaso crescendo com o numero de tentativas e cruzando o limiar ingenuo

Por que o Sharpe “normal” mente

O Sharpe ratio comum assume que você testou uma estratégia. Quanto mais coisas você testa, maior o Sharpe máximo que vai encontrar só por sorte — e esse máximo cresce de forma previsível. Esse é o conteúdo do False Strategy Theorem de Bailey e López de Prado: sob a hipótese nula (nenhuma estratégia tem habilidade), o Sharpe esperado da melhor de N tentativas independentes não é zero, e sim:

\displaystyle E[\max SR_n] \approx \sqrt{V[\hat{SR}_n]} \left( (1-\gamma)\,\Phi^{-1}\!\left[1-\tfrac{1}{N}\right] + \gamma\,\Phi^{-1}\!\left[1-\tfrac{1}{N e}\right] \right)

Onde V[\hat{SR}_n] é a variância dos Sharpes estimados entre as tentativas, \gamma \approx 0{,}5772 é a constante de Euler–Mascheroni, e \approx 2{,}718, \Phi^{-1} é o quantil da normal padrão e N é o número de tentativas independentes. A intuição: esse valor é o limiar honesto. Um Sharpe que não supera esse máquina-esperada-por-acaso não é evidência de edge — é o que se esperaria de ruído depois de N apostas. E note que ele cresce com N: dobrar o número de testes empurra o limiar para cima. Um t-stat que pareceria significativo num único teste deixa de ser quando você corrige pelo número de tentativas.

O Sharpe Deflacionado (DSR), passo a passo

O DSR é, na essência, o Probabilistic Sharpe Ratio (PSR) avaliado contra esse limiar SR_0 = E[\max SR_n] em vez de contra zero. Primeiro, o PSR — que já corrige por amostra, assimetria e curtose — responde “qual a probabilidade de o Sharpe verdadeiro estar acima de um benchmark SR^*?”:

\displaystyle PSR(SR^*) = \Phi\!\left( \frac{(\hat{SR}-SR^*)\,\sqrt{T-1}}{\sqrt{1 - \hat{\gamma}_3\,\hat{SR} + \tfrac{\hat{\gamma}_4-1}{4}\,\hat{SR}^{2}}} \right)

Aqui \hat{SR} é o Sharpe observado (não anualizado), T o número de observações, \hat{\gamma}_3 a assimetria (skewness) e \hat{\gamma}_4 a curtose dos retornos, e \Phi a CDF normal padrão. O Deflated Sharpe Ratio simplesmente troca o benchmark zero pelo limiar do False Strategy Theorem:

\displaystyle DSR = \Phi\!\left( \frac{(\hat{SR}-SR_0)\,\sqrt{T-1}}{\sqrt{1 - \hat{\gamma}_3\,SR_0 + \tfrac{\hat{\gamma}_4-1}{4}\,SR_0^{2}}} \right)

Lê-se assim: o DSR é a probabilidade de que o Sharpe observado supere o melhor que se esperaria por puro acaso, dado quantas vezes você tentou e o formato (assimetria/caudas) dos retornos. Na prática, ele converte o “Sharpe bonito” num nível de confiança honesto — costuma-se exigir DSR > 0,95 para tratar a descoberta como real. Um Sharpe de 2,0 obtido após testar 50 variações pode ter DSR próximo de zero — indistinguível de sorte. A lição se conecta com o que já discutimos sobre o índice de Sharpe: o número sozinho não conta a história.

Barras comparando Sharpe reportado 2,0 com Sharpe deflacionado proximo de 0,3

O papel da não-normalidade (skew e curtose)

O termo no denominador do PSR/DSR é onde a forma da distribuição entra. Estratégias de trading raramente têm retornos normais: grids e martingales geram assimetria negativa (muitos ganhos pequenos, perdas raras e grandes) e curtose alta (caudas gordas). O denominador mostra o efeito direto: assimetria negativa (\hat{\gamma}_3 < 0[/katex]) <em>aumenta</em> a variância do estimador de Sharpe (porque o termo [katex]-\hat{\gamma}_3 SR_0 vira positivo), e curtose alta também. Maior denominador → menor DSR. Em outras palavras: dois robôs com o mesmo Sharpe não têm a mesma confiança se um deles tem cauda esquerda gorda. O Sharpe ingênuo trata os dois como iguais; o DSR penaliza o frágil. É por isso que controlar a cauda — e não só a média/variância — é o que separa redução de risco real de troca de risco disfarçada.

Correção de múltiplos testes e o limiar t > 3

Quando você testa N hipóteses, precisa de correções estatísticas para não confundir sorte com sinal. As três abordagens clássicas:

  • Bonferroni: divide o nível de significância pelo número de testes (o mais conservador; trata todos os testes como independentes).
  • Holm: versão sequencial de Bonferroni, uniformemente mais poderosa e ainda controlando o erro familywise.
  • FDR (False Discovery Rate, Benjamini–Hochberg): controla a proporção de falsas descobertas entre as rejeitadas, menos rígido que Bonferroni.

Aplicando essas correções ao histórico de fatores publicados, Harvey, Liu e Zhu (2016) chegaram à conclusão que virou regra de bolso da área: dado o volume de testes na literatura, um novo fator só deveria ser levado a sério com t-stat acima de ~3,0 — não os 2,0 convencionais. Traduzindo para o trader: o seu "significativo a 95%" de um teste isolado é otimista demais depois de centenas de tentativas suas e da comunidade inteira.

O haircut do Sharpe não é fixo

Um erro comum é aplicar um "desconto de 50%" no Sharpe de qualquer backtest. Harvey e Liu (2015), em Backtesting, mostraram que o haircut correto por múltiplos testes é não-linear: Sharpes genuinamente altos sofrem corte pequeno, enquanto Sharpes marginais sofrem corte severo — exatamente porque é muito mais provável que um resultado medíocre tenha vindo de sorte entre muitas tentativas. Eles transformam o Sharpe num t-ratio, recalculam o p-value sob múltiplos testes e devolvem o Sharpe "haircut". Nunca use um haircut fixo: o desconto certo depende de quão forte é o resultado e de quantas vezes você tentou.

Métrica O que corrige Fonte
PSR Amostra curta, assimetria, curtose (1 teste) Bailey–LdP 2012
DSR Tudo do PSR + nº de tentativas N Bailey–LdP 2014
Haircut t > 3 Limiar de significância sob N testes Harvey–Liu–Zhu 2016
PBO Prob. de o melhor IS ficar abaixo da mediana OOS Bailey et al. 2017

Quantos testes você realmente fez?

Aqui está a parte traiçoeira: a maioria dos testes é oculta. Cada vez que você muda um parâmetro, troca um filtro, ajusta uma janela ou "dá mais uma olhada", é uma tentativa. Esses testes informais não entram na sua contagem, mas inflam o resultado do mesmo jeito. E há um detalhe técnico no False Strategy Theorem: o N que importa é o número de tentativas efetivamente independentes. Se você roda 50 variações da mesma estratégia, elas são altamente correlacionadas — o N efetivo pode ser 2 ou 3, não 50. Estimar esse N efetivo (por clustering das curvas de capital, por exemplo) é parte de aplicar o DSR de forma honesta: contar 50 quando há só 3 ideias distintas superdeflaciona; contar 1 quando você testou 50 subdeflaciona.

Por isso a razão observações/parâmetros importa: abaixo de ~10:1 é suspeito. E por isso a exploração de parâmetros deve ser feita por heatmap (procurando um platô largo de robustez) e não por cherry-picking do melhor ponto — um pico estreito é a assinatura visual do overfitting, tema que aprofundamos em graus de liberdade e overfitting.

Red flags de Sharpe inflado

  • Sharpe > 3 num backtest — quase sempre overfitting, não genialidade.
  • P&L concentrado em 1-2 trades (ex.: 80% do lucro) — frágil e com curtose alta, que o DSR penaliza.
  • Pico, não platô — o melhor parâmetro é dramaticamente superior aos vizinhos.
  • Assimetria negativa forte — típico de grid/martingale; o Sharpe ingênuo esconde a cauda.
  • Muitos filtros interdependentes necessários para "funcionar".

Na prática: validando um robô

Como aplicar tudo isso sem virar acadêmico:

  • 1. Registre o número de tentativas. Mantenha um log honesto de quantas variações, parâmetros e filtros você testou — formais e informais. Sem esse N, o DSR é chute.
  • 2. Deflacione. Calcule o limiar SR_0 do False Strategy Theorem com o seu N efetivo e rode o DSR. Exija DSR > 0,95 antes de confiar no Sharpe.
  • 3. Combine com PBO. O DSR mede inflação de seleção; a probabilidade de overfitting do backtest (PBO) mede a degradação esperada do melhor candidato fora da amostra. São complementares — use os dois.
  • 4. Bootstrap e walk-forward. O IC de 95% do Sharpe (por walk-forward e bootstrap de bloco) deve excluir zero.
  • 5. Mecanismo primeiro. Sempre comece pela pergunta: se você não explica o edge em uma frase, provavelmente não há edge.

Conclusão

O Sharpe que você vê não é o Sharpe que você tem. Cada tentativa adicional — formal ou informal — empresta um pouco de sorte ao resultado final, e cada cauda gorda esconde um risco que a média não mostra. O Sharpe Deflacionado encapsula as duas correções numa única probabilidade honesta; o limiar t > 3 de Harvey-Liu-Zhu e o haircut não-linear de Harvey-Liu dão a régua certa; o PBO fecha o cerco medindo a degradação esperada. Não é burocracia acadêmica: é o que separa uma descoberta real de um fantasma estatístico bem-vestido.

O que é o Sharpe Deflacionado em uma frase?

É o Sharpe ajustado para descontar o efeito de ter testado muitas estratégias e a assimetria/curtose dos retornos — ele responde qual a probabilidade de o resultado ser real, e não o melhor de muitos sorteios de ruído. Tecnicamente, é o PSR avaliado contra o Sharpe máximo esperado por acaso (False Strategy Theorem) em vez de contra zero.

Quantas estratégias eu "testei" de verdade?

Muito mais do que você acha. Some toda mudança de parâmetro, filtro, janela e cada "nova olhada" nos dados. Esses testes ocultos contam. Mas atenção ao N efetivo: 50 variações correlacionadas da mesma ideia podem valer apenas 2-3 tentativas independentes. Conte ideias distintas, não cliques.

Qual t-stat devo exigir de um sinal?

Dado o volume de testes típico, a recomendação de Harvey-Liu-Zhu (2016) é exigir t-stat acima de ~3,0, em vez dos 2,0 convencionais — conclusão a que chegaram corrigindo 316 fatores publicados por múltiplos testes. Quanto mais coisas você testou, maior o limiar honesto.

Por que assimetria e curtose entram na fórmula?

Porque o Sharpe ingênuo assume retornos normais. Estratégias de trading (especialmente grid/martingale) têm assimetria negativa e caudas gordas, que aumentam a incerteza do estimador de Sharpe. O termo de não-normalidade no denominador do PSR/DSR reduz a confiança proporcionalmente — dois robôs com Sharpe idêntico recebem notas diferentes se um tem cauda esquerda pior.

Sharpe alto no backtest é bom sinal?

Acima de ~3, é mais provável que seja overfitting do que talento. Sharpes muito altos em backtest costumam desaparecer ao vivo. Desconfie do número bonito e olhe robustez, mecanismo, o Sharpe Deflacionado e a probabilidade de overfitting (PBO).

Referências

Presente para Leitores: Robô de Gradiente Linear Gratuito

Estou liberando o acesso ao meu setup pessoal de Gradiente Linear sem custo nenhum. É só clicar e me pedir o arquivo.

Quero meu Robô Gratuito
🔒 Acesso Direto no WhatsApp
⚠️ Aviso de risco: O conteúdo do Invista Já é educacional e informativo sobre algotrading e estratégias quantitativas e não constitui recomendação ou consultoria de investimento, nem oferta ou solicitação de compra ou venda de qualquer ativo. Operações no mercado financeiro envolvem risco de perda, inclusive do capital investido, e resultados passados não garantem resultados futuros. Avalie seu perfil de risco e, se necessário, consulte um profissional certificado antes de investir.
Flavio Araújo
Flavio Araújo

Engenheiro com MBA em Mercado de Capitais e Derivativos. Atua há mais de 10 anos no Mercado Financeiro, com 6 anos dedicados ao Algotrading e estratégias quantitativas. Especialista em validação de robustez e automação de investimentos.

Artigos: 158