Local vs. Stochastic Volatility Models

Local vs. Stochastic Volatility Models
Choosing between local and stochastic volatility models is like selecting between GPS navigation and weather forecasting—local vol tells you exactly where you are on the implied volatility surface, while stochastic vol predicts how that surface might shift beneath you. The model you pick determines your calibration accuracy, your hedge P/L, and whether your exotic book blows up during a vol spike. The practical point: there's no universally "correct" model—only the right model for your specific product, infrastructure, and risk tolerance.
Model Definitions and Dynamics (What Each Engine Actually Does)
Dupire Local Volatility
The dynamics:
dS = μS dt + σ(S,t) S dW
Volatility σ(S,t) is a deterministic function of spot price and time, extracted directly from the market's implied volatility surface. There's no randomness in vol itself—once you know where spot is and what time it is, you know the volatility exactly.
How calibration works: You invert the market's vanilla option surface using Dupire's formula to recover σ(S,t) at every strike and maturity. The result is a complete local volatility surface that prices every European vanilla option exactly by construction. Zero calibration error for vanillas (that's the whole point).
The key property most people miss: Local vol is not really a "model" in the traditional sense—it's a non-parametric interpolation device. It has no free parameters to tune. The entire surface is the model. This makes it extremely powerful for vanilla calibration but creates problems when you need the model to make predictions about vol dynamics (because it doesn't model vol dynamics at all—it assumes they're deterministic).
Why this matters: When you delta-hedge a barrier option using local vol, you're implicitly assuming that realized volatility will follow the pre-specified σ(S,t) surface exactly. If the market's actual vol behavior deviates from this deterministic path (and it always does), your hedge will leak P/L. The hedge error comes precisely from the thing the model ignores: stochastic vol movements.
Heston Stochastic Volatility
The dynamics:
dS = μS dt + √v S dW₁ dv = κ(θ − v) dt + σᵥ√v dW₂ Corr(dW₁, dW₂) = ρ
Variance v follows its own mean-reverting stochastic process, correlated with the spot price. This is a fundamentally different philosophy from local vol: instead of reading volatility off a pre-computed surface, you're modeling vol as a random variable with its own dynamics.
Parameter ranges (typical equity calibration):
- κ (kappa) ≈ 1.0–3.0: Speed of mean reversion. Higher κ means vol shocks dissipate faster. A κ of 2.0 implies a half-life of roughly 4 months for vol shocks.
- θ (theta) ≈ 0.04–0.10: Long-run variance level. θ = 0.04 corresponds to a long-run vol of 20%; θ = 0.09 means 30%.
- σᵥ (vol of vol) ≈ 0.3–0.8: How noisy the variance process is. Higher σᵥ generates fatter tails and steeper skew.
- ρ (rho) ≈ −0.7 to −0.3: Spot-vol correlation. Negative ρ is the skew generator—when spot drops, vol rises, producing the familiar equity put skew. ρ = −0.6 is a reasonable starting point for most equity indices.
- v₀: Initial variance, typically set to match the current ATM implied vol squared.
Calibration approach: Fit to the ATM term structure (pins down κ and θ) and the skew at key tenors (pins down ρ and σᵥ). Unlike local vol, Heston will leave residual calibration error, typically ±0.5 vols at the wings. You're trading perfect vanilla fit for a model that actually says something about vol dynamics.
The core principle: Heston's five parameters give you interpretable knobs that correspond to observable market features—mean reversion speed, long-run vol level, vol-of-vol, and spot-vol correlation. When you calibrate and get ρ = −0.65 for the S&P 500, that number tells you something real about how the market behaves. Local vol's surface, by contrast, is a black box that tells you nothing about dynamics.
SABR Model
The dynamics:
dF = σF^β dW₁ dσ = ασ dW₂ Corr(dW₁, dW₂) = ρ
SABR (Stochastic Alpha Beta Rho) models the forward price directly, with stochastic volatility and a CEV backbone. It was designed for interest rate and FX markets where the forward (not spot) is the natural variable.
Parameter ranges:
- α (alpha) ≈ 0.1–0.5: Initial volatility level. Pins the ATM vol.
- β (beta) ≈ 0.5–1.0: CEV exponent controlling the "backbone"—how ATM vol moves when the forward moves. β = 1 gives lognormal dynamics; β = 0 gives normal dynamics. Most rate desks use β = 0.5 as a compromise (and often fix it rather than calibrate it).
- ρ (rho) ≈ −0.5 to 0.5: Forward-vol correlation. Controls skew direction. In rates, ρ can be positive or negative depending on the regime—unlike equities where it's almost always negative.
- ν (nu) ≈ 0.3–0.8: Vol of vol. Controls smile curvature (wings).
Why SABR dominates rates desks: The Hagan et al. (2002) closed-form approximation lets you reprice an entire swaption cube in milliseconds. For a rates trading desk that needs to update thousands of positions in real time, this speed advantage is decisive. The tradeoff: the closed-form approximation breaks down for deep OTM options and long-dated expiries, where you need numerical methods anyway.
Model Comparison (The Table That Matters)
| Attribute | Local Vol | Heston | SABR |
|---|---|---|---|
| Dynamics | σ(S,t) deterministic | Stochastic variance (mean-reverting) | Stochastic vol with CEV backbone |
| Calibration target | All vanillas exactly | ATM term structure + skew | ATM + skew per expiry |
| Calibration error | Zero for vanillas | ~0.5 vols at wings | ~0.3 vols typical |
| Free parameters | None (surface is the model) | 5 (κ, θ, σᵥ, ρ, v₀) | 4 (α, β, ρ, ν) |
| Hedge behavior | Delta along deterministic surface | Delta includes vol co-movement | Similar to Heston |
| Best for | Barriers, digitals | Equity exotics, variance swaps | Rate/FX vanillas and exotics |
| Runtime | Fast (1D PDE) | Medium (2D PDE or FFT) | Very fast (closed-form approx) |
| Vol dynamics | Deterministic (unrealistic) | Stochastic with mean reversion | Stochastic, no mean reversion |
The point is: No single row decides the model—you're optimizing across all of them simultaneously. A model that calibrates perfectly but hedges poorly (local vol for vol-sensitive exotics) is worse than a model with small calibration error that hedges well (Heston for variance swaps).
Calibration Inputs and Tolerance (Getting the Numbers Right)
Heston Calibration Workflow
Step 1 — Collect market data: Gather ATM implied vols for at least four tenors (1M, 3M, 6M, 1Y) plus 25Δ put and call vols at each tenor. You need both the term structure and the skew to pin down all five parameters.
Step 2 — Set initial parameters: κ = 2.0, θ = 0.04, σᵥ = 0.4, ρ = −0.6, v₀ = current ATM vol². These are starting points (defaults, not prescriptions)—the optimizer will move them.
Step 3 — Optimize: Minimize the sum of squared errors between model and market implied vols. Most desks use Levenberg-Marquardt or differential evolution. Watch for local minima—Heston's objective function is notoriously multi-modal. Run the optimizer from multiple starting points.
Step 4 — Evaluate tolerance: Accept the calibration if RMSE < 0.5 vols across the calibration set. If you're pricing variance swaps or forward-starting options, tighten to 0.3 vols.
Calibration error example (equity index, 3M expiry):
| Strike | Market IV | Heston IV | Error |
|---|---|---|---|
| 25Δ Put | 32.0% | 31.2% | −0.8 vols |
| ATM | 24.0% | 24.0% | 0.0 vols |
| 25Δ Call | 20.0% | 20.5% | +0.5 vols |
RMSE = 0.54 vols. This is within acceptable tolerance for most equity exotic pricing. For wing-sensitive products (deep OTM digitals, one-touches), you'd want better wing fit—consider adding jump diffusion or using a local-stochastic vol hybrid.
SABR Calibration Nuance
SABR calibrates per expiry slice, not across the full surface simultaneously. This means the parameters (α, ρ, ν) can change discontinuously between tenors. The practical consequence: SABR doesn't naturally enforce smooth term-structure behavior. If you're pricing calendar spreads or forward-starting options, you need to interpolate SABR parameters across tenors carefully (or switch to a model that calibrates jointly).
Why this matters for production systems: A desk running SABR needs a robust parameter interpolation layer on top of the per-slice calibration. This is unglamorous plumbing work, but getting it wrong produces arbitrage in your own pricing grid—which traders will notice immediately.
Hedge Path Implications (Where Models Actually Disagree)
This is where model choice makes real money or loses it. Two models can agree on today's price for an exotic option but produce completely different delta and vega hedges—and the P/L difference compounds daily.
Local Vol Hedge Behavior
When spot moves from S₁ to S₂, local vol looks up σ(S₂, t) on the pre-computed surface and uses that as the new vol. The hedge implications:
- Deterministic gamma P/L: Your realized gamma is known in advance (given the surface), so gamma hedging is straightforward.
- No independent vega risk: Since vol is a function of spot, there's no separate vol dimension to hedge. Your delta already incorporates the vol change.
- The catch: If realized vol at S₂ differs from σ(S₂, t)—which it almost certainly will—your hedge leaks. The model assumed vol would be 28% when spot hit $95, but realized vol was 35%. That gap is unhedged P/L.
Stochastic Vol Hedge Behavior
When spot moves, vol can move independently (correlated but not deterministic). This creates:
- Vega P/L from vol moves: You now have explicit vol risk that needs separate hedging (typically with vanilla options at the relevant strike/tenor).
- Correlation effects: ρ < 0 means vol rises when spot drops, producing left-skew reinforcement. Your delta hedge needs to account for this co-movement.
- More realistic P/L attribution: The hedge P/L decomposes into delta, gamma, vega, and correlation components—each of which you can analyze and manage independently.
The Practical Difference (Barrier Option Example)
Consider a down-and-out put with barrier at 85% of spot and strike at 100%. As spot approaches the barrier:
- Local vol says: Vol at the barrier level is (say) 35% based on the surface. Delta reflects this specific, deterministic vol assumption. The model predicts a smooth transition in delta as spot approaches 85%.
- Heston says: Vol near the barrier could be anywhere from 28% to 42% depending on the variance path. Delta reflects the distribution of possible vol states, producing a different (typically smoother) hedge ratio.
The practical point: If the market typically experiences vol spikes when spot approaches barriers (which it does—barrier hedging flow creates its own vol impact), Heston better captures this dynamic. Local vol's deterministic assumption produces delta that's too aggressive near the barrier, leading to over-hedging in calm markets and under-hedging during vol spikes.
Runtime and Infrastructure Cost (The Engineering Constraint)
Models don't exist in a vacuum—they run on real hardware with real latency budgets.
| Model | Pricing Method | Runtime (single exotic) | Memory Footprint |
|---|---|---|---|
| Local Vol | 1D PDE or Monte Carlo | ~10 ms | Low |
| Heston | 2D PDE, FFT, or MC with vol | ~100 ms | Medium |
| SABR | Closed-form (Hagan approx) | ~1 ms | Minimal |
The engineering tradeoffs:
For real-time trading (market-making, systematic strategies), SABR's sub-millisecond speed is often the only viable choice. You can reprice your entire book between market data ticks.
For intraday risk management (Greeks computation, scenario analysis), local vol's 10ms runtime handles books of a few thousand positions within reasonable latency (seconds, not minutes).
For overnight batch pricing of complex exotics (autocallables, TARFs, worst-of baskets), Heston's 100ms per price is acceptable when you have hours to run. The accuracy gain justifies the runtime cost when you're pricing products worth millions.
For hybrid local-stochastic vol models (the current industry standard for many exotic desks), expect 500ms–2s per price. These models combine local vol's calibration precision with stochastic vol's realistic dynamics, but the computational cost is substantial. You'll need GPU acceleration or distributed computing for production-scale books.
Engine Selection Triggers (The Decision Checklist)
Use this checklist when selecting a volatility model for a new product or desk:
-
Use Local Vol when: You're pricing barriers, digitals, or products where the payoff depends on spot being at a specific level at a specific time; you require exact calibration to the vanilla surface (no residual error); and your infrastructure supports PDE solvers. Best for products where the vol path matters less than the vol level at specific spot-time coordinates.
-
Use Heston when: You're pricing variance-dependent products (variance swaps, vol swaps, forward-starting options); you need the model to produce sensible vol dynamics for scenario analysis and stress testing; and you want your hedges to account for spot-vol correlation. Accept ~0.5 vol calibration error at the wings as the cost of interpretable, stochastic dynamics.
-
Use SABR when: You're on a rates or FX desk; you need sub-millisecond repricing for real-time trading; and smile dynamics (how the smile moves with the forward) matter more than perfect smile fitting at any single snapshot. Fix β to reduce the parameter space and stabilize calibration.
-
Use a hybrid (local-stochastic vol) when: You need both exact vanilla calibration and realistic vol dynamics for complex path-dependent exotics. This is the current industry standard for structured products desks pricing autocallables and multi-asset products. Accept the computational cost and engineering complexity as the price of getting both properties.
Risk Implications (The Four-Sentence Summary)
Model risk in volatility modeling is not about getting the wrong price today—it's about getting the wrong hedge ratio every day for the life of the trade. A 0.5-vol calibration error on a 1-year variance swap might cost you basis points on day one, but a systematically wrong delta costs you every rebalance. The most dangerous situation is using local vol for vol-sensitive exotics and assuming the hedge is clean because the vanillas reprice perfectly. Perfect vanilla calibration is necessary but not sufficient—you also need the model's vol dynamics to approximate reality.
Next Steps
For building and interpreting the surface these models calibrate to, see Implied Volatility Surface Basics.
To validate model calibration and performance, review Model Calibration and Validation.
Related Articles

Smile and Skew Interpretation
Learn to read volatility smiles and skews as sentiment indicators, understand equity vs. FX patterns, and translate signals into hedge adjustments.

Model Risk Governance Practices
Define controls, inventory management, escalation procedures, and audit readiness for derivative pricing models under regulatory requirements.

Options on ETFs vs. Single Stocks
Most options traders start with single-stock options—buying calls on a company they follow, selling puts on a name they'd like to own—and never question whether the underlying itself is costing the...