Small Group Tutorials

Here to help students catch up, keep up, and move ahead. Book a consultation here.

How SABR Calibration Algorithms Fit Interest-Rate Volatility Smiles: Alpha, Beta, Rho, Nu, Hagan’s Approximation, Negative Rates and Calibration Failure

Reader question: A swaption market can quote one implied volatility at the money and different volatilities at lower and higher strikes. How can an algorithm compress that whole smile into a small set of parameters without pretending that one Black volatility fits every strike?

The SABR model does this by giving both the forward rate and its volatility stochastic dynamics. For a single expiry/tenor smile, the algorithm chooses parameters that make a SABR implied-volatility formula reproduce the observed strike-by-strike market smile as closely as possible.

The four familiar parameters are alpha, beta, rho and nu. Alpha sets the local volatility level, beta controls the elasticity or “backbone” of volatility with respect to the forward, rho couples forward and volatility shocks and strongly influences skew, and nu controls volatility-of-volatility and therefore much of the smile curvature. In practice beta is often fixed rather than freely estimated because beta and rho can partially substitute for one another in the fitted skew.

What this page owns — and what it does not

This article owns the interest-rate SABR calibration problem: market swaption/caplet smile quotes → SABR parameters → fitted volatility smile → calibration diagnostics.

It does not replace Black–Scholes option pricing, which explains the forward price-to-option-value map; implied-volatility inversion, which solves one option price back to one volatility; or Heston calibration, which owns a different stochastic-volatility model and characteristic-function machinery.

This is mathematical derivatives education. It is not a recommendation to trade any option, swaption, cap or floor.

The SABR state equations

In its standard unshifted form, a common SABR representation is:

dFt = αt Ftβ dW1,t

t = ν αt dW2,t

with:

dW1,tdW2,t = ρ dt.

Here F is the forward rate or forward-like underlying, α is its stochastic volatility scale, β is an elasticity exponent, ν is volatility-of-volatility and ρ is instantaneous correlation between the forward and volatility shocks.

Typical mathematical constraints are:

  • α > 0;
  • 0 ≤ β ≤ 1 in the standard CEV-style parameterisation;
  • −1 < ρ < 1;
  • ν ≥ 0.

A calibration algorithm should enforce parameter domains rather than hope the optimizer never walks outside them.

Why beta is called the backbone

Ignoring higher-order corrections, the at-the-money Black-style volatility scales approximately like:

σATM ≈ α / F1−β.

If β = 1, the backbone is approximately lognormal: ATM Black volatility is much less mechanically sensitive to the level of the forward. If β = 0, the forward diffusion is normal-like in level units. Intermediate beta values interpolate between those behaviours.

This is one reason beta affects smile dynamics, not merely static fit.

What rho does

Rho determines whether forward moves and volatility moves tend to occur together or in opposite directions.

A negative rho means a negative forward shock tends to coincide with a positive volatility shock. In an interest-rate smile this often creates higher implied volatility on one wing relative to the other. Positive rho tilts the skew the other way.

But rho is not “the skew parameter” in isolation. Beta also affects strike dependence, and nu changes how strongly stochastic volatility feeds into the wings. This coupling is why parameter identifiability must be tested rather than inferred from labels.

What nu does

Nu is the volatility of alpha itself:

dα/α = ν dW2.

When nu is small, the volatility process changes slowly and the smile tends to flatten toward a CEV-like shape. Larger nu increases the dispersion of future volatility states and generally increases smile curvature and wing richness.

A fitted high nu can be economically meaningful, but it can also be a symptom of trying to force a sparse or noisy set of quotes through a low-dimensional model.

The Hagan implied-volatility approximation

The original Hagan–Kumar–Lesniewski–Woodward SABR work became influential because it produced a fast asymptotic approximation for implied volatility. This lets a calibration evaluate the smile many times without solving a full stochastic PDE at every optimizer step.

A central pair of variables in the approximation is:

z = (ν/α)(FK)(1−β)/2 ln(F/K)

and:

x(z) = ln[(√(1−2ρz+z²)+z−ρ)/(1−ρ)].

The ratio z/x(z) is one mechanism through which stochastic volatility and correlation bend the strike smile. The complete approximation also contains beta-dependent strike terms and time corrections.

OpenGamma Strata exposes both Hagan lognormal and normal SABR volatility functions, including sensitivities to the model parameters, while QuantLib exposes SABR and shifted-SABR volatility functions. These production libraries are useful independent references for implementation testing.

Calibration is an inverse problem

Suppose one expiry/tenor smile supplies market implied volatilities:

mkt,i} at strikes {Ki}.

For parameter vector:

θ = (α, β, ρ, ν),

the model gives:

σSABR,i(θ).

A basic calibration solves:

minθ Σ wiSABR,i(θ) − σmkt,i]2.

The weights wi are part of the modelling choice. Equal-volatility weights, vega weights, inverse bid–ask-error weights and price-space errors answer slightly different questions.

Volatility-space fit versus price-space fit

Suppose a far out-of-the-money option has tiny vega. A seemingly large volatility error can correspond to almost no option-price error. Conversely, a one-volatility-point error near the money can be economically large.

A volatility-space objective treats the quoted smile geometry directly. A price-space objective transforms each model volatility back through the option-pricing formula and minimizes price residuals.

OpenGamma’s cap/floor SABR bootstrapper explicitly notes that calibration errors can be applied in price space after option volatility data are converted to prices. A robust implementation should document which residual space it is optimizing.

A practical three-parameter calibration

A common workflow fixes beta and solves only:

(α, ρ, ν).

Why fix beta? Because with one smile slice, beta and rho can be weakly identified separately. Many combinations can produce similar local skew.

One practical method is:

  1. choose beta from a modelling convention or broader backbone analysis;
  2. use the ATM quote to infer or initialize alpha;
  3. fit rho and nu to the wings;
  4. optionally refit alpha jointly;
  5. repeat from several initial guesses;
  6. retain the solution that satisfies parameter bounds and residual diagnostics.

MathWorks’ public SABR calibration documentation demonstrates both direct fitting and a method that fixes beta, infers alpha from the at-the-money volatility, and calibrates rho and nu.

Why one optimizer run is not enough

Nonlinear least squares can have:

  • flat directions;
  • local minima;
  • boundary solutions;
  • strongly correlated parameters;
  • different solutions with nearly identical residual error.

A production-style diagnostic therefore uses multiple starting points or a coarse parameter grid before local optimization. If substantially different parameter vectors fit equally well, the correct output is not “the optimizer found the truth.” It is “the smile does not identify the parameters uniquely enough for this use.”

Jacobian conditioning

Let the residual vector be:

r(θ) = σSABR(θ) − σmkt.

The calibration Jacobian is:

Jij = ∂ri/∂θj.

If two columns of J are nearly linearly dependent, two parameters move the smile in almost the same local direction. The inverse problem is ill-conditioned.

OpenGamma exposes SABR volatility adjoints, making parameter-sensitivity checks practical. A large condition number or unstable parameter covariance is evidence against interpreting each fitted parameter too literally.

Negative rates break naïve lognormal SABR

For non-integer beta, Fβ is problematic when the forward is negative. Rate markets therefore developed two major responses:

  • shifted SABR: model F+s and K+s for a positive shift s;
  • normal SABR: use a normal/Bachelier-style volatility representation, especially around beta = 0 or normal quoting conventions.

QuantLib documents a shifted-SABR function, and OpenGamma Strata includes shifted SABR parameter surfaces and a Hagan normal-volatility formula.

The shift is not cosmetic. Different shifts change the effective geometry of the smile and therefore the fitted parameters and sensitivities.

The shift is an additional modelling choice

If the market quotes shifted lognormal vols with a stated shift, the calibration should use that same quoting convention.

If the system chooses its own shift merely to make the formula run, then the shift becomes an implicit fifth model parameter even when the optimizer does not fit it.

A strong data object therefore stores:

  • volatility type: normal or lognormal;
  • shift;
  • forward;
  • expiry;
  • strike convention;
  • SABR parameters;
  • formula version.

One smile slice is not a whole volatility surface

A swaption volatility surface has at least expiry, underlying swap tenor and strike dimensions.

One SABR calibration commonly fits one expiry/tenor slice. A full surface therefore contains parameter surfaces:

α(T, tenor), β(T, tenor), ρ(T, tenor), ν(T, tenor).

OpenGamma’s SabrInterestRateParameters explicitly represents each SABR parameter as a surface over expiry and tenor.

This raises a second calibration problem: how to interpolate parameters between liquid nodes without creating implausible jumps or arbitrage.

Exact node fit can still create bad interpolation

Imagine every quoted smile slice fits within bid–ask. If alpha or rho jumps sharply between adjacent expiries, interpolated off-grid smiles can be unstable even though every calibration node looks excellent.

Surface diagnostics should therefore check:

  • parameter smoothness;
  • off-grid implied vols;
  • calendar consistency;
  • price monotonicity and convexity by strike;
  • sensitivities between market nodes.

Smile arbitrage is a separate test from calibration residual

A tiny least-squares error does not prove the fitted smile is arbitrage-free.

For a fixed expiry, option call prices should decrease with strike and be convex in strike under standard no-arbitrage conditions. A fitted implied-volatility curve that violates the corresponding price convexity can imply a negative risk-neutral density.

Far-wing extrapolation is particularly sensitive. OpenGamma provides a separate SABR right-wing extrapolation function explicitly designed to control large-strike call-price extrapolation, illustrating that the raw asymptotic smile is not automatically the final production wing.

Hagan’s formula is an approximation, not the stochastic model itself

This distinction is fundamental:

SABR process ≠ Hagan asymptotic implied-volatility approximation.

A parameter set can describe the stochastic process, while the approximation used to translate that process into implied volatility can have its own error, especially for extreme strikes, large nu, long expiries or other stressed combinations.

A 2026 research paper on geometry-aware residual correction is one recent example of continuing work to improve approximation accuracy while preserving SABR’s analytical structure. This is a useful update trigger: formula choice itself is model risk.

Inputs and outputs

A robust SABR calibration engine can require:

  • forward rate;
  • discount factors or annuity needed for price conversion;
  • expiry and underlying tenor;
  • strike grid or strike spreads;
  • market implied volatilities or option prices;
  • quote convention: normal, lognormal or shifted lognormal;
  • shift;
  • beta policy;
  • parameter bounds;
  • bid–ask or error weights;
  • optimizer and stopping tolerances;
  • SABR volatility-formula version.

Outputs should include fitted parameters, fitted smile, residuals by strike, objective value, optimizer status, parameter sensitivities/Jacobian diagnostics, boundary flags, arbitrage checks and market-data timestamp.

Evidence polarity: what supports confidence?

Evidence for a calibration includes residuals inside market uncertainty, stable parameters across multiple starts, small changes when one noisy wing quote is removed, sensible neighboring expiry/tenor parameters, no strike-arbitrage violations over the supported range, strong ATM reproduction and parameter sensitivities that are not nearly singular.

Evidence against confidence includes rho pinned at ±1, nu exploding to a bound, beta and rho trading off wildly under tiny quote changes, materially different parameter sets with the same fit error, good node fit but poor off-grid interpolation, or an asymptotic wing that creates invalid option-price convexity.

Counterexample: a perfect three-point fit can prove almost nothing

If beta is fixed and the calibration has exactly three free parameters and exactly three volatility quotes, it may fit all three almost exactly.

That does not prove robustness. The true test is what happens at additional strikes, nearby expiries, perturbed quotes and market moves.

Counterexample: parameter stability and price stability are different

Two parameter sets can differ substantially while producing almost identical option prices in the quoted region. If a risk report is expressed directly in alpha/rho/nu sensitivities, that parameter instability matters even when valuation is stable.

Conversely, parameters can look smooth while far-wing option prices are unstable because the approximation is weak there.

Counterexample: fixing beta can improve calibration while worsening dynamics

Fixing beta often improves identifiability, but a poorly chosen beta can impose the wrong relationship between forward level and future ATM volatility.

The calibration residual can still be excellent today because alpha and rho compensate. The error becomes visible only when the forward moves.

Weak links in implementation

Quote-convention mismatch. Normal vols are fed into a Black-volatility SABR formula.

Shift mismatch. Market quotes use one displacement while calibration uses another.

Forward mismatch. The forward comes from a curve snapshot inconsistent with the volatility timestamp.

Beta overfitting. All four parameters are freed on too few strikes.

Boundary hiding. The optimizer reports success while rho sits at −0.999999.

Unweighted residuals. Noisy or illiquid wings dominate fit quality.

Formula-range misuse. The asymptotic approximation is trusted far beyond its validated strike/expiry domain.

Surface-node discontinuity. Each smile fits independently but the parameter surface is jagged.

Diagnostics: how to test a SABR calibration engine

  • synthetic recovery test: generate a smile from known SABR parameters and recover them under the same formula.
  • multi-start test: calibrate from widely separated initial guesses.
  • leave-one-out test: remove one strike and test prediction of that quote.
  • ATM test: verify the chosen alpha-solving method reproduces ATM within tolerance.
  • Jacobian test: examine singular values or condition number for weakly identified parameters.
  • boundary test: require explicit flags for alpha/nu near zero or rho near ±1.
  • negative-rate test: test shifted and normal formulas with forwards below zero.
  • wing-arbitrage test: convert vols to option prices and test monotonicity/convexity by strike.
  • surface-smoothness test: perturb expiry/tenor and inspect parameter and price continuity.
  • price-space cross-check: verify that a good volatility fit is also economically acceptable in option-price units.

What would falsify confidence?

Confidence should be withdrawn if independent implementations do not reproduce the same smile from the same parameter vector; if parameter estimates jump under tiny quote perturbations; if multiple starts produce materially different risk sensitivities; if the chosen quote convention or shift cannot be reconstructed; if the fitted smile violates basic option-price arbitrage tests in its intended region; or if out-of-sample strikes repeatedly miss far beyond market bid–ask uncertainty.

Alternatives

SVI/SSVI parameterises implied variance directly and is especially useful when static-arbitrage control across equity/FX-style smiles is central.

Heston provides stochastic variance with mean reversion and a characteristic-function pricing route, but calibration is computationally different and can also suffer identifiability problems.

Local volatility can fit an arbitrage-consistent surface very closely but implies different smile dynamics.

Normal/Bachelier smile models are natural when rates can be negative and normal vols are the market convention.

No model dominates every use. SABR’s strength is the combination of interpretable parameters, a fast smile approximation and dynamics that were designed specifically to improve on static local-volatility smile behaviour.

How this connects to the surrounding knowledge estate

The market quotes entering SABR can themselves be generated by implied-volatility inversion. The option-price map is grounded in Black/Bachelier-style no-arbitrage pricing logic. SABR and Heston calibration then become two different ways of explaining smile geometry with stochastic volatility. The fitted rate-smile surface feeds derivative valuation, hedging and model-validation processes elsewhere in the banking mathematics estate.

Verification and update triggers

Preserve the market-data timestamp, forward curve, quote convention, shift, beta policy, parameter bounds, residual weights, optimizer, formula implementation and extrapolation policy. Revalidate after volatility-market convention changes, negative-rate/shift policy changes, pricing-library upgrades, new wing extrapolation, persistent parameter instability, major regime shifts or recurring discrepancies between independent SABR implementations.

Primary and high-quality references

Educational boundary: This article explains volatility-smile calibration mathematics. It does not value a reader’s portfolio, recommend a derivatives position or provide personalized financial advice.

Discover more from Bukit Timah Tutor

Subscribe now to keep reading and get access to the full archive.

Continue reading