Skip to content
Finance Lessons

Time-Series Finance

EWMA & RiskMetrics

The exponentially weighted moving average for variance, the decay factor λ and its half-life, EWMA as the IGARCH special case, the RiskMetrics λ = 0.94 convention, and how EWMA compares to GARCH in practice.

10 min Updated Jun 7, 2026

GARCH is powerful, but fitting it means estimating three parameters by maximum likelihood — overkill when you just need a fast, robust volatility number for a risk report tonight. Enter the exponentially weighted moving average (EWMA): a one-parameter volatility estimator that captures the most important feature — recent moves matter more than old ones — with arithmetic simple enough to do in a spreadsheet. It became the heart of J.P. Morgan’s RiskMetrics system, the framework that brought Value-at-Risk to the whole industry. EWMA is the pragmatic volatility tool: not the most accurate, but the one a desk reaches for first.

Before you read — take a guess

A simple 100-day rolling standard deviation of returns suddenly drops a year after a crash, even though nothing happened that day. Why, and how does EWMA help?

The problem with equal-weighted windows

Analogy. A simple rolling-window volatility is like judging today’s weather by averaging the last 100 days equally — a hurricane 99 days ago counts exactly as much as yesterday, and then vanishes completely the moment it ages out to day 101. Two artifacts follow: stale data gets equal say, and the estimate jumps when a big old observation exits the window even though nothing happened today.

The fix. Common sense says recent returns should matter more than ancient ones, and influence should fade, not fall off a cliff. EWMA encodes exactly that: weights that decline geometrically into the past, with no hard cutoff.

EWMA: variance with fading memory

Definition. The EWMA variance update is a weighted blend of yesterday’s variance estimate and yesterday’s squared return: σt2=λσt12+(1λ)rt12,\sigma_t^2 = \lambda\,\sigma_{t-1}^2 + (1 - \lambda)\,r_{t-1}^2, where λ\lambda (lambda), the decay factor, sits between 0 and 1. Unrolling the recursion shows the geometric weighting explicitly: σt2=(1λ)k=0λkrt1k2.\sigma_t^2 = (1 - \lambda)\sum_{k=0}^{\infty}\lambda^{k}\,r_{t-1-k}^2. The return from kk days ago carries weight (1λ)λk(1-\lambda)\lambda^k — a geometric decay. The weights sum to 1 (a proper weighted average), and the most recent return always gets the biggest slice, (1λ)(1-\lambda).

What λ\lambda controls. λ\lambda is the memory dial:

  • High λ\lambda (near 1, e.g. 0.97): weights decay slowly → long memory → smooth, slow-to-react estimate.
  • Low λ\lambda (e.g. 0.85): weights decay fast → short memory → jumpy, fast-reacting estimate that snaps to recent moves.

Worked example — one EWMA update. Take λ=0.94\lambda = 0.94, yesterday’s variance σt12=0.0004\sigma_{t-1}^2 = 0.0004 (vol 2%2\%), and yesterday’s return rt1=0.03r_{t-1} = -0.03 (3%-3\% day, rt12=0.0009r_{t-1}^2 = 0.0009): σt2=0.94(0.0004)+0.06(0.0009)=0.000376+0.000054=0.00043.\sigma_t^2 = 0.94(0.0004) + 0.06(0.0009) = 0.000376 + 0.000054 = 0.00043. Today’s vol estimate is 0.000430.0207=2.07%\sqrt{0.00043} \approx 0.0207 = 2.07\% — the 3%-3\% day nudged it up, weighted by (1λ)=6%(1-\lambda) = 6\%.

EWMA weights: tuning the λ decay
Half-life ≈11.2
036912151821Days ago (k)Weight

Each bar is the weight (1 − λ)·λ^k on the squared return from k days ago. Lower λ piles weight on the last few days (fast but jumpy); raise λ toward 1 and the weights spread into a long, smooth memory. The half-life readout shows how many days back hold half the total weight.

The half-life: how long is EWMA’s memory?

A clean way to summarize λ\lambda is its half-life — the number of days back at which the weight has decayed to half the most recent day’s. Solve λh=0.5\lambda^h = 0.5: h=ln0.5lnλ.h = \frac{\ln 0.5}{\ln \lambda}.

Worked examples.

  • λ=0.94\lambda = 0.94 (RiskMetrics daily): h=ln(0.5)/ln(0.94)=0.693/0.061911.2h = \ln(0.5)/\ln(0.94) = -0.693 / -0.0619 \approx 11.2 days. Roughly the last two trading weeks hold half the weight.
  • λ=0.97\lambda = 0.97 (RiskMetrics monthly): h=0.693/0.030522.8h = -0.693/-0.0305 \approx 22.8 days — a longer memory, smoother estimate.
  • λ=0.85\lambda = 0.85: h=0.693/0.16254.3h = -0.693/-0.1625 \approx 4.3 days — very short memory, snaps to recent moves fast.

The half-life turns an abstract decay factor into something interpretable: “this estimate effectively remembers about two weeks of returns.”

The EWMA decay factor.

Pick the right option for each blank, then check.

In EWMA, the weight on the squared return from k days ago is (1 − λ)·λ^k, a decay. A λ gives a longer memory and a smoother estimate, while a lower λ reacts faster. The half-life, ln(0.5)/ln(λ), tells you how many days back hold of the most recent day's weight.

EWMA is GARCH’s special case (IGARCH)

Here’s the elegant connection to the previous lesson. Compare the two variance equations:

  • GARCH(1,1): σt2=ω+αrt12+βσt12\sigma_t^2 = \omega + \alpha\,r_{t-1}^2 + \beta\,\sigma_{t-1}^2.
  • EWMA: σt2=(1λ)rt12+λσt12\sigma_t^2 = (1-\lambda)\,r_{t-1}^2 + \lambda\,\sigma_{t-1}^2.

They are the same equation under three identifications: ω=0\omega = 0, α=1λ\alpha = 1 - \lambda, and β=λ\beta = \lambda. So EWMA is exactly GARCH(1,1) with ω=0\omega = 0 and α+β=(1λ)+λ=1\alpha + \beta = (1-\lambda) + \lambda = 1 — the IGARCH (integrated GARCH) case from the GARCH lesson.

The consequence: because persistence α+β=1\alpha + \beta = 1, EWMA has no mean reversion and no long-run variance (the formula ω/(1αβ)\omega/(1-\alpha-\beta) divides by zero). Volatility shocks are treated as permanent: EWMA never pulls its forecast back toward a long-run “climate” level the way a stationary GARCH does. Its multi-step forecast is just a flat line at the current estimate. That’s the price of simplicity — and the key behavioral difference from GARCH.

EWMA is equivalent to a GARCH(1,1) with which parameter restrictions, and what is the main behavioral consequence?

RiskMetrics and the famous λ = 0.94

In 1994, J.P. Morgan published RiskMetrics, a methodology (and free dataset) for measuring market risk that put Value-at-Risk (VaR) on every desk. Its volatility engine was EWMA, and it shipped with a now-iconic default:

  • λ=0.94\lambda = 0.94 for daily data, and λ=0.97\lambda = 0.97 for monthly data.

These weren’t fitted per asset — they were fixed constants, chosen by RiskMetrics to work reasonably well across a huge cross-section of assets. That universality was the point: a single, simple, no-estimation-required recipe any institution could apply consistently to compute VaR.

How EWMA feeds VaR. A one-day 99% VaR under a normal assumption is roughly VaR2.33×σt×(position value),\text{VaR} \approx 2.33 \times \sigma_t \times (\text{position value}), where σt\sigma_t is the EWMA volatility estimate and 2.332.33 is the 99% normal quantile. Because σt\sigma_t updates daily with the EWMA recursion, the VaR breathes with the market — rising in turbulence, falling in calm — without re-fitting anything.

Worked example — daily VaR. A $10,000,000 position, EWMA daily vol σt=2%\sigma_t = 2\%, 99% one-day VaR: 2.33×0.02×10000000=4660002.33 \times 0.02 \times 10\,000\,000 = 466\,000 dollars. If a turbulent week pushes the EWMA estimate to 3%3\%, the VaR rises to 2.33×0.03×10000000=6990002.33 \times 0.03 \times 10\,000\,000 = 699\,000 dollars — automatically, just from the updated volatility.

Match each EWMA / RiskMetrics concept to its meaning.

Pick a term, then click its definition.

EWMA vs GARCH: when to use which

FeatureEWMAGARCH(1,1)
Parametersone (λ\lambda, often fixed)three (ω,α,β\omega, \alpha, \beta), estimated
Mean reversionnone (α+β=1\alpha+\beta=1)yes (if α+β<1\alpha+\beta<1)
Long-run varianceundefinedω/(1αβ)\omega/(1-\alpha-\beta)
Multi-step forecastflat at current levelreverts to long-run anchor
Estimationnone (recursive)maximum likelihood
Best forfast, robust, consistent daily VaRaccurate forecasts, term structure, research

The trade-off. EWMA wins on simplicity, speed, and robustness: no fitting, no estimation risk, transparent, reproducible across thousands of assets — ideal for production risk systems and short-horizon VaR. GARCH wins on accuracy and structure: it captures mean reversion, produces a proper volatility term structure for multi-horizon forecasts, and (with t-errors or asymmetry) fits the data better. The rule of thumb: EWMA for fast, uniform, short-horizon risk numbers; GARCH when forecast accuracy and the volatility term structure matter (options pricing, longer horizons, research).

Warning:

EWMA's blind spot: no mean reversion bites at longer horizons

Because EWMA has no long-run anchor, its multi-step volatility forecast is just today’s estimate, flat. After a crash it will keep predicting crash-level volatility indefinitely; after a calm spell it predicts calm forever. For one-day VaR that’s fine — tomorrow really does look like today. But for multi-week or option-pricing horizons, ignoring mean reversion can badly over- or under-state risk. That’s precisely when you switch to a stationary GARCH whose forecast decays back toward the long-run level.

If EWMA is just a restricted GARCH, why did it become the industry standard instead of GARCH?

Three pragmatic reasons, all about operational robustness over statistical optimality. First, no estimation means no estimation risk: GARCH parameters are fitted by maximum likelihood, which can fail to converge, land on unstable values (α+β>1\alpha+\beta>1), or wobble month to month as the window rolls — a nightmare when you must produce the same risk number consistently across 5,000 instruments every night. EWMA’s fixed λ\lambda is deterministic and reproducible. Second, transparency and auditability: a regulator or risk committee can verify an EWMA number by hand; a fitted GARCH is a black box by comparison. Third, uniformity: RiskMetrics’ whole pitch was a single, consistent methodology applicable to every asset class at once, so risks aggregate sensibly across the firm — fixed-λ\lambda EWMA delivers that, per-asset GARCH fitting does not. The cost is real (no mean reversion, worse multi-horizon forecasts), but for the specific job of daily, firm-wide, defensible VaR, robustness beat accuracy. Research desks and option pricers, with different needs, still reach for GARCH.

For computing a fast, consistent, firm-wide ONE-DAY VaR across thousands of positions every night, which volatility estimator fits the job best and why?

Putting it together

EWMA estimates variance as a geometrically decaying weighted average of past squared returns, σt2=λσt12+(1λ)rt12\sigma_t^2 = \lambda\sigma_{t-1}^2 + (1-\lambda)r_{t-1}^2, fixing the two flaws of equal-weighted windows: it weights recent returns more and lets old shocks fade smoothly rather than dropping off a cliff (the ghosting artifact). The single parameter λ\lambda is the memory dial — higher means smoother and longer-memoried — and its half-life ln(0.5)/lnλ\ln(0.5)/\ln\lambda makes that memory interpretable in days. Algebraically, EWMA is exactly GARCH(1,1) with ω=0\omega = 0 and α+β=1\alpha+\beta=1 (IGARCH), so it has no mean reversion and no long-run variance — its multi-step forecast is a flat line. RiskMetrics built VaR on EWMA with the iconic fixed defaults λ=0.94\lambda = 0.94 (daily) and 0.970.97 (monthly), prizing a single, no-fitting, firm-wide-consistent recipe. The trade-off is clean: EWMA for fast, robust, short-horizon, uniform risk numbers; GARCH when accuracy, mean reversion, and the volatility term structure matter.

Big picture

EWMA & RiskMetrics — the whole picture

  • EWMA & RiskMetrics
    • The problem with windows
      • Equal weights treat old = recent
      • Ghosting jump when a big day exits
      • EWMA fades smoothly, no hard cutoff
    • EWMA mechanics
      • σ²_t = λσ²_{t−1} + (1−λ)r²_{t−1}
      • Weight on k days ago = (1−λ)λ^k
      • λ is the memory dial (higher = smoother)
      • Half-life = ln(0.5)/ln(λ)
    • IGARCH equivalence
      • EWMA = GARCH with ω=0, α+β=1
      • No mean reversion
      • No long-run variance; flat multi-step forecast
    • RiskMetrics & VaR
      • λ = 0.94 daily, 0.97 monthly (fixed)
      • VaR ≈ 2.33·σ·position (99% normal)
      • VaR breathes with the EWMA estimate
    • EWMA vs GARCH
      • EWMA: simple, fast, robust, auditable
      • GARCH: accurate, mean-reverting, term structure
      • EWMA for short-horizon firm-wide VaR
      • GARCH for accuracy and longer horizons
EWMA fades memory geometrically via λ; it's IGARCH with no mean reversion; RiskMetrics fixed λ = 0.94 for firm-wide VaR; GARCH wins on accuracy and horizon.

Recap: EWMA & RiskMetrics

Question 1 of 40 correct

What advantage does EWMA have over an equal-weighted rolling-window volatility?

Check your answer to continue.

Next up — backtesting pitfalls — we shift from building models to trusting them. Look-ahead bias, overfitting, and data-snooping are the traps that make a strategy look brilliant on history and fail live. The final lesson before the exam is about not fooling yourself.

Mark lesson as complete