SVI Volatility Model: Fitting Total Variance Without Static Arbitrage
For educational purposes only; not investment advice.
Direct answer
Section titled “Direct answer”SVI, or Stochastic Volatility Inspired, is a parametric representation of implied total variance across strikes for an expiration. In its Raw SVI form:
w(k) = a + b{ρ(k−m) + √[(k−m)² + σ²]}
where w(k) = σ_imp²(k,T)T and k = ln(K/F_T) is log-forward moneyness. Raw SVI uses five parameters to turn discrete option quotes into a smooth smile for interpolation, marking, Greeks, and relative-value diagnostics.
Despite its name, a fitted SVI slice is not by itself a stochastic process or a forecast of future volatility. It describes a static risk-neutral price surface. Separate choices determine how slices connect across maturities and how the surface moves through time.
What the five parameters control
Section titled “What the five parameters control”a: vertical total-variance level, but not necessarily ATM variance.b ≥ 0: overall scale of the left and right wing slopes.−1 < ρ < 1: asymmetry; negativeρmakes the left asymptotic slope larger than the right.m: horizontal location of the smile’s center in log-moneyness.σ > 0: smoothness and width around the center; this parameter is not implied volatility.
The asymptotic total-variance slopes are b(1−ρ) on the left and b(1+ρ) on the right. The minimum total variance is:
w_min = a + bσ√(1−ρ²)
so nonnegative total variance requires a + bσ√(1−ρ²) ≥ 0. These basic restrictions do not guarantee absence of butterfly arbitrage.
For a twice-differentiable total-variance smile, a widely used density condition is:
g(k) = [1 − kw'(k)/(2w(k))]² − [w'(k)²/4][1/w(k)+1/4] + w''(k)/2 ≥ 0
for all relevant k, together with appropriate wing behavior. A negative g(k) corresponds to a negative risk-neutral density in the continuous-strike construction. Robust implementations enforce analytic no-arbitrage regions or test a sufficiently wide, dense grid and the wings; visual smoothness and low RMSE are insufficient.
One slice is not a surface
Section titled “One slice is not a surface”Calibrating every expiration independently can create crossings through time. Under consistent forward and discount conventions, total variance should not decrease with maturity at fixed log-forward moneyness in a standard no-calendar-arbitrage construction. SSVI and related parameterizations link slices with explicit restrictions. Event expirations can create genuine steps in total variance; no-arbitrage control should preserve valid event information rather than cosmetically smoothing it away.
Example: reading one Raw SVI slice
Section titled “Example: reading one Raw SVI slice”Let T = 0.25 year and:
a = 0.01, b = 0.10, ρ = −0.5, m = 0, σ = 0.20
The positivity minimum is:
w_min = 0.01 + 0.10×0.20×√(1−0.5²) = 0.02732 > 0
Evaluate three log-moneyness points:
k |
Total variance w(k) |
IV = √[w(k)/T] |
|---|---|---|
−0.20 |
0.04828 |
43.95% |
0 |
0.03000 |
34.64% |
+0.20 |
0.02828 |
33.64% |
At k = 0:
w(0) = 0.01 + 0.10×0.20 = 0.03000
At k = −0.20:
w(−0.20) = 0.01 + 0.10[0.10 + √(0.20²+0.20²)] = 0.04828
The negative ρ produces a steeper left wing. Its asymptotic slopes are 0.10(1−(−0.5)) = 0.15 on the left and 0.10(1+(−0.5)) = 0.05 on the right.
This calculation proves neither a good market fit nor absence of static arbitrage. The full slice still needs the g(k)/density and wing checks, and neighboring expirations need calendar checks. Also, the values are annualized IV derived from total variance; comparing w rather than raw IV is essential across maturities.
Calibration and production checklist
Section titled “Calibration and production checklist”- Fix one expiration and derive a synchronized forward and discount factor from reliable inputs or put-call parity.
- Convert every strike to
k = ln(K/F_T)and every valid IV tow = IV²Tusing one clock. - Prefer executable OTM quotes; document treatment of zero Bids, crossed markets, stale quotes, corporate actions, and deep wings.
- Fit price, IV, or total-variance errors with weights tied to Vega, Bid-Ask width, and liquidity; report the chosen objective.
- Use parameter bounds and multiple starting points; Raw SVI parameters can compensate for one another.
- Check fitted option prices against Bid/Ask, not only a statistical average error.
- Enforce nonnegative total variance, butterfly/density constraints, and valid asymptotic wings.
- Test calendar monotonicity across all expirations in consistent coordinates and preserve explainable event steps.
- Inspect interpolation between expirations and extrapolation beyond quoted wings; most risk can sit outside the fit region.
- Recompute prices and Greeks on dense strike/maturity grids and compare numerical derivatives across grid sizes.
- Mark missing-node estimates as model values, not market observations.
- Monitor parameter jumps and residuals through time; a stable price surface can have unstable Raw parameters.
- Do not treat a quote’s distance from SVI as arbitrage until executable package prices, fees, dividends, and constraints are checked.
- Version the data, forward curve, solver, constraints, weights, and fallback rules so a mark can be reproduced.
Common misconceptions
Section titled “Common misconceptions”- “SVI is a stochastic-volatility forecasting model.” A calibrated slice is a static implied-total-variance parameterization.
- “
σis the option’s implied volatility.” It is Raw SVI’s center-width parameter; IV is√(w/T). - “
ais ATM variance.” Other parameters andmalso determine the value and minimum near ATM. - “Five valid parameter bounds make the smile arbitrage-free.” Butterfly, wings, and cross-maturity calendar conditions remain.
- “A lower RMSE is always a better surface.” It can fit noise or violate economically critical constraints.
- “Each expiry can be fit independently.” Good slices can cross and imply calendar arbitrage when combined.
- “An SVI residual is a trade signal.” Bad data, illiquidity, special dividends, and different execution costs can explain it.