Phase 15 - Lesson 15.3

Local Volatility and the Dupire Equation

The unique diffusion that reprices the entire surface today - extracted directly from option prices.

⏱ 55 min● Advanced🔗 Prereqs: 15.2
↖ Phase 15 hub
Builds on: 15.2 showed the smile means \(\sigma\) depends on strike; local vol makes it a function of \(S\) and \(t\).
Leads to: 15.4 replaces the deterministic local vol with its own stochastic process.

Learning Objectives

Click a status chip to cycle: Not started → In progress → Studied → Practiced → Needs review → Mastered.

Key Vocabulary

Local volatility \(\sigma_{\text{loc}}(S,t)\)
A deterministic function giving the instantaneous vol when the spot is \(S\) at time \(t\).
Dupire equation
The PDE expressing \(\sigma_{\text{loc}}^2\) in terms of strike/maturity derivatives of the call surface.
Forward equation
A PDE for the price as a function of strike and maturity (Fokker–Planck in the density), not spot and time.
Calibration
Choosing model parameters/functions so model prices match all quoted option prices.
Forward smile
The implied-vol smile the model predicts for options starting at a future date - a dynamics property.
Total implied variance
\(w(k,T)=\sigma_{\text{imp}}^2(k,T)\,T\), the natural coordinate for surface arbitrage conditions.
Effective vol
The observation that \(\sigma_{\text{imp}}\) behaves like an average of \(\sigma_{\text{loc}}\) along paths to the strike.

Intuition & Motivation

Intuition
The smile tells us one constant volatility fails. The simplest fix keeps a single Brownian driver but lets the volatility depend on where the stock is and what time it is: \(\sigma=\sigma_{\text{loc}}(S,t)\). Remarkably, Dupire showed that if you know the price of every European call today - the whole surface \(C(K,T)\) - there is exactly one such local-vol function that reprices them all, and it can be read off directly by differentiating the surface. Local vol is therefore the unique one-factor diffusion consistent with today’s market. Its blessing (perfect fit) and curse (wrong dynamics) both flow from that uniqueness.

The model

Under the risk-neutral measure the local-volatility model replaces the constant \(\sigma\) with a function of state and time:

\[dS_t=r\,S_t\,dt+\sigma_{\text{loc}}(S_t,t)\,S_t\,dW_t.\] (15.7)

This is still a one-factor Markov diffusion, so every European option has a unique price. The question Dupire answered is the inverse one: given the observed surface of call prices, what \(\sigma_{\text{loc}}\) produced it?

The Dupire equation

Treating the call price as a function of strike \(K\) and maturity \(T\) (the forward view), Dupire’s formula is

\[\sigma_{\text{loc}}^2(K,T)=\frac{\dfrac{\partial C}{\partial T}+rK\dfrac{\partial C}{\partial K}}{\tfrac12 K^2\dfrac{\partial^2 C}{\partial K^2}}.\] (15.8)

Every quantity on the right is observable from the surface: the calendar slope \(\partial C/\partial T\), the strike slope \(\partial C/\partial K\), and the strike curvature \(\partial^2 C/\partial K^2\) (which, by Breeden–Litzenberger, is the risk-neutral density up to discounting). So \(\sigma_{\text{loc}}\) is extracted, not assumed.

Key Idea
Dupire (15.8) makes local vol the unique diffusion that exactly reprices all of today’s European options. For the fraction to be well defined and positive, the surface must be free of calendar arbitrage (numerator > 0) and butterfly arbitrage (denominator > 0, i.e. a non-negative density). Those are the arbitrage constraints we formalize in 15.5.

Where it comes from

Sketch: the risk-neutral density \(q(K,T)=e^{rT}\partial^2 C/\partial K^2\) satisfies the Fokker–Planck (forward Kolmogorov) equation for the diffusion (15.7). Integrating that PDE twice in the strike variable and using the call as a double integral of the density turns the forward equation for \(q\) into the forward equation for \(C\), which rearranges to (15.8). It is a change of viewpoint from ‘evolve the density’ to ‘read off the volatility’.

Worked Example - From a total-variance surface to a local variance (in coordinates)
1
In log-moneyness \(k=\ln(K/F)\) and total implied variance \(w(k,T)=\sigma_{\text{imp}}^2 T\), Dupire (15.8) becomes Gatheral’s form \(\sigma_{\text{loc}}^2=\dfrac{\partial w/\partial T}{1-\frac{k}{w}\frac{\partial w}{\partial k}+\frac14\big(-\frac14-\frac1w+\frac{k^2}{w^2}\big)(\frac{\partial w}{\partial k})^2+\frac12\frac{\partial^2 w}{\partial k^2}}\).
2
The numerator \(\partial w/\partial T\gt 0\) is the calendar no-arbitrage condition: total variance must increase with maturity.
3
The denominator is positive precisely when the slice has no butterfly arbitrage (a valid, non-negative density).
4
Reading it: local vol is roughly implied vol adjusted by the slope and curvature of the smile - steeper/curvier smiles bend the local-vol surface more.

Local vs implied vs stochastic

QuantityWhat it isDepends on
Implied vol \(\sigma_{imp}(K,T)\)A quoting device per optionStrike and maturity
Local vol \(\sigma_{loc}(S,t)\)Instantaneous vol in a diffusionCurrent spot and time (deterministic)
Stochastic volVol driven by its own random factorA second Brownian (15.4)

A useful heuristic (Dupire): implied vol behaves like a spatial average of local vol along paths to the strike, so local vol moves ‘twice as fast’ in moneyness as the implied skew - a rule of thumb for short maturities.

The catch: forward smile dynamics

Local vol fits today perfectly but predicts that the smile flattens and slides as spot moves, which contradicts the market’s observed ‘sticky’ smile. Exotic prices that depend on future smile dynamics (cliquets, forward-starting options) are therefore mispriced by pure local vol. This dynamic failure - not a fit failure - is the motivation for stochastic volatility.

Interactive: recover local variance from a smile slice

Common Mistakes to Avoid
  • Confusing local vol with implied vol: implied is per-option and static; local is the instantaneous vol of a diffusion.
  • Applying Dupire to a raw, noisy surface: the second derivative amplifies noise and can go negative - you must arbitrage-free-smooth first.
  • Believing a perfect fit today means correct dynamics: local vol’s forward smile is empirically wrong.
  • Forgetting the constraints: a negative numerator (calendar arbitrage) or negative denominator (butterfly arbitrage) makes \(\sigma_{loc}^2\lt 0\).
Quant Practitioner Tips
  • Always calibrate on an arbitrage-free, smoothed surface (e.g. SVI) before differentiating - never on raw quotes.
  • Work in total variance \(w=\sigma_{imp}^2 T\) and log-moneyness: the no-arbitrage conditions and Dupire are cleanest there.
  • Use local vol for vanilla-consistent pricing of mildly path-dependent payoffs; switch to stochastic/local-stochastic vol for forward-smile-sensitive exotics.
  • Check the extracted \(\sigma_{loc}\) is positive and smooth everywhere; ragged spots signal surface arbitrage upstream.

Knowledge Check

Q1 Medium
The Dupire equation is significant because it shows that:
Local vol equals implied vol at every strike
There is a unique one-factor diffusion that reprices all of today’s European options, extractable from the surface
Volatility must be stochastic
Option prices are independent of the density
Q2 Medium
For the Dupire local variance to be positive and well defined, the call surface must be free of:
Vega risk
Calendar arbitrage (numerator>0) and butterfly arbitrage (denominator>0, non-negative density)
Any skew
Interest-rate risk
Q3 Hard
The central practical weakness of the pure local-volatility model is that:
It cannot fit today’s vanilla prices
It has too many free parameters
It fits vanillas exactly but predicts unrealistic forward-smile dynamics, mispricing forward-starting exotics
It ignores the risk-free rate

Practical Exercise

(a) State the Dupire formula for \(\sigma_{loc}^2(K,T)\) and identify, term by term, which market observable each derivative corresponds to. (b) A junior quant computes \(\sigma_{loc}^2\) directly from bid/ask mid quotes and gets negative values in the wings. Give two distinct causes and the fix. (c) Explain why matching every vanilla today still does not guarantee correct prices for a forward-starting option.

▶ Show full solution

(a) \(\sigma_{loc}^2(K,T)=\big(\partial_T C+rK\,\partial_K C\big)/\big(\tfrac12K^2\partial_{KK}C\big)\). The numerator’s \(\partial_T C\) is the calendar slope of prices; \(\partial_K C\) (times \(rK\)) the carry/strike slope; the denominator’s \(\partial_{KK}C\) is the strike curvature = risk-neutral density (Breeden–Litzenberger).

(b) Negative \(\sigma_{loc}^2\) arises when (i) the numerator goes negative → calendar arbitrage in the quotes (total variance not increasing in \(T\)); or (ii) the denominator goes negative → butterfly arbitrage (a negative implied density), amplified because the second derivative magnifies quote noise. Fix: fit an arbitrage-free parametric/smoothed surface (e.g. SVI) first, then differentiate the smooth surface.

(c) A forward-starting option’s value depends on the future smile, i.e. on volatility dynamics, which today’s vanilla cross-section does not pin down. Local vol reproduces today’s prices but implies a specific (empirically wrong, flattening) forward smile, so its forward-starting prices are off. Many models share today’s vanillas yet differ on dynamics.

After the reveal, answer for yourself: Which is more dangerous for an exotics desk: a small static mis-fit or a wrong dynamic (forward-smile) assumption?

Lesson Summary

Local volatility keeps a single Brownian driver but lets \(\sigma=\sigma_{loc}(S,t)\) depend on state and time. Dupire’s equation extracts this function directly from strike/maturity derivatives of the call surface, making local vol the unique diffusion that exactly reprices all of today’s European options - provided the surface is free of calendar and butterfly arbitrage. Its blessing is a perfect static fit; its curse is unrealistic forward-smile dynamics, which motivates stochastic volatility.

Formula Sheet Additions

Dupire local volatility
\[\sigma_{\text{loc}}^2(K,T)=\frac{\partial_T C+rK\,\partial_K C}{\tfrac12 K^2\,\partial_{KK}C}\]
Reads local vol straight off the observed call surface; positivity encodes no calendar/butterfly arbitrage.
Error Log Checklist
  • Did I smooth to an arbitrage-free surface before differentiating?
  • Is the numerator (calendar) and denominator (density) positive everywhere?
  • Did I keep local vs implied vs stochastic vol conceptually distinct?
  • Did I flag that a perfect static fit does not imply correct dynamics?

Retrieval Practice

Close the lesson and answer from memory before checking. This is deliberate, effortful recall - the single highest-yield study action.

▶ Show retrieval prompts & answers
Q: Write the Dupire formula and say what makes local vol unique.
A: \(\sigma_{loc}^2=(\partial_T C+rK\partial_K C)/(\tfrac12K^2\partial_{KK}C)\); it is the unique one-factor diffusion that exactly reprices every European option in today’s surface.
Q: What two arbitrage conditions keep Dupire’s \(\sigma_{loc}^2\) positive?
A: No calendar arbitrage (numerator \(\gt 0\): total variance increases in \(T\)) and no butterfly arbitrage (denominator \(\gt 0\): non-negative risk-neutral density).
Q: Why does local vol misprice forward-starting exotics despite fitting all vanillas?
A: Those payoffs depend on future smile dynamics, which vanillas do not pin down; local vol implies an empirically wrong, flattening forward smile.

Flashcards

Click to flip. These feed the site-wide spaced-repetition queue.

Local volatility model
\(dS=rS\,dt+\sigma_{loc}(S,t)S\,dW\); one factor, deterministic state-dependent vol.
Dupire equation
\(\sigma_{loc}^2=(\partial_TC+rK\partial_KC)/(\tfrac12K^2\partial_{KK}C)\); extracts local vol from the surface.
Local vol weakness
Perfect static fit but flattening/wrong forward smile → mis-prices forward-starting exotics.

Completion Checklist

Confidence / mastery rating
Personal notes

Source References

This lesson synthesizes and paraphrases concepts from the sources below. No copyrighted text, problem sets, or solutions are reproduced. Return to the originals for full depth.