GARCH Models
ARCH left us with a
nagging inefficiency: real volatility fades slowly, so matching it with squared returns alone needs a
long tail of lags. In 1986 Tim Bollerslev — Engle's own doctoral student — found the fix with a single
elegant move. If ARCH lets today's variance depend on recent squared returns, why not also let
it depend on recent variances? Add lagged conditional variance to the recursion and the model
develops a memory that stretches back indefinitely while using only a handful of parameters. He called
it GARCH: Generalized ARCH. It is, without exaggeration, the workhorse of
modern financial econometrics — the default first model on every volatility desk on Earth.
The model
Keep the same shell as ARCH, r_t = \sigma_t z_t with
z_t iid (0,1), but let the conditional variance
feed on both past squared returns and past variances. The general
GARCH(p, q) is:
\sigma_t^2 = \alpha_0 + \sum_{i=1}^{q}\alpha_i\, r_{t-i}^2 + \sum_{j=1}^{p}\beta_j\, \sigma_{t-j}^2.
The new \beta_j terms are the whole point: the model now remembers its own
past level of volatility, not just recent shocks. In practice one specification dominates all others —
the famous GARCH(1,1):
\sigma_t^2 = \alpha_0 + \alpha_1\, r_{t-1}^2 + \beta_1\, \sigma_{t-1}^2.
Three parameters — \alpha_0, \alpha_1, \beta_1 — and that is very often
enough to model the volatility of a stock index for years. Read it as a recipe for tomorrow's variance:
a constant floor \alpha_0, plus a jolt from yesterday's surprise
(\alpha_1 r_{t-1}^2), plus most of yesterday's variance carried
forward (\beta_1 \sigma_{t-1}^2). That carried-forward term is the long
memory an ARCH would need many lags to imitate.
Persistence: the number that matters most
The single most informative quantity in a fitted GARCH(1,1) is the sum
\alpha_1 + \beta_1, the persistence. It governs how long a
volatility shock lingers, and it fixes the long-run variance:
- Stationarity. The unconditional variance is finite (the model is covariance
stationary) iff \alpha_1 + \beta_1 < 1.
- Long-run variance. When stationary, the unconditional variance is
\displaystyle \sigma^2_\infty = \frac{\alpha_0}{1 - \alpha_1 - \beta_1},
the level volatility mean-reverts toward.
- Persistence. Empirically \alpha_1 + \beta_1 is very
close to 1 (often 0.97{-}0.99) — shocks decay,
but agonizingly slowly. Exactly 1 is the boundary case
IGARCH (integrated GARCH), where shocks never die.
- It is an ARMA in disguise. Written in terms of the squared returns,
GARCH(1,1) is algebraically an ARMA(1,1) model for r_t^2 — which is why
it inherits ARMA's slowly-decaying autocorrelations.
The volatility forecast, live
GARCH's most-used output is a forecast of future variance. The h-step
forecast decays geometrically from wherever volatility is now toward the long-run level:
\hat{\sigma}^2_{t+h} = \sigma^2_\infty + (\alpha_1 + \beta_1)^{\,h}\bigl(\hat{\sigma}^2_{t+1} - \sigma^2_\infty\bigr).
Below, volatility starts elevated after a shock and reverts toward its long-run level (the dashed line).
Drag the persistence \alpha_1 + \beta_1: near 1 the
forecast crawls back over months; nearer 0.8 it snaps back within a couple of
weeks. That reversion rate is the persistence, made visible.
Because volatility mean-reverts, GARCH says a calm market will eventually get more turbulent and a
panicked market will eventually calm down — the term structure of risk always bends toward
\sigma^2_\infty.
Worked example: one variance update
Take a GARCH(1,1) with \alpha_0 = 0.1,
\alpha_1 = 0.10, \beta_1 = 0.85 (returns in %).
Suppose yesterday's conditional variance was \sigma_{t-1}^2 = 4 and yesterday's
return was r_{t-1} = 3. Then today's conditional variance is:
\sigma_t^2 = 0.1 + 0.10\,(3)^2 + 0.85\,(4) = 0.1 + 0.9 + 3.4 = 4.4.
So today's volatility forecast is \sigma_t = \sqrt{4.4} \approx 2.10\%. Note
the arithmetic of the mix: the \beta_1\sigma_{t-1}^2 = 3.4 term does most of
the work — the model is mostly "yesterday's volatility again," gently updated by the fresh
shock. The persistence here is \alpha_1 + \beta_1 = 0.95, and the long-run
variance is 0.1/(1-0.95) = 2, so at 4.4 we are well
above normal and the forecast will drift back down toward 2 over the coming
weeks.
When symmetry is not enough: the leverage effect
Plain GARCH squares the shock, so good news and bad news of equal size move volatility equally. Real
equity markets disagree: a sharp drop tends to raise future volatility more than a rally of the
same size — the leverage effect (a falling price raises a firm's debt-to-equity ratio,
making the stock riskier). Two standard extensions bake this asymmetry in: EGARCH
(Nelson), which models \log \sigma_t^2 and lets the sign of the shock matter,
and GJR-GARCH (Glosten–Jagannathan–Runkle), which adds an extra term that switches on
only for negative returns. Both keep GARCH's parsimony while curing its blind spot to the direction of
bad news.
When you fit a GARCH(1,1) and read off \alpha_1 + \beta_1 = 0.98, the
instinct trained by unit-root testing on levels is to say "near-integrated — I should
difference it." Resist. This persistence lives in the conditional variance, not in the mean of
the series, and differencing the returns does nothing to it. A persistence near
1 simply means volatility shocks decay slowly — a burst of turbulence
echoes for many weeks before fading to the long-run level — which is a genuine and useful feature of the
data, not a defect to be transformed away. Only at exactly \alpha_1 + \beta_1 = 1
(IGARCH) does the long-run variance cease to exist, and even then you model it, you do not difference it.
Confusing volatility persistence with a mean unit root is a classic and costly error.
Substitute the GARCH(1,1) recursion into itself again and again and the
\beta_1 \sigma_{t-1}^2 term unrolls into an infinite weighted sum of
all past squared returns, with weights \alpha_1 \beta_1^{\,k} that fade
geometrically. In other words, GARCH(1,1) is an ARCH(∞) in tidy disguise: three parameters
encode an infinitely long, exponentially-decaying memory that a plain ARCH could only approximate with a
pile of separate coefficients. It is the same trick that makes an
autoregressive model cheaper than an infinite moving average — recursion buys you long memory almost for
free. That efficiency is the entire reason GARCH, not ARCH, is what practitioners actually run.