r=0,77 não significa o que você pensa: levels vs returns
A correlação STI 500 × players CS2 é 0,82 em levels, 0,26 em returns, ~0 nos últimos 12 meses. Os três são verdadeiros — mas significam coisas diferentes.
Quando publiquei a primeira versão da metodologia STI, escrevi algo que acabou bastante citado: "correlação r=0,77 com jogadores CS2 (2020-2026)". É um número bonito — sugere que o mercado de skins acompanha a saúde do jogo. Vários produtos de análise de skins citam correlação desse tipo como prova de que o mercado é "real".
Esse post é pra ser honesto sobre o que esse número significa. E o que ele não significa.
TL;DR
- r=0,82 em levels (raw index value vs raw player count) — mede alinhamento de trajetória de longo prazo
- r=0,26 em returns (mudanças mês-a-mês) — mede co-movement real, estatisticamente mais defensável
- r ≈ 0 nos últimos 12 meses — mercado de skins desenvolveu dinâmica própria pós-CS2 launch
- Todos os três são verdadeiros. Só que significam coisas diferentes.
O problema de correlação em séries trending
Quando duas séries crescem monotonamente ao longo do tempo, correlação entre elas tende ao alto. É o clássico caso de spurious correlation: duas variáveis que crescem juntas não precisam ter relação causal.
O mercado de skins CS2 cresceu muito entre 2020 e 2026. A base de jogadores também cresceu muito. Correlacionar os valores absolutos (levels) gera r = 0,82. Cada 1% de aumento no player count corresponde a ~1% de aumento no STI 500 — em média, ao longo de 6 anos.
Isso é um dado real. Não é fraude. Mas implica causação? Não. É perfeitamente compatível com:
-
Mercado de skins cresceu por outros motivos (CS2 launch, crypto boom, novas cases mais escassas) + player count cresceu por motivos parcialmente separados. Ambos aconteceram no mesmo período sem que um cause o outro.
-
Ambos são funções do mesmo fator subjacente (engagement em gaming como asset class, macro de risk appetite, etc.). Neste caso há relação, mas não direta.
O que returns correlation revela
Pra filtrar o trend e medir co-movement genuíno, você usa returns correlation — quanto o STI 500 muda um mês quando o player count muda no mesmo mês. Taxas de variação, não valores absolutos.
Rodando a mesma data, essa correlação cai pra r = 0,26.
Interpretação em texto simples:
- Se player count sobe 5% num mês, em média o STI 500 sobe ~1,3% no mesmo mês (5 × 0,26 ≈ 1,3)
- Muita variação em volta dessa média — outros fatores dominam
- Player count não é preditor forte de mudanças mensais
É uma relação real. Mas muito mais fraca do que o r=0,77 levels sugere.
E os últimos 12 meses?
Olhando só pros últimos 12 meses (rolling window):
r ≈ 0
Zero. Essencialmente nenhuma relação entre mudanças no player count e mudanças no mercado de skins no período mais recente.
Por que?
Algumas hipóteses compatíveis:
-
CS2 maturity: lançamento foi em 2023. Pós-2024, base de players estabilizou em ~1M-1,5M diários. Mudanças mensais são ruído de sazonalidade, não crescimento real.
-
Mercado de skins descolou: cases novas (Kilowatt, Fracture, etc.) + community drama + updates ao drop pool criaram drivers que independem do player count.
-
Asset class maturing: skins viraram asset class com própria dinâmica — similar a como Bitcoin descolou de "narrativa inicial de meio de pagamento" e passou a ter drivers macroeconômicos próprios.
Literatura acadêmica recente converge com essa tese. O paper da Frontiers in AI (Nov/2025) que analisou 12.000 skins CS2 observa explicitamente:
Skins develop dynamics linked to game lifecycle AND periodic updates, not direct player count mapping.
Nossa observação de r≈0 rolling 12m corrobora a literatura.
Por que eu mudei o jeito de reportar
A versão anterior da /metodologia falava apenas "r=0,77". Agora fala três números:
- Levels: r=0,82
- Returns: r=0,26
- Rolling 12m: r≈0
Com interpretação explícita de cada um. Por que?
Porque reviewer técnico externo (quant, analyst, academic) pega essa diferença em 10 minutos. Se o produto publica só r=0,77 sem nuance, parece ingênuo ou desonesto. Nenhum dos dois sinaliza rigor. Publicar os três com context é feature pro leitor sofisticado, não fraqueza.
O que isso significa pra você
Se você aloca em skins pra hedging
Boa notícia: skins têm dinâmica própria. Não é só "função de gaming". Diversificação dentro do universo crypto+alternativos é mais real do que player count sugere.
Se você usa SkinTracker como sinal
Use o player count como macro indicator direcional (sobe junto no longo prazo), não como preditor mensal. Se player count cair 30% num mês, não espere STI 500 cair 30% — r=0,26 sugere ~8% movimento, e mesmo isso com alta variância.
Se você é reviewer técnico
Nossa metodologia pública computa 8 configurations diferentes — níveis (raw), retornos mensais, janela móvel 12m, com e sem lag, com e sem de-trending. A matriz completa de configs e notas de audit está documentada na página de metodologia; detalhes adicionais de implementação disponíveis sob solicitação via /sobre.
Uma nota sobre honestidade editorial
Produtos financeiros tradicionais escondem nuances como essa. É mais fácil vender "correlação r=0,77, mercado confiável" do que "correlação depende de como você mede, e honestamente últimos 12 meses ela caiu pra zero".
Aposta editorial: num mercado onde a maior parte da análise é fórum post + copy-paste de corretora, transparência metodológica é diferenciação real. Reviewer técnico sério respeita mais um produto que publica três números com interpretação do que um que esconde atrás de um único número polido.
Qualquer crítica ou correção é bem-vinda — contato direto em /sobre.
Apêndice técnico — os 8 configs que rodamos
Pra quem quiser o detalhe completo, este é o output de
scripts/correlation-sensitivity.ts contra o backup de produção
backup-2026-04-23:
| Config | r | Interpretação |
|---|---|---|
| LEVELS (raw series) | 0,82 | Trajetória longo prazo |
| LOG_LEVELS | 0,82 | Idem, log-scale |
| DEFAULT returns (arithmetic monthly) | 0,26 | Co-movement mensal |
| LOG_RETURNS | 0,25 | Log returns |
| NO_OUTLIERS (|z| < 3) | 0,23 | Filtrando major events |
| POST_2024 returns | 0,31 | Daily-scrape era |
| PRE_2024 returns | 0,25 | Monthly-era |
| ROLLING_12M last window | 0,00 | Últimos 12 meses |
N = 72 meses pra levels, 71 returns pra arithmetic.
Post publicado em 2026-05-07 como transparência metodológica. Se você detectar erros técnicos ou quiser aprofundar, contato via /sobre. Próxima rodada de correlation sensitivity: Q3/2026.