Local Volatility from zero
1/5Implied vol is a blended average
The single most important idea in local vol: the implied volatility you observe for a given strike and expiry is not the volatility at that point. It is a path-weighted average of all the local vols along the way.
Think of it like a road trip. The speed limit changes from town to town (those are local vols). Your average speed over the whole trip is your implied vol. Two trips ending at the same destination can have different average speeds because they went through different towns.
Below, every path starts at S=100 and ends at the same terminal price. But each path wanders through different price regions, each with its own local vol. The implied vol is the average across all these paths.
Add more paths and watch the average vol stabilise. Each path experiences different local vols depending on which price levels it visits. The background shading shows the local vol landscape — brighter means higher vol.
What is local vol?
Local volatility is the instantaneous volatility at a specific (price, time) point. It is a landscape: at every spot price and every moment in time, there is a specific vol value.
The model says: if the underlying is at price S at time t, the instantaneous vol is exactly σ(S, t). No randomness in vol itself — it is a deterministic function of where the price is and when.
Hover over the heatmap below to see the local vol value at each point. Notice the pattern: higher vol at low spot prices (left side), lower vol at high spot prices (right side). This asymmetry generates the implied vol skew.
Local vol is like a topographic map of wind speed. At every (latitude, longitude) there is a specific wind speed. A ship sailing from A to B experiences different winds depending on its route. The average wind speed over the journey is like implied vol. The wind speed at each individual point is local vol.
Dupire's formula
Dupire showed that you can extract the local vol surface directly from observed option prices. The formula uses two partial derivatives of the call price function.
∂²C/∂K² — the curvature of call prices across strikes. This is the probability density of the terminal price (the butterfly spread). When this term is zero, there is butterfly arbitrage and local vol is undefined.
The grid below shows Black-Scholes call prices computed with a skewed implied vol surface. Click any interior cell to select it. Toggle between the two derivative views to see which neighbouring cells contribute to the numerator and denominator.
| T \ K | 85 | 90 | 95 | 100 | 105 | 110 | 115 |
|---|---|---|---|---|---|---|---|
| 0.10y | 15.60 | 11.06 | 7.30 | 5.36 | 2.28 | 0.81 | 0.26 |
| 0.25y | 17.06 | 13.16 | 10.11 | 8.50 | 5.43 | 2.97 | 1.57 |
| 0.50y | 19.57 | 16.19 | 13.57 | 12.06 | 9.70 | 6.42 | 4.22 |
| 0.75y | 21.85 | 18.75 | 16.32 | 14.82 | 13.05 | 9.63 | 6.89 |
| 1.00y | 23.93 | 21.00 | 18.68 | 17.15 | 15.63 | 12.64 | 9.52 |
The numerator (∂C/∂T) measures how much extra time value the market assigns for a longer maturity — this is the forward vol information. The denominator (∂²C/∂K²) is the risk-neutral probability density. Their ratio isolates the instantaneous variance at that (K, T) point.
From smile to surface
The implied vol smile — a curve of IV across strikes — maps to an entire local vol surface. Adjusting the smile shape changes the local vol landscape.
Use the sliders below to change the implied vol smile: its base level, skew (tilt), and curvature (convexity). The left panel shows the IV smile. The right panel shows the resulting local vol heatmap computed via Dupire.
Key things to notice:
Local vol is always more extreme than implied vol. Because implied vol averages over paths, it smooths out the local vol peaks and troughs. Increase the curvature and watch the local vol wings become much more pronounced.
Adding skew shifts the local vol asymmetrically. Negative skew (typical in equity/crypto markets) produces higher local vol on the left (low spot) and lower on the right.
Why it matters for exotics
For vanilla options, implied vol is enough. For anything path-dependent — barriers, Asians, lookbacks — you need to know where the vol is along the path, not just the terminal average.
A down-and-out call pays off like a regular call unless the price touches a barrier on the way. The probability of hitting the barrier depends on the vol the price experiences near the barrier level. Two different local vol surfaces can produce the same vanilla call price but wildly different barrier prices.
This is the core argument for local vol: it makes your exotic prices consistent with the vanillas. Any barrier or path-dependent option priced under local vol is guaranteed not to contradict observed vanilla prices. You get one unified model instead of ad-hoc adjustments.
The caveat: local vol predicts wrong smile dynamics (vol is deterministic, so it cannot surprise). In practice, desks use stochastic local vol (SLV) — local vol for calibration accuracy, plus a stochastic component for realistic dynamics.
Where to go next:
SVI Parameterization — the model used to build the implied surface that feeds into Dupire
SABR Model — a stochastic vol alternative with better dynamics
Interpolation Methods — all methods compared