Charta is on Google Play: practise on the go. Get the app
Charta

Estimate volatility by applying a GARCH (1,1) model.

FRM® Part I · Valuation and Risk Models · Measuring and Monitoring Volatility · FRM1.VR.3.f

The idea

GARCH(1,1) models the conditional variance each day from the latest return and the previous variance. Each day, the new conditional variance is built from three terms, as in this update: Variance = ω + α × u² + β × previous variance. Here u is the latest return, α is the reaction to the newest squared return, and β is the persistence of the previous variance. The sum α + β is the persistence, and for a finite long-run variance it must be below 1. The long-run variance follows from the three parameters, so ω can be backed out from a long-run volatility: V = ω ÷ (1 − α − β). Parameters are estimated by maximum likelihood, choosing those that maximise the sum over the sample of −ln(variance) − u² ÷ variance. Work in variance, not volatility, and convert annual to daily variance by dividing by 252. EWMA is the special case in which ω is zero and α + β is 1, so it has no long-run level.

Formulas

GARCH(1,1) variance update

new variance = ω + α × u² + β × old variance

ω
the constant, equal to (1 − α − β) × long-run variance
α
the weight on the latest squared return
u
the latest return
β
the weight on the previous variance
old variance
the previous variance estimate

Needs α + β below 1 for a finite long-run variance. Feed variances, not volatilities, and keep daily and annual units apart.

GARCH(1,1) long-run variance

V = ω ÷ (1 − α − β)

ω
the GARCH constant
α
the weight on the latest squared return
β
the weight on the previous variance

Finite only if α + β is below 1 and ω positive. To find ω from a long-run annual volatility, square it, divide by 252 and multiply by 1 − α − β.

A practice question

From the question bank, with the reason each wrong option is wrong.

In a GARCH(1,1) model, variance = omega + alpha x u² + beta x previous variance. What is the long-run variance?

  1. omega / (alpha + beta)Why not: Divides by the persistence itself rather than by one minus the persistence.
  2. omega x (1 - alpha - beta)Why not: Multiplies by the weight on the long-run variance instead of dividing by it; this is the inverse relation, omega = gamma x V.
  3. omega / (1 - alpha - beta) - correct
  4. omega / (1 - alpha)Why not: Ignores beta, treating the model as an ARCH(1) with no variance persistence.

In the long run variance equals V: V = omega + alpha V + beta V, so V = omega / (1 - alpha - beta). This requires alpha + beta below 1 and omega above 0.

A harder one

A GARCH(1,1) model has omega = 0.00002, alpha = 0.05 and beta = 0.90. Yesterday's daily volatility estimate was 1.5% and yesterday's return was -2.5%. What is today's daily volatility estimate?

  1. 1.53%Why not: Omits the constant omega, understating the variance.
  2. 1.59% - correct
  3. 2.44%Why not: Swaps alpha and beta, putting 0.90 on the squared return.
  4. 0.72%Why not: Drops the beta x previous-variance term altogether.

Variance = 0.00002 + 0.05 x 0.000625 + 0.90 x 0.000225 = 0.0002538, so volatility = 1.593%. Variance (not volatility) goes into the recursion.

The hardest tier

To compare two GARCH parameter sets by maximum likelihood, use the sum over days of [-ln(variance) - u² / variance] (variances and squared returns in %², constants dropped); the higher total is better. Over three days the squared returns are 2.5, 1.2 and 3.9. Set A produced variances 1.5, 1.8 and 2.2 and Set B produced 1.2, 2.4 and 3.0. Which set fits better and by how much?

  1. Set A, by about 0.15 - correct
  2. Set B, by about 0.15Why not: Picks the set with the lower likelihood total, as if the objective were minimised.
  3. Set B, by about 0.22Why not: Omits the -ln(variance) term and so scores only the squared-return fit.
  4. Set A, by about 0.37Why not: Omits the u² / variance term and so scores only the penalty on variance size.

Set A total = -5.888; Set B total = -6.040. The higher (less negative) total is better, so Set A wins by about 0.15. Both terms matter: ln(variance) penalises large forecasts and u² / variance penalises forecasts too small for the realised move.

In the app: 6 practice questions on this outcome, spaced review that brings it back before you forget it.

Start free →

More in Measuring and Monitoring Volatility