Chapter 11 Local-Stochastic Volatility
In these notes we combine the two models of the previous chapters. Local volatility fits every European option exactly but moves the smile wrongly; stochastic volatility moves it sensibly but does not fit. We derive the condition under which a model can do both at once, find that it defines the model implicitly rather than explicitly, and describe how that circularity is broken in practice.
11.1 Taking the Good Half of Each
Two chapters have left us with two models and a complaint about each.
Local volatility fits the market’s European options perfectly, because Dupire’s formula constructs it to. Its dynamics are wrong: the backbone comes out at twice the skew, which is outside the range the market actually behaves in, so the delta is systematically wrong.
Stochastic volatility has sensible dynamics, because the backbone and the skew are controlled by different parameters and can be set independently. It does not fit: SABR with four parameters cannot pass exactly through a few dozen quoted strikes and expiries, and Heston with five does no better. For a desk that has to reprice the market to the penny — because it is marking a book against those very quotes — a fit that is close is not a fit.
The idea is to keep the fit of the first and the dynamics of the second by multiplying them together.
Definition 11.1 (Local-stochastic volatility).
A local-stochastic volatility model is
where is whatever stochastic variance process one likes — Heston’s, say — and , a deterministic function of time and level, is called the leverage function.
The instantaneous volatility is now a product of two things. The factor is random and carries the dynamics: the vol-of-vol, the correlation, the mean reversion, everything that decides how the smile moves and what a forward smile looks like. The factor is deterministic and carries the fit: it is a dial at each point of the plane, to be turned until the model’s European prices agree with the market’s.
The division of labour is the whole design. The question is whether it works — whether there really is a choice of making the fit exact, whatever the stochastic part is doing. There is, and chapter 9 has already given us the tool to find it.
11.2 The Calibration Condition
Theorem 11.2 (The leverage function).
A local-stochastic volatility model reproduces the market’s European option prices at all strikes and expiries if and only if
| (11.1) |
where is the Dupire local volatility of the market’s own surface. Equivalently,
| (11.2) |
Proof.
Chapter 9 established two facts and this is their intersection.
Gyongi’s theorem says that a process with random volatility has the same one-dimensional distributions — and therefore the same European option prices — as the local volatility model whose squared volatility is the conditional expectation of the true squared volatility. Here the instantaneous volatility of is , so the mimicking local volatility is
where comes out of the conditional expectation because, conditional on , it is the number — it is a deterministic function of the thing being conditioned on.
Dupire’s formula says that a set of European prices determines exactly one local volatility surface, namely . So the model matches the market if and only if its mimicking local volatility is the market’s, which is (11.1). ∎
Dupire’s local volatility is not the model’s volatility. It is an average of the model’s volatility, taken over all the ways the market could have arrived at the level at time . The leverage function is therefore a correction factor: at each point, take the local volatility the market demands, and divide by the volatility the stochastic part is already delivering there on average. Whatever is left over is what must supply.
Example 11.1 (The two extremes).
Two sanity checks, both of which should be reassuring.
If the variance is not random at all — say — then and (11.2) gives . The leverage function is the local volatility surface, and the model is the local volatility model of chapter 9. Nothing has been gained and nothing lost.
If instead the stochastic volatility model already fits the market on its own, then by the same theorem its own mimicking local volatility is already , so and . The leverage function switches itself off when it is not needed.
Between the two, measures exactly the part of the market’s smile that the stochastic volatility model failed to produce by itself. A well-chosen stochastic part leaves close to one and smooth; a badly chosen one leaves doing all the work, which puts us back in chapter 9 with extra steps.
The one thing in (11.2) that is easy to read past is the word conditional. It would be much more convenient if the denominator were , the plain average variance, which one could compute once and be done with. It is not, and the difference is not small. The following example is small enough to compute by hand and shows why.
Example 11.2 (Where the conditioning bites).
Take the crudest possible stochastic volatility: at time zero a coin is tossed, and the forward is lognormal for the rest of its life with volatility either or , each with probability one half. So is random but constant along each path, and , whose square root is .
Now ask for at , with the forward at . Observing where the underlying ended is evidence about which coin came up, and Bayes’ rule turns that evidence into a posterior. Writing and for the two lognormal densities,
Evaluating:
Read the middle row first. If the forward has barely moved, it was probably a quiet path, so the low volatility state is more likely than it was a priori. If the forward has moved a long way, it was almost certainly the noisy one.
The bottom row is what (11.2) divides by, and it ranges from to — while the unconditional figure is a flat everywhere. Using the unconditional average would leave the leverage function wrong by four volatility points at the money and eight in the wing, in opposite directions. The model would then miss the market by roughly that much, which is a hundred times any bid-offer spread.
- Conditional, √E[v|S_T=K]
- Unconditional, √E[v]
Show the model behind this figure (2 functions)
TwoRegime::conditional_variancequant/src/lsv.rs/// `E[v | F_T = k]`, by Bayes' rule.
///
/// Observing where the forward ended is evidence about which state was
/// drawn, and the posterior weights the two variances. A move far from the
/// start is strong evidence for the noisy state, which is why the answer
/// rises in both wings.
pub fn conditional_variance(&self, f: f64, t: f64, k: f64) -> f64 {
let lo = self.weight * lognormal_density(f, t, self.vol_low, k);
let hi = (1.0 - self.weight) * lognormal_density(f, t, self.vol_high, k);
let total = lo + hi;
if total <= 0.0 {
// Beyond the reach of both densities; the limit is the noisier one,
// since it dominates arbitrarily far out.
return self.vol_high.powi(2);
}
(lo * self.vol_low.powi(2) + hi * self.vol_high.powi(2)) / total
}TwoRegime::leveragequant/src/lsv.rs/// The leverage function this regime model would need, against a target
/// local volatility surface.
///
/// With a flat target the shape is entirely the conditioning: `L` dips where
/// the stochastic part is already supplying enough volatility and rises
/// where it is not. That is the general shape, and the reason a well-chosen
/// stochastic part leaves `L` close to one.
pub fn leverage(&self, f: f64, t: f64, k: f64, target_local_vol: f64) -> f64 {
target_local_vol / self.conditional_variance(f, t, k).sqrt()
}Notice also what the conditional expectation is shaped like: a hump, low in the middle and rising in both wings. So , which divides by its square root, is high in the middle and low in the wings. That is the general shape, and it has a plain reading — the stochastic part already supplies plenty of volatility in the tails, because that is what a random volatility does, so the leverage function has less work to do there and more in the middle.
Remark (Why the mixing matters).
It is tempting to conclude that since can always be found, the choice of the stochastic part does not matter. The opposite is true, and the reason is the point of the whole construction.
Everything about the model’s dynamics — the backbone, the forward smile, the vega — comes from the stochastic part, because is deterministic and contributes no randomness at all. And the fit is exact regardless. So the stochastic part is now a free choice that is invisible in the calibration and decisive for everything else, which is chapter 10’s lesson repeating one level up. Desks parametrise it explicitly with a mixing weight: dial it to zero and the model degenerates to pure local volatility, dial it up and the vol-of-vol takes over, and the vanilla prices do not move either way. What moves is every exotic in the book.
11.3 The Circularity, and How It Is Broken
Equation (11.2) looks like a formula for . It is not, quite, and the reason deserves a clear look.
The right-hand side contains , a conditional expectation taken under the law of the process . But the law of depends on , because is in its diffusion coefficient. So appears on both sides: it is defined in terms of a distribution that it itself determines.
Remark (What kind of equation this is).
An equation whose coefficients depend on the law of its own solution is called a McKean-Vlasov, or mean-field, stochastic differential equation. It is a genuinely different object from an ordinary SDE. The usual existence and uniqueness theorems do not apply, and for local-stochastic volatility in particular the question of whether a solution exists for a given market surface is, at the time of writing, not settled in general. Models are calibrated and traded anyway.
There are two standard ways to break the circle, and both work by stepping forward in time, so that at each step the conditional expectation is computed from a distribution that is already known.
The forward equation approach
Write for the joint density of . It satisfies a two-dimensional Fokker-Planck equation whose coefficients involve , and the conditional expectation we need is a ratio of integrals of it:
So march the density forward on a grid. At each time step, the density is known from the previous step; compute the conditional expectation from it by the ratio above; set on that time slice by (11.2); use that to take the density one step further. The circularity is broken because is only ever needed at a time when has already been computed.
This is accurate and it is fast in two dimensions. It does not survive a large number of factors, because the grid does not.
The particle method
The alternative, due to Guyon and Henry-Labordere, replaces the density with a cloud of simulated paths.
-
1.
Start particles at . Take large — tens of thousands.
-
2.
At each time step , having the particles’ current positions :
-
(a)
estimate the conditional expectation from the cloud itself, by a kernel-weighted average over particles whose is near ,
where is a smoothing kernel of bandwidth ;
-
(b)
set on this time slice by (11.2);
-
(c)
evolve every particle one step using that .
-
(a)
-
3.
The leverage function is the collection of the slices.
The usual first choice for the kernel is Gaussian,
| (11.3) |
so a particle sitting exactly at counts fully, one a bandwidth away counts about six tenths as much, and one three bandwidths away counts for nothing that matters. Compactly supported kernels — Epanechnikov, , or the quartic — are common in production for the plain reason that they let the sum skip every particle outside the window. The estimator is Nadaraya-Watson kernel regression, the standard nonparametric way of reading a conditional expectation off a scatter of points; nothing about it is specific to finance.
The bandwidth cannot be a constant, because the cloud spreads as it goes. A common choice scales as
the tracking the width of the cloud and the being the rate at which a kernel bandwidth should shrink as the sample grows — slowly, because a bandwidth that shrinks too fast leaves too few neighbours to average over.
Structure (A grid moves the values, a cloud moves the nodes).
The two methods are not different in what they compute. Both need the law of at each date, and both march it forward. They differ only in how they hold it, and chapter 3 already supplied both ways.
The forward equation approach carries the density itself and pushes it with the adjoint , at nodes the modeller fixes in advance. The particle method carries a sample and pushes each member with the process whose generator is ; the empirical measure
converges to the same density the grid was computing. So the particles are not an approximation to something other than the density. They are the density, sampled instead of tabulated: a grid fixes where the nodes are and lets the values on them move, while a cloud fixes the values — every particle is worth , always — and lets the nodes move.
That is the whole of the difference, and it is what decides which one survives a third factor. A grid has to cover wherever the process might go, so its cost grows exponentially in the number of factors, and most of that cost is spent on regions the process visits rarely. A cloud goes where the process actually goes, so it never spends anything on a region the process ignores, and its error stays whatever the dimension. Trading accuracy per node for independence from dimension is the bargain every Monte Carlo method strikes; here it is the difference between a model with two factors and a model with more.
Notice that the particles interact. Each one’s next step depends on where all the others currently are, through the conditional expectation — which is exactly the mean-field structure of the equation being solved, appearing in the numerical scheme as a set of particles that cannot be simulated independently. That is the price of the method and also the reason it is faithful to the problem.
Two practical points decide whether it works. The bandwidth trades bias against noise in the usual way, and it must widen in the tails where particles are sparse. And in regions the process rarely visits, the denominator of (11.2) is estimated from a handful of particles, so there is noise; production implementations cap and floor it, and accept that the model’s wings are the least trustworthy part of it — which is unfortunate, since the wings are what the exotics are usually sensitive to.
11.4 The Mixing Weight
Since the fit is exact whatever the stochastic part does, desks make the freedom explicit and give it a dial.
| (11.4) |
Two things about (11.4). The parameter does not appear in the equation for at all: it scales , the diffusion of the variance, and nothing else. And carries a subscript because it is not chosen — it is whatever Theorem 11.2 returns once is fixed,
| (11.5) |
So and are not two knobs. Turning the first determines the second, and the reason the fit survives is that the calibration condition rearranges to
| (11.6) |
whose right-hand side is the market’s and contains no . That is the precise sense in which the weight tunes a balance: the product is pinned, and decides how it is divided between a factor that is random and a factor that is not.111checked at every setting.
The two ends are then immediate. At the variance is deterministic, so the conditioning in (11.5) does nothing, , and leaves the price equation reading exactly. At the stochastic part supplies as much of the smile as it can and is left correcting the remainder.
Calculation 11.3 (What the dial actually moves).
In the coin-toss model of Where the conditioning bites above, the vol-of-vol is the gap between the two volatilities, so closes that gap towards their common mean while holding the mean variance fixed — which isolates the randomness of the variance from its level, so that what moves is the split rather than the total.
Take a flat local volatility surface at , so that any structure in is the stochastic part’s doing and not the market’s. At the leverage function is flat at : with a deterministic variance there is nothing strike-dependent for it to do. At it runs from at the money down to in both wings.222measured.
So the dial does not scale ; it changes its shape, from a constant to a hump with a range half its own height. That shape is the smile the stochastic part now generates by itself, being taken back out again — which is the division of labour of this chapter, made visible as a single function.
Recalibrating at each setting always succeeds, by Theorem 11.2.
-
-
At the variance is deterministic, the conditional expectation in (11.2) is just its value, and absorbs the whole surface. The model is local volatility: exact fit, backbone twice the skew, no vega.
-
-
At the stochastic part produces most of the smile on its own and is a modest correction near one. The dynamics are the stochastic model’s.
-
-
In between, the two are blended in a proportion the desk chooses.
Every setting of prices every vanilla option identically — to the penny, by construction. And the prices of the exotics move steadily across the range, often by several percent of premium between the ends. So is a parameter that changes the answer, does not change the calibration, and therefore cannot be determined by it.
This is the third time in three chapters that we have met the same shape: in chapter 10, the choice of stochastic part here, and now. The right response is not to search harder for a way to pin it down from vanillas — Gyongi’s theorem says there is none — but to treat it as what it is. Desks mark by policy, revalue the book at both ends of the range, and carry the difference as a reserve. A model risk that has been measured and provisioned for is a different thing from one that has been assumed away.
Remark (The forward smile, concretely).
The clearest place the difference shows is the forward smile.
Consider an option that will be struck at the money in one year and expire a year later — a forward starting option, the building block of a cliquet. Its value depends entirely on what the smile looks like in a year.
Under local volatility, conditional on the underlying reaching some level in a year, all remaining randomness is Brownian, and the smile from that point on is close to flat. Under a model with genuine vol-of-vol, the variance in a year is itself uncertain, and that uncertainty produces a smile then just as it does now. The prices differ by a lot, and the observable forward smiles in liquid markets are much closer to the second. Since hides the difference in the vanillas, the forward starting option is one of the few instruments that could tell the two apart — which is exactly why it is used to calibrate where it trades.
11.5 What Has Been Bought
Close the loop back to the complaint that started the chapter.
The model reproduces every European option price exactly, by construction, through . It reproduces them for any choice of the stochastic part, so that choice is left entirely free.
That freedom is then spent on the things chapter 10 showed vanilla options cannot see. The correlation and the vol-of-vol set the backbone, and therefore the delta. The mean reversion of the variance sets the maturity term structure — how fast the skew decays as the expiry lengthens — and, when today’s variance sits away from its long-run level, how quickly the forward smile settles to its stationary shape. Both bear on the price of anything forward starting, though chapter 10’s measurement is the thing to keep in mind here: in a model with no calendar in it the forward smile does not flatten as the start date recedes, it settles. And because volatility is now a genuine risk factor, the model is incomplete in the sense of chapter 4 — there is a vega, it is real, and it can be hedged with other options rather than being an artefact.
This is the standard equity and foreign exchange exotics model, and the pattern is more general than the setting. When a model must match a set of prices and also behave sensibly, the productive move is often to split it into a part that is forced by the fit and a part that is free, and then to be explicit that the free part is a choice that the calibration did not make for you.
Chapter 12 applies the same idea to interest rates, where the state is a curve rather than a number, and where the analogue of the leverage function is a local volatility function of the model’s own state variables.
References
-
-
Guyon, J., & Henry-Labordere, P. (2012). Being particular about calibration. Risk, 25(1), 88–93.
-
-
Ren, Y., Madan, D., & Qian, M. Q. (2007). Calibrating and pricing with embedded local volatility models. Risk, 20(9), 138–143.
-
-
Lipton, A. (2002). The vol smile problem. Risk, 15(2), 61–65.