THE DUPIRE FORMULA
MARK H.A. DAVIS
1. Introduction. The Dupire formula enables us to deduce the volatility function in a local volatility model from quoted put and call options in the market1. In a local volatility model the asset price model under a risk-neutral measure takes the form
(1.1) dSt= μ(t)Stdt + ˜σ(t, St)StdWt.
Here μ(t) = r(t)−q(t) in the usual notation, r(∙), q(∙) are possibly time varying, but deterministic and W is Brownian motion. The forward price for delivery at time T is then Ft = F (t, T ) = Stexp(RT
t μ(s)ds) and it is easily seen that Ft is a martingale, satisfying
dFt = σ(t, Ft)FtdWt, where
σ(t, x) = ˜σ(t, xe−RtTμ(s)ds),
and of course FT = ST. If we have a call option with strike K and exercise time T then its forward price in this model is
(1.2) C(T, K) =
Z ∞ K
(x − K)φ(T, x)dx
where φ(T, ∙) is the density function of the r.v. ST (assumed to exist). The actual market price at time 0 would be p = C(T, K)e−RtTr(s)ds. If we differentiate (1.2) twice we obtain
∂C
∂K = −Z ∞ K
φ(x)dx = Φ(T, K)− 1 (1.3)
∂2C
∂K2 = φ(T, x) (1.4)
where Φ(T, ∙) is the distribution function of ST. These relations are known as the Breedon-Litzenberger formulas.
2. The forward equation. For any t < T and (say bounded measurable) function h let v(t, x) = E[h(FT)|Ft = x]. We have by iterated conditional expectation
E[h(FT)] = E [E[h(FT)|Fs]]
=Z ∞ 0
v(t, x)φ(t, x)dx.
Since the LHS does not depend on t then neither does the RHS, so differentiating w.r.t. t,
(2.1) 0 =Z ∞
0
∂v
∂tφdx + Z ∞
0
v∂φ
∂tdx.
We know from Itˆo calculus that v satisfies the backward equation
∂v
∂t +1
2σ2(t, x)x2∂2v
∂x2 = 0, v(T, x) = h(x) so with v0 = ∂v/∂x etc. (2.1) becomes
0 = −Z ∞ 0
1
2σ2x2v00φdx + Z ∞
0
v∂φ
∂tdx.
Integrating by parts twice in the first integral gives 0 =Z ∞
0
1
2(σ2x2φ)00−∂φ
∂t
v dx.
Since h and hence, essentially, v is arbitrary, we conclude that φ satisfies the forward equation
(2.2) ∂φ
∂t =1 2
∂2
∂x2(σ2(t, x)x2φ).
1Warning: The calculations presented here are formal. The formulas are correct (I hope!) but no attempt has been made to state conditions under which they are valid.
1
3. Dupire’s equation. From (1.2) we have
∂C
∂T(T, K) =Z ∞
K (x − K)∂φ
∂T(T, x) dx
=1 2
Z ∞ K
(σ2x2φ)00(x − K) dx [using (2.2)]
= −1 2
Z ∞ K
(σ2x2φ)01 dx [integrating by parts]
=1
2σ2(T, K)K2φ(T, K)
=1
2σ2(T, K)K2∂2C
∂x2(T, K). [using (1.4)].
This gives us Dupire’s formula for the local volatility, expressed entirely in terms of the volatility surface C(∙, ∙):
(3.1) σ(T, K) = 1
K
s2 ∂C/∂T (T, K)
∂2C/∂x2(T, K).
4. Constructing a local volatility model. The procedure is as follows.
1. Assemble the data, consisting of a matrix of quoted option prices {C(Ti, Kji), i = 1, . . . , N, j = 1, . . . , M (i)} together with the yield curve (to determine r(t)) and dividend information (to determine q(t)).
2. Interpolate and extrapolate these prices (or, more likely, the corresponding Black-Scholes implied volatilities) to produce a smooth volatility surface C.
3. Calculate σ(T, F ) from (3.1) and compute the corresponding ˜σ(T, S) 4. The price model is St given by (1.1).
5. Now we can calculate the prices of other options by finite-difference methods or Monte Carlo.
2