Ssvi Surface
financepy.models.ssvi_surface
Classes
SSVIPowerLawPhi
SSVIPowerLawPhi(eta, gamma) -> None
Power-law SSVI phi function
phi(theta) = eta * theta^(-gamma)
Methods
value
value(self, theta)
No description available.
parameters
parameters(self)
No description available.
SSVISurface
SSVISurface(expiries=None, atm_total_variances=None, rho=None, phi_function=None) -> None
Inherits from: ImpliedVolatilitySurface
SSVI implied-volatility surface
w(k, theta)
=
theta / 2
[
1
+ rho phi(theta) k
+ sqrt(
(phi(theta) k + rho)^2
+ 1 - rho^2
)
]
using the power-law specification
phi(theta)
=
eta theta^(-gamma).
The surface can either be constructed from known parameters
or calibrated directly to a market implied-volatility grid.
Methods
calibrate
calibrate(self, forwards, strikes, expiries, implied_volatilities)
Jointly calibrate
theta(T_1), ..., theta(T_N), rho, eta, gamma
to the complete implied-volatility grid.
The theta term structure is parameterized so that
0 < theta_1 < theta_2 < ... < theta_N.
This guarantees monotonic ATM total variance.
theta
theta(self, t_exp)
Return ATM total variance theta(T).
Linear interpolation is performed in total variance.
total_variance_from_log_moneyness
total_variance_from_log_moneyness(self, k, t_exp)
Return SSVI total implied variance.
total_variance
total_variance(self, forward, strike, t_exp)
No description available.
implied_volatility
implied_volatility(self, forward, strike, t_exp)
No description available.
implied_volatility_curve
implied_volatility_curve(self, forward, strikes, t_exp)
No description available.
implied_volatility_surface
implied_volatility_surface(self, forwards, strikes, expiries)
No description available.
parameters
parameters(self)
Return global SSVI parameters
rho, eta, gamma.
atm_total_variances
atm_total_variances(self)
No description available.
expiries
expiries(self)
No description available.
Generated automatically from the FinancePy source code.
Do not edit this file manually.