Quant Memo
Core

Building And Interpolating A Vol Surface

Only a handful of strikes and maturities actually trade, so a usable volatility surface has to be built by interpolating between those scattered market quotes without inventing arbitrage in the gaps.

Prerequisites: Implied Volatility Surface

A hiking map isn't built from a photograph of the whole mountain range — it's built from a scattering of survey points, with a cartographer filling in the contour lines between them. A volatility surface has the same problem: exchanges only quote liquid options at a handful of strikes and expiry dates, but a trader pricing an odd strike or an odd maturity needs a volatility number everywhere. Interpolation is the rule for filling in the map between the surveyed points.

What's actually being interpolated

The naive approach — draw a smooth curve through the raw implied vols you have — causes trouble, because implied vol itself doesn't move in straight lines that respect no-arbitrage. The standard fix is to interpolate total variance, not vol directly.

w(K,T)=σ(K,T)2×Tw(K, T) = \sigma(K,T)^2 \times T

In words: ww, the total variance at strike KK and maturity TT, is just the implied vol squared and multiplied by time to maturity. Total variance is the quantity that has to behave sensibly — it must never decrease as TT grows for a fixed strike, because that would mean the market thinks less could happen over a longer horizon, which is a bet nobody would price fairly. Interpolating in ww instead of raw σ\sigma makes that requirement far easier to keep intact, because ww tends to be close to linear in TT near the money.

Worked example 1 — filling a maturity gap

Suppose a stock has quoted at-the-money vol of 20% for a 1-month option (T=1/12T = 1/12) and 24% for a 4-month option (T=4/12T = 4/12), and a trader needs a price for a 2-month option. Convert to total variance first: w1=0.202×(1/12)=0.00333w_1 = 0.20^2 \times (1/12) = 0.00333 and w4=0.242×(4/12)=0.0192w_4 = 0.24^2 \times (4/12) = 0.0192. Linearly interpolating in calendar time between these: at T=2/12T = 2/12, which is one-third of the way from month 1 to month 4, w=0.00333+13(0.01920.00333)=0.00867w = 0.00333 + \tfrac{1}{3}(0.0192 - 0.00333) = 0.00867. Convert back: σ=0.00867/(2/12)=0.0520\sigma = \sqrt{0.00867 / (2/12)} = \sqrt{0.0520} \approx 22.8%. Note this is not the simple average of 20% and 24% (22%) — variance interpolation and vol interpolation give different answers, and variance interpolation is the one that doesn't create calendar arbitrage.

Worked example 2 — filling a strike gap

At the 3-month maturity, suppose the market quotes 22% vol at a $95 strike and 26% at a $105 strike, and a desk needs the vol at $100. A common simple approach is linear interpolation in the strike (or better, in a standardized moneyness measure like the option's delta) directly on vol for a single maturity slice, since arbitrage across strikes is a separate condition (convexity of the price, not monotonicity of variance). Linearly: $100 is halfway between $95 and $105, so σ(22%+26%)/2=24%\sigma \approx (22\% + 26\%)/2 = 24\%. In practice this straight-line strike interpolation is usually replaced by a parametric curve like SVI (see SVI parameterization) fit through all the quoted strikes at once, because a straight line between just two points ignores the smile's actual curvature.

Volatility surface
21201919181817212120202019192221212120202022222221212121232222222222228088951001051121201m3m6m12m24mstrike →
ATM 3m 20.0%90% put 3m 20.8%skew 1.4 pts

Drag across strikes and tenors on the surface above — every point you land on between the quoted grid lines is an interpolated value, not a directly observed market quote. The smoothness you see is the interpolation scheme doing its job.

time to maturity total variance w 1m: w=0.0033 2m: interpolated 4m: w=0.0192
Interpolating in total variance (a near-straight line here) rather than raw vol is what keeps the surface from implying a calendar-spread arbitrage.

What this means in practice

Every desk that prices an option outside the exact quoted grid — which is most options, most of the time — depends on an interpolation scheme, and the choice of scheme is itself a modeling decision. Simple linear interpolation is transparent and fast but can misbehave at the edges; parametric fits like SVI are smoother and easier to keep arbitrage-free but require a calibration step.

Interpolating implied vol directly, point to point, is the classic mistake — it's the visually "natural" thing to draw a smooth curve through, but it routinely produces a surface where a longer-dated option is cheaper in total variance than a shorter-dated one at the same strike, which is a free-money calendar arbitrage. Interpolating total variance instead doesn't automatically prevent every kind of arbitrage, but it removes this specific and common failure mode.

A volatility surface is mostly empty space between a few dozen real market quotes — interpolation is what fills it in, and interpolating in total variance rather than raw vol is the difference between a usable surface and one that quietly implies arbitrage.

Practice

  1. A stock's 1-month ATM vol is 18% and its 6-month ATM vol is 22%. Using linear interpolation in total variance, estimate the 3-month ATM vol.
  2. Why does interpolating implied vol directly (rather than total variance) risk violating the requirement that total variance never decreases with maturity?

Related concepts

Practice in interviews

Further reading

  • Gatheral, The Volatility Surface (Ch. 1-2)
  • Clark, Foreign Exchange Option Pricing (Ch. 3)
ShareTwitterLinkedIn