Module 5 of 7 · SVI 202

Volatility Clustering & GARCH(1,1)

27 min readAnchor: SVQ GARCH(1,1): σ²_t = ω + α r²_{t-1} + β σ²_{t-1}
Objectives
  • Explain volatility clustering (magnitude, not direction) and why it breaks the constant-variance assumption.
  • Write ARCH(q) and GARCH(1,1) in equations, interpret ω/α/β, and state the stationarity condition and long-run variance.
  • Recognize EWMA as the integrated-GARCH special case, know GARCH is fit by maximum likelihood, and compute a shock's half-life.
  • Forecast the volatility term structure with GARCH and connect it to the probability cone, and name the leverage effect.

Look at almost any return series long enough and you notice something the textbook normal distribution never told you: the storms come in clusters. A wild day is rarely alone — a market that gapped 4% today is far likelier than usual to lurch again tomorrow, and the day after. Then the sea flattens and you get long stretches where nothing moves. Calm follows calm, chaos follows chaos. This is volatility clustering, and once seen it cannot be unseen. Mandelbrot's early-1960s remark says it exactly: large changes tend to be followed by large changes, and small by small — of either sign. This chapter is the equation that program has been building toward since Tier 100 — the formal model of that clustering.

Magnitude, not direction

Read that last phrase carefully, because it is the whole game. Volatility clustering is not about direction. The returns themselves are nearly unpredictable; if you could forecast tomorrow's sign, you'd be retired. What clusters is magnitude. The size of the move is forecastable even when the move itself is not — a strange, wonderful, tradeable thing.

*Figure 1.* The absolute size of each day's return through time. Large moves arrive in bunches (the storms) and quiet days in long calm stretches. The **magnitude** clusters and is forecastable; the **direction** is not.

Figure 1. The absolute size of each day's return through time. Large moves arrive in bunches (the storms) and quiet days in long calm stretches. The magnitude clusters and is forecastable; the direction is not.

Homoskedasticity has to break

Everything so far leaned on a quiet assumption that now must fall: ordinary regression assumes homoskedasticity, a constant error variance — every residual drawn from the same fixed-width distribution. Returns laugh at this. Their variance breathes — large in the clusters, small in the calms. A model that pretends variance never changes is overconfident in storms and underconfident in calm: exactly backwards for sizing risk. (This is the ARCH signature you tested for in ch3; here we stop testing and start modelling.)

From ARCH to GARCH

The fix is to stop treating variance as a fixed number and start treating it as a process with its own memory. Robert Engle introduced it in 1982 (a 2003 Nobel), and his student Tim Bollerslev generalized it. Engle's ARCH(q) makes today's variance a weighted sum of recent squared shocks:

σt2=ω+α1rt−12+⋯+αqrt−q2.\sigma_t^2 = \omega + \alpha_1 r_{t-1}^2 + \cdots + \alpha_q r_{t-q}^2.

A big move yesterday raises today's variance — clustering, captured. But to reach far back you'd need many lags. Bollerslev's insight was to add one term that carries all of history recursively — yesterday's variance — giving the GARCH(1,1):

 σt2=ω+α rt−12+β σt−12 \boxed{\ \sigma_t^2 = \omega + \alpha\,r_{t-1}^2 + \beta\,\sigma_{t-1}^2\ }

Read it as a blend: today's variance is a constant floor ω\omega, plus a fresh jolt from yesterday's squared return (α rt−12\alpha\,r_{t-1}^2), plus an inherited level from yesterday's variance (β σt−12\beta\,\sigma_{t-1}^2). One squared-return lag, one variance lag — the workhorse of the entire field.

The three numbers: ω, α, β

Three parameters run everything. ω\omega is the floor — the baseline variance always present. α\alpha is the reaction: how sharply variance jumps after a fresh shock (large α\alpha = jumpy, snapping to attention after every big day). β\beta is the memory / persistence: how much of yesterday's variance survives into today (large β\beta = storms decay slowly, calm lingers).

Two conditions keep it sane. All three must be non-negative (variance can't go negative), and crucially α+β<1\alpha + \beta < 1. That sum is persistence — the closer to 1, the longer a shock echoes. Below 1 the process is stationary and pulled back toward a long-run (unconditional) variance:

σˉ2=ω1−α−β.\bar\sigma^2 = \frac{\omega}{1 - \alpha - \beta}.

This is the gravitational center the process orbits: after a shock, GARCH decays the variance back toward σˉ2\bar\sigma^2, and the speed is set by α+β\alpha+\beta — the shock's half-life is ln⁡(0.5)/ln⁡(α+β)\ln(0.5)/\ln(\alpha+\beta). For daily equities α+β\alpha+\beta is famously near 1 (often above 0.95), so half-lives run to weeks — the mathematics restating what your eyes saw in ch4: volatility has long memory, it is stubbornly persistent.

An old friend: EWMA is GARCH without mean reversion

You have already met a cousin of this equation. Set ω=0\omega = 0 and α+β=1\alpha + \beta = 1 (write α=1−λ\alpha = 1-\lambda, β=λ\beta = \lambda) and GARCH collapses to

σt2=(1−λ) rt−12+λ σt−12,\sigma_t^2 = (1-\lambda)\,r_{t-1}^2 + \lambda\,\sigma_{t-1}^2,

which is exactly the EWMA / RiskMetrics estimator from Module 102-5. So the EWMA you built there is a special integrated GARCH (IGARCH) — GARCH with the persistence pinned to 1 and no long-run level to revert to. That's its one weakness: it tracks volatility responsively but, lacking mean reversion, its long-horizon forecast never comes home. Full GARCH restores the missing floor. The loop from 102 closes here.

How the parameters are found: maximum likelihood

Where do ω,α,β\omega, \alpha, \beta come from? Maximum likelihood — the engine of 201 ch1. Assume each return is conditionally normal with the time-varying variance the recursion produces, rt∣past∼N(0,σt2)r_t \mid \text{past} \sim \mathcal{N}(0, \sigma_t^2), write the likelihood of the whole series, and climb it to its peak. (When returns are fatter-tailed than normal — they are — the same procedure run anyway is quasi-MLE, still consistent.) This is how SVQ, and every risk desk, turns a return history into a fitted (ω,α,β)(\omega, \alpha, \beta).

Forecasting: the volatility term structure

A fitted GARCH doesn't just describe today's variance — it forecasts tomorrow's, and the day after, and the whole path. The kk-step-ahead variance forecast mean-reverts geometrically to the long-run level:

E[σt+k2]=σˉ2+(α+β)k−1(σt+12−σˉ2).\mathbb{E}[\sigma_{t+k}^2] = \bar\sigma^2 + (\alpha+\beta)^{k-1}\big(\sigma_{t+1}^2 - \bar\sigma^2\big).

If today's vol is above σˉ\bar\sigma, the forecast decays down toward it; if compressed below, it drifts up. That curve of forecasts across horizons is the volatility term structure.

*Figure 2.* GARCH forecasts the whole curve, not one number. From an elevated start the forecast decays toward the long-run level; from a compressed start it rises toward it — both mean-reverting at rate $(\alpha+\beta)^k$. This is the term structure that upgrades the probability cone: the cone of Module 102-2, drawn with a *constant* σ and flaring like √t, becomes a GARCH cone whose flare *itself* changes with the vol regime — wide-but-settling after a storm, narrow-but-widening in a squeeze.

Figure 2. GARCH forecasts the whole curve, not one number. From an elevated start the forecast decays toward the long-run level; from a compressed start it rises toward it — both mean-reverting at rate (α+β)k(\alpha+\beta)^k. This is the term structure that upgrades the probability cone: the cone of Module 102-2, drawn with a constant σ and flaring like √t, becomes a GARCH cone whose flare itself changes with the vol regime — wide-but-settling after a storm, narrow-but-widening in a squeeze.

The leverage effect

One honest refinement. Plain GARCH treats a −6%-6\% day and a +6%+6\% day identically — both enter as rt−12r_{t-1}^2. But equities show the leverage effect: a drop raises future volatility more than a rally of the same size. The GJR-GARCH and EGARCH variants add an asymmetry term that fires harder on negative shocks. This is the same asymmetry as the equity skew — the downward-sloping wing slope of Module 202-1 — seen in the time domain rather than across strikes. Direction reappears not in the return but in how the return shapes tomorrow's risk.

Application: SVQ's GARCH

*Figure 3.* The recursion live: conditional vol hovers near its floor, a $6\%$ shock spikes the $\alpha$ term, and the forecast vaults up — then, because $\beta$ is high, that elevated fear bleeds off only slowly. The rising line is SVQ telling you the *magnitude* of further movement is now genuine evidence.

Figure 3. The recursion live: conditional vol hovers near its floor, a 6%6\% shock spikes the α\alpha term, and the forecast vaults up — then, because β\beta is high, that elevated fear bleeds off only slowly. The rising line is SVQ telling you the magnitude of further movement is now genuine evidence.

In Saqrid

SVQ's conditional-volatility panel is this recursion running live, σt2=ω+α rt−12+β σt−12\sigma_t^2 = \omega + \alpha\,r_{t-1}^2 + \beta\,\sigma_{t-1}^2. Say the fit is ω=0.00001\omega = 0.00001, α=0.08\alpha = 0.08, β=0.90\beta = 0.90: then α+β=0.98\alpha+\beta = 0.98 (high persistence, exactly what equities show), the long-run variance is 0.00001/(1−0.98)=0.00050.00001/(1-0.98) = 0.0005, and its square root is a daily-vol floor of about 2.2%2.2\%. A shock's half-life is ln⁡(0.5)/ln⁡(0.98)≈34\ln(0.5)/\ln(0.98) \approx 34 days. Now a 6%6\% down-day lands: its squared return 0.00360.0036 is more than seven times the long-run variance, so the α\alpha term injects a real jolt and tomorrow's forecast vaults up — and with β=0.90\beta = 0.90, that fear decays only slowly. The forecast panel carries the full term structure of Figure 2: how fast SVQ expects this storm to subside, which is exactly what the probability cone consumes to set its width at every horizon. And one parameter did the work: β\beta is why one bad day reshapes two weeks of expected risk.