Core Statistical Model Interactive
Time Series Models
Forecast future values based on temporal patterns. Essential for player performance trends, form analysis, and seasonal adjustments.
๐ Time Series Components
Trend
Long-term direction (improving, declining)
๐
Seasonality
Regular patterns (home/away, rest days)
๐
Autocorrelation
Dependence on past values (momentum)
๐
Noise
Random variation (game-to-game variance)
ใฐ๏ธ
Component Settings
-1 1
0 10
0 0.95
1 8
Display Options
1 20
๐ Series Statistics
Mean 26.8
Std Dev 6.66
AR(1) Effect Strong momentum
Player Points Over Season
Blue shaded area shows forecast period. Green dashed = exponential smoothing forecast.
Autocorrelation Function (ACF)
Interpretation: High ACF at lag 1 = momentum (hot/cold streaks). ACF at lag 7 = weekly pattern. AR coefficient of 0.7 shows strong game-to-game dependence.
๐ Common Time Series Models
ARIMA
AutoRegressive Integrated Moving Average. Captures autocorrelation and handles non-stationarity.
ARIMA(p, d, q)
- p = AR order (past values)
- d = Differencing order
- q = MA order (past errors)
Exponential Smoothing
Weight recent observations more heavily. Simple but effective for short-term forecasts.
ลท_t = ฮฑy_t + (1-ฮฑ)ลท_(t-1)
- ฮฑ = smoothing parameter
- Higher ฮฑ = more reactive
- Lower ฮฑ = smoother trend
Prophet / State Space
Modern approaches handling trend changes, holidays, and missing data automatically.
- โข Facebook Prophet for quick forecasts
- โข State space for flexible modeling
- โข Good for irregular schedules
๐ Sports Pricing Applications
Player Form Analysis
- โ Recent form weighting (last 5 games vs season avg)
- โ Hot streak detection (high AR coefficient)
- โ Mean reversion after outlier games
Seasonal Adjustments
- โ Back-to-back game fatigue patterns
- โ Home/away regular patterns
- โ All-Star break effects, playoff intensity
R Code Equivalent
# Time series analysis for player projections
library(forecast)
library(dplyr)
# Player game log as time series
player_ts <- ts(player_games$points, frequency = 7) # Weekly pattern
# Decompose into components
decomposed <- decompose(player_ts)
plot(decomposed)
# Fit ARIMA model
arima_fit <- auto.arima(player_ts)
summary(arima_fit)
# Forecast next 10 games
forecast_result <- forecast(arima_fit, h = 10)
plot(forecast_result)
# Exponential smoothing alternative
ets_fit <- ets(player_ts)
ets_forecast <- forecast(ets_fit, h = 10)
# Check ACF for momentum
acf(player_ts, main = "ACF - Player Points")โ Key Takeaways
- โข Decompose series: trend + seasonal + residual
- โข High AR(1) = momentum (recent games matter more)
- โข ARIMA for formal modeling, ETS for quick forecasts
- โข Recent form โ true ability (regression to mean)
- โข Account for schedule effects (rest, travel)
- โข Cross-validate on out-of-sample games