Sports Model Interactive
Elo Rating System
Dynamic skill ratings that update based on game outcomes. Used for team/player strength estimation and win probability calculations.
๐ The Elo Formula
Expected Score
E_A = 1 / (1 + 10^((R_B - R_A) / 400))
The expected probability of Team A winning based on rating difference.
Rating Update
R'_A = R_A + K ร (S_A - E_A)
New rating = Old rating + K ร (Actual result - Expected result). K controls volatility.
Team Ratings
Team A Above Average
1200 1800
1500
Team B Average
1200 1800
1400
K-Factor
8 64
Higher K = more volatility. NBA uses ~20, Chess uses 16-32.
Win Probabilities
64.0%
Team A Win Probability
36.0%
Team B Win Probability
Rating Changes After Game
If Team A Wins:
Team A: +11.5
Team B: 11.5
If Team B Wins:
Team A: -20.5
Team B: +20.5
Season Simulation
๐ Pricing Applications
Win Probability
Convert rating difference directly to moneyline odds. No additional modeling needed.
100 pts diff โ 64% vs 36%
Spread Estimation
Each 25 Elo points โ 1 point spread in basketball. Calibrate per sport.
100 Elo โ 4.0 pts
Player Projections
Adjust player projections based on opponent team Elo. Stronger opponents = lower stats.
โ Key Takeaways
- โข 400-point difference = 90% vs 10% win probability
- โข K-factor controls rating volatility
- โข Zero-sum: winner gains what loser loses
- โข Great for relative strength estimation
- โข Can extend with margin of victory
- โข FiveThirtyEight uses Elo for all major sports