Aula 9
Modelo de Elo Rating
Formula mental
Pontuacao esperada do Elo
Use esta formula como uma lente de leitura, nao como uma verdade mecanica. O objetivo e tornar a tese auditavel antes da decisao.
Exemplo de mercado
Aplicacao do Modelo de Elo Rating
Escolha um projeto real e separe evidencias observaveis de narrativa publica.
Compare a leitura contextual com odds, liquidez e timing do movimento de mercado.
Escreva uma hipotese que admita intervalo de incerteza e criterio de invalidacao.
Fator K fixo em ligas desbalanceadas, ratings desatualizados gerando vies.
Modo de falha
Fator K fixo em ligas desbalanceadas, ratings desatualizados gerando vies.
Este erro reduz a qualidade da decisao porque troca processo verificavel por interpretacao conveniente.
Checklist de decisão
Checklist do Modelo de Elo Rating
- Fator K ajustado por liga
- Convergencia validada apos N rodadas
- Integracao com lambda do Poisson testada
- Log de atualizacoes persistido
Diagrama
Ciclo de atualizacao Elo
flowchart LR A["Rating pre-jogo"] --> B["Expectativa de resultado"] B --> C["Resultado observado"] C --> D["Atualizacao de rating"] D --> E["Rating pos-jogo"] E --> F["Integracao com lambda Poisson"]
Modelo de Elo Rating
Ideia central
Quantificar força relativa entre equipes através de um sistema de atualização iterativa que recalibra expectativas com base em resultados observados, permitindo a geração de probabilidades estruturais e a integração controlada com modelos de distribuição de gols.
Modelo mental
Reputação como preço dinâmico. Cada time carrega um rating que funciona como um marcador de força implícita, não absoluto. O valor se move conforme o desempenho real diverge da expectativa matemática. O sistema opera como um mercado de atualização de crença: vitórias contra adversários fortes geram ganhos maiores, empates contra times superiores preservam rating, e derrotas inesperadas impõem correções imediatas. A força é sempre relacional, sensível ao contexto e sujeita a ruído amostral.
O que e
O Elo Rating é um sistema de pontuação numérica originalmente desenvolvido para xadrez, adaptado ao futebol para medir força relativa de forma contínua e auditável. Diferente de tabelas de classificação estáticas ou métricas acumuladas por temporada, o Elo não depende de pontos fixos ou saldo de gols isolados. Ele calcula uma expectativa de resultado com base na diferença de rating entre duas equipes e atualiza os valores pós-jogo usando um fator de correção (K-factor). O output é um ranking vivo que pode ser mapeado para probabilidades implícitas, servindo como prior em modelos de previsão ou como filtro de ruído de mercado.
Por que importa
Mercados de preço refletem força relativa implícita, mas frequentemente carregam ineficiências de curto prazo, viés de narrativa e ajustes tardios a mudanças estruturais. O Elo oferece uma baseline matemática para calibrar expectativas antes da interação com odds. Quando integrado a modelos de Poisson, o rating atua como ponderador de lambda, ajustando a taxa esperada de gols conforme a força do adversário e o contexto da partida. Para pesquisa, o sistema fornece rastreabilidade de atualização, permite backtesting temporal e expõe onde a probabilidade de mercado diverge da expectativa estrutural. Não substitui análise contextual; estabiliza a fundação probabilística.
Mecanismo
O núcleo do sistema opera em três etapas: cálculo de expectativa, definição de resultado observado e atualização de rating.
-
Expectativa de resultado: A probabilidade esperada de vitória para o time A é calculada pela diferença de rating:
E_A = 1 / (1 + 10^((R_B - R_A) / 400))OndeR_AeR_Bsão os ratings atuais. O valor de 400 é a escala padrão; determina a sensibilidade da curva logística. -
Resultado observado (
S_A): Codificado como 1 para vitória, 0.5 para empate e 0 para derrota. Em variações avançadas,S_Apode ser ponderado por margem de vitória ou xG diferencial. -
Atualização de rating:
R_A' = R_A + K × (S_A - E_A)O fator K controla a volatilidade do sistema. Valores altos (K=30 a 40) aceleram ajustes, adequados para ligas com alta rotatividade ou amostras iniciais. Valores baixos (K=15 a 20) suavizam ruído, preferíveis em ligas estáveis ou após convergência histórica. -
Ajustes contextuais:
- Home advantage: adição de pontos fixos ao rating do mandante antes do cálculo de expectativa (ex: +50 a +100, calibrado por liga).
- Margem de vitória: substituição de
S_Apor função contínua baseada em diferença de gols ou xG. - Fator K dinâmico: variação por importância da competição, número de jogos disputados ou volatilidade histórica da liga.
-
Mapeamento para probabilidade: A diferença de rating (
ΔR = R_A - R_B) pode ser convertida em probabilidade esperada usando a mesma curva logística. Esse valor serve como prior para calibrar lambdas em modelos de Poisson ou como referência para cálculo de edge frente a odds de mercado.
Exemplo aplicado de futebol e mercado
Considere dois times da Premier League com ratings iniciais: R_A = 1850 (favorito), R_B = 1720 (visitante). A diferença é 130 pontos. A expectativa de vitória para A é:
E_A = 1 / (1 + 10^(-130/400)) ≈ 0.678
O mercado, após remover overround, precifica a vitória de A em 0.64. Há uma divergência de ~3.8 pontos percentuais. Se o time A vence, o rating sobe; se empata, a correção é negativa, pois o resultado ficou abaixo da expectativa. Em um pipeline de pesquisa, essa divergência não é interpretada como sinal imediato, mas como variável de calibração. O ΔR é usado para ajustar o lambda base do time A (ex: λ_A = λ_base × (1 + α × ΔR/400)), onde α é um coeficiente de sensibilidade validado por backtesting. O sistema expõe onde a força relativa estrutural e o preço de mercado se alinham ou se distanciam, permitindo análise de risco antes da execução.
Quadro de raciocinio
Passo a passo numérico com K=25, sem home advantage para simplificação:
- Ratings iniciais:
R_A = 1800,R_B = 1750 - Diferença:
ΔR = 50 - Expectativa A:
E_A = 1 / (1 + 10^(-50/400)) ≈ 0.571 - Expectativa B:
E_B = 1 - E_A ≈ 0.429 - Resultado real: Empate (
S_A = 0.5,S_B = 0.5) - Atualização A:
R_A' = 1800 + 25 × (0.5 - 0.571) = 1800 - 1.775 = 1798.225 - Atualização B:
R_B' = 1750 + 25 × (0.5 - 0.429) = 1750 + 1.775 = 1751.775 - Nova diferença:
ΔR' ≈ 46.45 - Nova expectativa A:
≈ 0.565
Observação analítica: O empate gerou correção simétrica. O rating de A caiu porque o resultado ficou abaixo da expectativa; o de B subuiu porque superou a expectativa. A magnitude da correção é controlada por K. Se K fosse 15, a correção seria ~1.065 pontos; se K fosse 40, seria ~2.84 pontos. A escolha de K define a inércia do sistema. Em pesquisa, K deve ser calibrado por validação cruzada temporal, não por intuição.
Modo de falha
- Fator K fixo em contextos voláteis: Ligas com alta rotatividade de elenco ou competições de mata-mata exigem K maior. K fixo subestima mudanças estruturais ou superestima ruído amostral.
- Ausência de ajuste por contexto: Ignorar home advantage, calendário congestionado, motivação ou lesões gera ratings que refletem apenas histórico bruto, não força atual.
- Ratings congelados ou com drift não monitorado: Sistemas que não atualizam continuamente perdem aderência à realidade. Sem log de drift, o modelo opera com dados obsoletos.
- Confusão entre rating e probabilidade de mercado: O Elo mede força relativa, não preço. Tratar
ΔRcomo odds direta ignora overround, liquidez e ajustes de risco do mercado. - Overfitting a margem de vitória: Ponderar
S_Apor diferença de gols sem validação empírica introduz viés de placar, especialmente em jogos com eventos aleatórios (pênaltis, cartões vermelhos). - Integração não calibrada com Poisson: Usar
ΔRpara ajustar lambda sem testar sensibilidade (α) gera previsões superconfiantes ou subajustadas. A validação temporal é obrigatória.
Checklist
- Fator K calibrado por liga e fase da competição, com validação de sensibilidade.
- Home advantage quantificado e documentado por liga (ex: +70 pontos ou ajuste de expectativa).
- Função de resultado (
S_A) definida (binária ou contínua) e justificada metodologicamente. - Pipeline de atualização iterativa com log de ratings por rodada e timestamp.
- Validação de convergência: comparação entre rating e métricas de desempenho de longo prazo (xG, pontos por jogo).
- Integração com modelo de gols testada: coeficiente de sensibilidade (
α) validado por backtesting temporal. - Monitoramento de drift: alerta quando a divergência entre rating e odds de mercado excede limiar histórico.
- Remoção de viés de calendário: ponderação por força do adversário e densidade de jogos.
Exercicio pratico
Implemente um cálculo Elo em Python para uma liga com 6 times. Use dados de 5 rodadas (resultados reais ou simulados). Configure K=25, home advantage=+60 pontos para o mandante. Para cada rodada:
- Calcule expectativa de resultado para ambas as equipes.
- Aplique o resultado observado e atualize os ratings.
- Armazene ratings em estrutura auditável (DataFrame ou JSON com timestamp).
- Calcule
ΔRpara um confronto específico e converta em probabilidade esperada. - Compare a probabilidade gerada com odds de referência (ex: 1.80 decimal → 0.555 implícita).
- Registre erro absoluto e documente se a divergência está dentro de 1 desvio padrão histórico. Entregue código comentado, log de atualizações e relatório de calibração. Não otimize parâmetros sem validação temporal.
Repositorio de referencia: implementacao do sistema Elo com log de atualizacoes e integracao Poisson em github.com/aimidas1. Ajuste o fator K e valide sensibilidade antes de aplicar a dados reais.
Sintese operacional
O Elo Rating não é um gerador de sinais; é uma estrutura de atualização de crença que quantifica força relativa de forma contínua e auditável. Sua utilidade reside na capacidade de calibrar expectativas, servir como prior probabilístico para modelos de gols e expor divergências entre força estrutural e preço de mercado. O valor do sistema está na disciplina de atualização, na transparência do fator K e na integração controlada com pipelines de backtesting. Sem validação temporal e ajuste contextual, o rating torna-se ruído. Com rigor metodológico, opera como alicerce de modelagem probabilística.