I ♡ VOL

Home › Blog › Quant Research

Local Volatility and Dupire's Formula: Fitting Every Option at Once

Quant ResearchBy QuantDaddyOctober 14, 20268 min readSeries: From Black-Scholes to the Vol Surface · Part 3

From Black-Scholes to the Vol Surface

A six-part series on how option markets price volatility, from the textbook model to the arbitrage-free surfaces used by professional desks.

  1. Black-Scholes and the Greeks
  2. Implied Volatility and the Smile
  3. Local Volatility and Dupire's Formula (you are here)
  4. Stochastic Volatility: the Heston Model
  5. The SABR Model
  6. Arbitrage-Free Surfaces: SVI and Mixtures of Lognormals

Part 2 showed that the volatility smile encodes the market's full probability distribution for each expiration. A natural next question is whether there is a model of how the price moves through time that reproduces every point on the surface at once. Local volatility gives the simplest possible answer: keep the Black-Scholes framework, but let volatility depend on the price level and on time.

The idea

In Black-Scholes, volatility is a single constant. In a local volatility model, it becomes a deterministic function of the current price and time:

dS / S = (r − q) dt + σloc(S, t) dW

There is still only one source of randomness, so options can still be hedged perfectly with the underlying, and the model remains complete. What changes is that the stock is more volatile in some regions than others. For an equity index, a local volatility surface that rises as the price falls naturally produces the downward skew seen in the market: paths that end at low strikes travel through high-volatility territory, which makes low-strike options more expensive.

The idea was developed independently in 1994 by Bruno Dupire and by Emanuel Derman and Iraj Kani, who built it on a binomial tree. Dupire's contribution was a striking result: if call prices are known for every strike and maturity, there is exactly one local volatility function consistent with them, and it can be written down explicitly.

Dupire's formula

With no dividends, Dupire's formula expresses local variance directly in terms of call prices C(K, T):

σloc²(K, T) = [ ∂C/∂T + r K ∂C/∂K ] / [ ½ K² ∂²C/∂K² ]

Each piece has an intuitive meaning. The denominator contains ∂²C/∂K², which Part 2 identified as the risk-neutral probability density: it measures how likely the price is to be near K at time T. The numerator is essentially the cost of extending the option's life slightly. Local variance is the ratio of the two: how much extra option value is created per unit of time, per unit of probability of being at that point.

Because traders think in implied volatility rather than prices, the formula is more often used in its implied-volatility form. Writing w(y, T) = σimp²T for total implied variance and y = ln(K/F) for log-moneyness, Jim Gatheral's version is:

σloc² = (∂w/∂T) / [ 1 − (y/w)(∂w/∂y) + ¼(−¼ − 1/w + y²/w²)(∂w/∂y)² + ½ ∂²w/∂y² ]

When the smile is flat, every derivative with respect to y vanishes and local variance is simply the slope of total variance in time, the forward variance between two maturities. Skew and curvature then adjust it strike by strike.

How local and implied volatility relate

Implied volatility skew compared with the steeper local volatility skew implied by it 10% 20% 30% 80% 90% 100% 110% 120% Local volatility Implied volatility
Illustration only. Near the money, the local volatility skew is roughly twice as steep as the implied volatility skew, because implied volatility behaves like an average of local volatility along the path from spot to strike.

A useful way to think about implied volatility in a local volatility world is as an average of local volatility along the most likely path from today's spot price to the option's strike. That intuition leads to a well-known rule of thumb: for short maturities and near the money, the local volatility skew is about twice as steep as the implied volatility skew. If the implied smile falls by one volatility point per 1% of moneyness, the local volatility surface falls by about two.

The rule explains why local volatility surfaces look more extreme than the implied surfaces they come from. It also hints at a problem. Local volatility is computed from derivatives of market data, including a second derivative in strike. Small irregularities in quotes are amplified, and any butterfly or calendar arbitrage in the input surface makes the denominator or numerator negative, producing negative local variance. In practice, local volatility is always computed from a smoothed, arbitrage-free parametric surface, which is the topic of Part 6.

Computing it in practice

A typical local volatility build on a trading desk follows the same steps:

  1. Clean the option quotes, remove contracts without bids and compute implied volatilities and forwards for each expiration, much as the Vol Surface page on this site does.
  2. Fit a smooth, arbitrage-free parametric form to each smile and interpolate across maturities so that total variance never decreases with time.
  3. Evaluate Gatheral's formula on a grid of log-moneyness and time using the analytic derivatives of the fitted surface rather than finite differences of raw data.
  4. Use the resulting grid in a partial differential equation solver or Monte Carlo simulation to price products, and check that vanilla options are repriced within their bid-ask spreads.

The quality of the result depends almost entirely on step 2. A local volatility surface is only as good as the implied surface it is derived from.

Why practitioners use it

For these reasons local volatility became the workhorse of equity derivatives desks in the late 1990s and remains a standard benchmark today.

Where local volatility goes wrong

Fitting today's surface perfectly is not the same as describing how the surface will move. Local volatility has two well-documented weaknesses, both related to dynamics.

The forward smile flattens

Because the local volatility function is fixed today, the smile the model predicts for future dates is determined by the shape of that function. For equity indices, the model's future smiles come out much flatter than the smiles actually observed in the market at any point in time. Products whose value depends on the smile at a future date, such as forward-start options and cliquets, are therefore systematically mispriced.

The smile moves the wrong way

In a 2002 paper, Patrick Hagan, Deep Kumar, Andrew Lesniewski and Diana Woodward showed that local volatility predicts that when the underlying price rises, the smile shifts to lower strikes, the opposite of the behavior observed in many markets. Since the hedge ratio of an option depends on how its implied volatility changes with spot, a model that gets this direction wrong can produce worse hedges than plain Black-Scholes, even though it fits today's prices perfectly. Their critique led directly to the SABR model in Part 5.

The lesson of local volatility is that a model can be calibrated to every price in the market and still be a poor description of risk. Matching today's prices is necessary, but how the model moves tomorrow matters just as much for hedging.

Toward stochastic volatility

The root cause of these problems is that local volatility makes volatility a deterministic function of price. In real markets, volatility has a life of its own: it can rise without the price moving, and it mean-reverts over time. Modeling volatility as a separate random process is the idea behind stochastic volatility models, starting with the Heston model in Part 4.

Key takeaways