Quant Ladder

Time Series: AR, MA, and Why Returns Resist Forecasting

2 min read

Financial data arrives in time order, and time-series modeling is the discipline of exploiting that order. Its punchline in markets is famously lopsided: returns are nearly unforecastable, but volatility is richly forecastable — and knowing why is worth more than any model in this lesson.

The vocabulary: ACF and stationarity

The autocorrelation function ρ(k)=Corr(xt,xtk)\rho(k) = \operatorname{Corr}(x_t, x_{t-k}) is the fingerprint of a series. Daily equity returns: autocorrelations statistically near zero from lag 1 onward — the efficient-market/martingale prediction from earlier courses, visible in data. Daily squared returns: strongly positive autocorrelation for dozens of lags — volatility clusters. One plot, both stylized facts, and half of quant finance flows from the contrast. (Stationarity — stable mean and variance — is the entry ticket, as established in the stat-arb lesson; model returns and spreads, never raw prices.)

AR and MA: the two atoms

Autoregressive AR(1): xt=ϕxt1+ϵtx_t = \phi\, x_{t-1} + \epsilon_t. Today echoes yesterday, with geometric decay: ACF is ϕk\phi^k, half-life ln2/ln(1/ϕ)\ln 2 / \ln(1/\phi)... more usefully, ϕ\phi near 1 means slow mean reversion (the discrete-time Ornstein–Uhlenbeck of the stat-arb lesson: same object, ϕ=eκΔt\phi = e^{-\kappa \Delta t}), ϕ=1\phi = 1 exactly is a random walk — nonstationary, the boundary case the Dickey–Fuller test interrogates.

Moving average MA(1): xt=ϵt+θϵt1x_t = \epsilon_t + \theta\,\epsilon_{t-1} — shocks persist exactly one period; ACF cuts off dead after lag 1. Market microstructure induces MA structure: bid-ask bounce puts small negative lag-1 autocorrelation into measured returns that isn't tradable — a favorite trick question ("you found lag-1 autocorrelation in tick returns — alpha?" No: bounce).

ARMA combines both; fitting is maximum likelihood; order selection by information criteria (AIC/BIC — fit rewarded, parameters penalized: the regression lesson's overfitting discipline in time-series clothing).

GARCH: modeling the forecastable part

Since volatility clusters, model it directly. GARCH(1,1):

σt2=ω+αϵt12+βσt12\sigma_t^2 = \omega + \alpha\,\epsilon_{t-1}^2 + \beta\,\sigma_{t-1}^2

Tomorrow's variance = baseline + a dose of yesterday's surprise + persistence of yesterday's variance. Typical equity fits: α0.1\alpha \approx 0.1, β0.85\beta \approx 0.85 — persistence α+β0.95\alpha + \beta \approx 0.95, so vol shocks decay with a half-life of weeks. GARCH produces the fat-tailed unconditional returns of the CLT lesson from normal conditional shocks — mixture-of-variances, mechanized. It's the standard risk-model engine: VaR inputs, vol targeting, and the realized-vs-implied comparisons of the options course all start from a conditional vol forecast of this family.

Why returns resist

The one-paragraph answer to carry: any strong, simple return predictability is a money pump, and money pumps attract capital until they close — predictability is self-erasing (the adaptive-markets point from the ML-in-markets lesson). Volatility predictability survives because trading it is costly and risky (you can't arbitrage "next week will be turbulent" cheaply), so it persists. Forecastability lives where exploitation is hard: that principle explains the entire empirical landscape.

The interview version

"Daily returns have lag-1 autocorrelation of 0.03. Tradable?" — An R2R^2 of 0.00090.0009: before costs, microscopically; after costs, almost surely not — and check bounce first. "Estimate tomorrow's vol after today's 5% crash, if recent vol was 1%." — GARCH arithmetic: σ2=ω+0.1(0.05)2+0.85(0.01)20.00034\sigma^2 = \omega + 0.1(0.05)^2 + 0.85(0.01)^2 \approx 0.00034, so ~1.8% — vol nearly doubles overnight and decays back over weeks. Fast, numerical, and exactly the calculation risk systems run every close.