Skip to content
All library documents

Stable SABR Normal Volatility Evaluation at the At-the-Money Point

Article Quant Q&A · Author: Benedict

Summary

The document addresses numerical breakdown in SABR normal implied volatility calculations when the forward price equals the strike. In the cited formulation, the intermediate function chi depends on zeta, which becomes zero at this at-the-money point; direct evaluation of the formula can then produce division by zero or an indeterminate ratio.

For very small absolute zeta, the response recommends replacing direct evaluation with a Taylor approximation for chi divided by zeta, retaining terms through the square of zeta. This provides a limiting expression that avoids cancellation and singular behavior near the at-the-money case. The suggested approximation is tied to a small-zeta regime and the stated SABR expression; the document does not compare alternative expansions, discuss error bounds, or provide broader calibration guidance.

Key ideas

  • In the cited SABR normal volatility expression, zeta approaches zero when forward price equals strike.
  • Directly evaluating chi divided by zeta at that point can cause a numerical singularity.
  • For sufficiently small zeta, Taylor expansions can produce a stable approximation to the ratio.
  • The approximation includes a first-order correction involving the correlation parameter.
  • The source does not quantify approximation error or address the full calibration procedure.

Tags

Full text
# SABR Normal Volatility when F = K


# SABR Normal Volatility when F = K












Looking at the papers

- Arbitrage free SABR (Hagan)

- Managing Smile Risk (Hagan)

- Explicit SABR Calibration through simple expansions (Floch)

all 3 papers have similar forms for expression for implied volaility (Normal) but differ quite a little. But that is not my main question.

When F = K, the implied normal volaility breaks down when i tried to implement them, either divide by 0 or 0/0.

Can i get some help on this?

## Answer by jaehyukchoi49 (score 5)

https://quant.stackexchange.com/a/42156

This is indeed an important issue if you use SABR in production.

If I am correct, you'll need this term $$ \chi(\zeta) = \log \left( \frac{\sqrt{1-2\rho\zeta+\zeta^2}-\rho+\zeta}{1-\rho} \right) $$ and $\zeta=0$ if $F_0=K$.

When $\zeta$ is VERY small (e.g., $|\zeta|<10^{-8}$), you can use the Taylor expansion $$\sqrt{1+\varepsilon} \approx 1+\varepsilon/2-\varepsilon^2/8 \quad \text{and}\quad \log(1+\varepsilon)\approx \varepsilon - \varepsilon^2/2$$ to get (make sure to keep both $\zeta$ and $\zeta^2$ terms) $$ \frac{\chi(\zeta)}{\zeta} \approx 1 + \frac{\rho}{2}\zeta. $$

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.