1/N supera Markowitz?
Réplica do experimento de DeMiguel, Garlappi & Uppal (2009, RFS) — “Optimal Versus Naive Diversification: How Inefficient Is the 1/N Portfolio Strategy?” — em que 14 modelos de otimização falham em superar consistentemente a regra ingênua de peso igual fora-da-amostra. Aqui o mesmo teste é rodado sobre o universo brasileiro, com janela e conjunto de ativos configuráveis, comparando contra o pipeline Markowitz do tab /markowitz — baseado em Markowitz (1952), “Portfolio Selection”, J. Finance.
O enquadramento “ilusão de skill” é de Kahneman (2011), Thinking, Fast and Slow — Prêmio Nobel de Ciências Econômicas 2002 por integrar achados da psicologia à teoria econômica, em particular sobre julgamento e tomada de decisão sob incerteza.
Pais fundadores também premiados pelo Nobel: Markowitz (1990) · Sharpe (1990) · Fama (2013) — todos pelo trabalho pioneiro em economia financeira que sustenta (e desafia) a otimização de média-variância.
A carteira ingênua 1/Naloca o mesmo peso em todos os N ativos do universo. Nenhuma estimativa, nenhuma otimização — só uma divisão igual. É o “macaco com dardos informado”:
O backtest walk-forward, espinha dorsal de DeMiguel-Garlappi-Uppal (2009), repete o seguinte ciclo: a cada rebalanceamento t, estima-se μ̂ e Σ̂ na janela de treino anterior; resolve-se a tangência de Markowitz sob esses estimadores; os pesos resultantes ficam congelados durante a janela de teste seguinte:
O retorno realizado da carteira na janela de teste é simplesmente o produto interno entre os pesos congelados e o vetor de retornos simples observado:
Duas métricas além de retorno e Sharpe captam a fragilidade do Markowitz: turnover e HHI. Turnover anualizado mede quanto da carteira é girada por ano (1/N gira ≈ 0 por construção; Markowitz costuma girar 1× a 3×):
HHI (Herfindahl-Hirschman) mede concentração: 1/N atinge o mínimo (= 1/N), uma única ação atinge o máximo (= 1):
A tese empírica de DGU é que o ganho teórico do Markowitz sobre o 1/N é menor que o erro de estimativa em μ̂ e Σ̂. O Sharpe fora-da-amostra do Markowitz frequentemente fica abaixo do 1/N mesmo antes de descontar os custos de transação implícitos no turnover. Em 14 datasets clássicos, nenhuma das 14 variantes testadas bate o 1/N de forma robusta.
Janela rolante: treina μ̂ e Σ̂ no histórico anterior, fixa pesos, segura por uma janela de teste, rola adiante. Mesma pipeline de shrinkage do tab Markowitz (Ledoit-Wolf · Jorion · macro-anchor).
Capital de R$ 1 rebalanceado a cada 1 trim. sob cada estratégia.
Diferença de riqueza acumulada. Acima de zero ⇒ Markowitz na frente; abaixo ⇒ 1/N ingênuo na frente. É o gráfico-chave de DeMiguel-Garlappi-Uppal: em quase todos os universos a curva fica sob zero a maior parte do tempo.
Cada ponto = um período de teste. Eixo X: retorno do 1/N naquele trimestre. Eixo Y: retorno do Markowitz. Pontos acima da diagonal ⇒ Markowitz venceu no período. Frequência de vitórias do Markowitz: 56% (9 períodos).
Quanto da carteira é girada por ano. 1/N gira ≈ 0% (só rebalanceia para voltar a 1/N). Markowitz costuma girar muito porque μ̂ é instável — a maior parte do giro é ruído de estimativa, e os custos de transação corroem o pequeno ganho teórico.
| Markowitz | 0,83× a.a. |
| 1/N | 0,00× a.a. |
HHI = Σ wᵢ². 1/N tem HHI = 1/N — diversificação máxima. Markowitz long-only tende a empilhar peso em poucos vencedores in-sample, o que sobe HHI e a vol idiossincrática.
| Markowitz | 0,22 |
| 1/N | 0,03 |
Cinco números extraídos da janela rolante deste experimento (treino 756d / teste 63d × 9 rebalanceamentos) com leitura em prosa. DeMiguel-Garlappi-Uppal (2009) é vindicado quando o 1/N entrega Sharpe maior que Markowitz após custos.
Frequência de vitórias por período
Markowitz superou o 1/N em 56% dos 9 períodos de teste. Vence a maioria, mas isso por si só não basta — basta uma derrota grande para anular várias vitórias pequenas (assimetria de payoff).
Sharpe anualizado — Markowitz vs 1/N
Markowitz: 0,22 · 1/N: -0,10. Diferença = +0,32 (Markowitz à frente). Em retorno: +5,88% a.a.; em vol: 2,68%; em max DD: ++6,40%.
O preço de chasing μ̂: turnover e HHI
Markowitz gira 0,83× a.a., enquanto 1/N gira 0,00× a.a. — Markowitz tem 83× mais turnover. HHI médio da Markowitz é 6.5× o do 1/N, ou seja, concentra peso em menos da metade dos ativos — empilhando posições no que μ̂ exagera. É exatamente o mecanismo de “error maximization” de Michaud (1989).
Sharpe após custos de transação estimados
A 0,20% de custo por turnover one-way (estimativa conservadora para corretagem brasileira retail all-in), Markowitz perde ≈ 0,17% a.a. de retorno; 1/N perde ≈ 0,00% a.a.. Sharpe ajustado (delta MV − 1/N): +0,31 (vs +0,32 sem custos). Markowitz mantém a vantagem mesmo após custos de transação — caso raro em DGU.
O custo de 0,20% por turnover é uma estimativa aproximada (corretagem zero + impostos + spread + custódia + slippage de execução em ativos menos líquidos da B3). Reduções recentes em corretagem retail trouxeram esse número para próximo de 0,10%; gestores institucionais conseguem ≈ 0,05%; HFTs operam com custos efetivamente nulos. O ponto qualitativo — o ganho teórico do Markowitz é da mesma ordem do custo de implementação — se mantém em qualquer cenário razoável.
O mecanismo: por que μ̂ amostral é tão ruim
O erro padrão da média amostral é σ̂ / √T. Para uma ação brasileira típica com vol anualizada de 30% e janela de 5 anos (T = 1.260 dias), isso dá ±13 pontos percentuais de desvio padrão em μ̂ a.a. — uma incerteza maior que o prêmio de risco histórico inteiro do mercado. Best & Grauer (1991, FAJ) mostraram que mudanças de 25 pontos básicos em μ̂ podem inverter completamente a carteira ótima. O Markowitz puro é um amplificador de ruído por design — a otimização escolhe sempre o ativo com μ̂ mais inflado por sorte.
O argumento matemático — DGU (2009)
DeMiguel-Garlappi-Uppal pegaram 14 datasets clássicos (S&P sectors, MSCI countries, Fama-French) e rodaram 14 modelos de otimização (sample MV, min-var, Bayes-Stein, Black-Litterman, kernel-shrinkage) contra o ingênuo 1/N. Nenhum venceu de forma robusta após custos. A interpretação formal: para um universo de N ativos, o tamanho de amostra T necessário para que a otimização supere 1/N out-of-sample é T > 3.000 anos para N = 25 ativos (sob suas premissas). É um cálculo prático: μ̂ é estatisticamente frágil demais para experência humana de uma vida.
O argumento comportamental — Kahneman (1984/2011)
Kahneman recebeu, em 1984, dados de uma firma de wealth management com 25 anos de avaliações de 28 consultores. Calculou a correlação ano-a-ano dos rankings de retorno: média 0,01 sobre 378 pares. Em Thinking, Fast and Slow (2011) batizou o resultado de The Illusion of Skill: o setor financeiro é pago para entregar persistência que estatisticamente não existe. Detalhe na página /kahneman.
Por que 1/N é tão competitivo
Três motivos compostos: (1) 1/N tem turnover ≈ 0 — não paga corretagem nem spread; (2) HHI = 1/N mantém o risco idiossincrático baixo; (3) μ̂ não entra na decisão, então erro de estimativa em μ é zero. O custo: 1/N ignora informação relevante (correlações, vols distintas). Mas como essa informação é imperfeita, o ganho teórico do Markowitz é menor que a perda prática do erro de estimativa. Michaud (1989, FAJ) chamou isso de error maximization: o otimizador amplifica os erros porque os pesos ótimos são não-lineares em μ̂.
Quando Markowitz vence 1/N
Três regimes onde a otimização adiciona valor: (a) universos muito grandes (N > 100) com pares fortemente correlacionados — 1/N concentra risco em fatores latentes; (b) janelas longas e estáveis (10+ anos sem regime shift) em que μ̂ é menos ruidoso; (c) quando o investidor tem views reais sobre alguns ativos — Black-Litterman (1992) é o framework canônico para incorporá-las sem voltar ao Markowitz puro (ver tab /black-litterman).
Alternativas ao trade-off clássico
Duas ramificações modernas: (i) Paridade de risco— Maillard, Roncalli & Teïletche (2010), o “1/N de variância”: pesos tais que cada ativo contribua igualmente para σ²_p, sem usar μ̂. Ver tab /paridade. (ii) EMH passiva — Bogle (1976), Malkiel (1973), Fama (Nobel 2013): se mercados são eficientes, qualquer otimização ativa é ruído, e a carteira de mercado domina. É o limite teórico do argumento DGU.
- • Universo padrão: 30maiores constituintes do IBOV (por peso de mercado) com histórico coterminal completo. A função
tightenUniverseForHistoryauto-derruba tickers com histórico curto (IPOs recentes, fusões) até que a janela coterminal cubra trainDays + testDays — mostrado em texto acima dos controles. - • Pipeline Markowitz (idêntico ao tab /markowitz): (1) Σ Ledoit-Wolf (2004) com alvo de correlação constante e intensidade ótima δ* data-driven; (2) μ̂_log anualizada com Jensen correction; (3) Jorion (1986) shrinkage toward grand mean; (4) macro-anchor toward rf + ERP com α data-driven (≈ 0,42 em 5y); (5) teto por ativo em rf + 3·ERP ≈ 31%. Long-only via active-set greedy. Sem isso a fronteira mostraria μ̂ de 60-100% a.a.
- • Sem look-ahead: o estimador de μ̂/Σ̂ usa estritamenteo histórico anterior ao início do período de teste; nenhum dado do futuro contamina a decisão. Cada rebalanceamento é uma walk-forwardindependente. A carteira é mantida fixa durante a janela de teste — sem rebalanceamento intra-período, sem look-back-bias.
- • Retornos compostos: para cada período de teste, calcula-se o retorno cumulativo (log) de cada ticker, converte-se para simples (e^cumLog − 1), pondera-se pelos pesos da carteira, e converte-se de volta para log. Isso dá o retorno simples real da carteira, não uma aproximação via retorno log das médias.
- • Benchmark B3 (cesta IBOV): aproximação com pesos fixos no últimosnapshot do índice. Não captura: (a) rebalanceamentos trimestrais do IBOV; (b) IPOs/deslistagens durante a janela; (c) correções de Free-Float Adjustment. É uma referência de mercado, não uma replicação fiel do índice. Para uma replicação estrita, use ETF BOVA11 como proxy direto.
- • Turnover anualizado one-way: Tano = (1/(T−1)) Σ_t (½ Σ_i |wi,t − wi,t−1|) × νano. O fator ½ é a convenção “one-way” (uma rotação 50%→50% conta como 50% de turnover, não 100%). νano= 252 / testDays é a frequência anualizada de rebalanceamento.
- • HHI médio: HHI = Σ_i w_i², média sobre rebalanceamentos. Mínimo teórico = 1/N (atingido por 1/N por definição); máximo = 1 (carteira em um único ativo). HHI 0,2 ≈ “diversificada em 5 ativos equivalentes”; HHI 0,5 ≈ “concentrada em 2 ativos”.
- • Custos de transação estimados: 0,20% por turnover one-way no painel de leitura. Decomposição: ≈ 0,03% corretagem + 0,03% emolumentos + 0,05% IRRF curto + 0,05% spread típico + 0,04% slippage em ativos menos líquidos. Investidores institucionais conseguem ≈ 0,05%; HFTs operam quase zero. Reduza para 0,10% se quiser modelar uma corretora moderna sem custos fixos.
- • Reprodutibilidade: todo o código do backtest está em
app/lib/backtest.tseapp/lib/universe.ts, com testes embacktest.test.ts(13 cenários, de garantia de turnover-zero do 1/N até consistência cumulativo-vs-período). Seed determinística para amostragens; mesmas estatísticas em todo reload.