mafipy.function.sabr_atm_implied_vol_hagan

mafipy.function.sabr_atm_implied_vol_hagan(underlying, maturity, alpha, beta, rho, nu)[source]

calculate implied volatility under SABR model at the money.

\[\sigma_{ATM}(S; T) := \sigma_{B}(S, S; T) \approx \frac{\alpha}{S^{(1-\beta)}} \left[ 1 + \left( \frac{(1 - \beta)^{2}}{24} \frac{\alpha^{2}}{S^{2 - 2\beta}} + \frac{1}{4} \frac{\rho \beta \alpha \nu}{S^{1-\beta}} + \frac{2 - 3\rho^{2}}{24} \nu^{2} \right) T \right]\]

See Hagan, P. S., Kumar, D., Lesniewski, A. S., & Woodward, D. E. (2002). Managing smile risk. Wilmott Magazine, m, 84–108. Retrieved from http://www.math.columbia.edu/~lrb/sabrAll.pdf

Parameters:
  • underlying (float) –
  • maturity (float) –
  • alpha (float) – must be within \([0, 1]\).
  • beta (float) – must be greater than 0.
  • rho (float) – must be within \([-1, 1]\).
  • nu (float) – volatility of volatility. This must be positive.
Returns:

implied volatility.

Return type:

float.