Smile.Interpolation.TensionSplineImpliedVolatilityInterpolator¶
Classes
IImpliedVolatilityInterpolator |
General interface to interpolate the implied volatility smile in strike. |
List |
Methods |
MoneynessSmileRepresentation(atm_vol: float, ...) |
” Container Class that describes a smile as a vector of deltas for moneyness, the atm volatility, and the shifts in |
TensionSpline(calldeltavec, volvec, F, T, ...) |
Attributes |
TensionSplineImpliedVolatilityInterpolator(...) |
Class to interpolate the volatility smile in strikes using a tension spline. |
-
class
Smile.Interpolation.TensionSplineImpliedVolatilityInterpolator.TensionSplineImpliedVolatilityInterpolator(moneyness_smile_representation: Smile.Representations.MoneynessSmileRepresentation.MoneynessSmileRepresentation, underlying_level: float, duration: float, weightvec: typing.List[float], sm: float, smtol: float)[source]¶ Class to interpolate the volatility smile in strikes using a tension spline.
Parameters: moneyness_smile_representation :
MoneynessSmileRepresentationThe volatility smile represented in terms of deltas.
underlying_level : float
The market value of the option underlying.
duration : float
The maturity of the option for which the smile is computed.
weightvec : List[float]
Vector of length N containing positive weights associated with the data values. The recommend- ed value of W(I) is 1/DY^2, where DY is the standard deviation associated with Y(I). If nothing is known about the errors in Y, a constant (estimated value) should be used for DY. If PER = TRUE, it is assumed that W(N) = W(1).
sm : float
Positive parameter specifying an upper bound on Q2(YS), where Q2(YS) is the weighted sum of squares of deviations from the data (differences between YS and Y). H(x) is linear (and Q2 is minimized) if SM is sufficiently large that the constraint is not active. It is recommended that SM satisfy N-SQRT(2N) <= SM <= N+SQRT(2N) and SM = N is reasonable if W(I) = 1/DY^2.
smtol : float
Parameter in the range (0,1) specifying the relative error allowed in satisfying the constraint: the constraint is assumed to be satisfied if SM*(1-SMTOL) <= Q2 <= SM*(1+SMTOL). A reasonable value for SMTOL is SQRT(2/N) for N > 2.
Methods
slope_at_strike((strike: float) -> float)Compute the implied volatility slope or skew for a given strike. vol_at_strike((strike: float) -> float)Compute the implied volatility for a given strike. -
slope_at_strike(strike: float) → float[source]¶ Compute the implied volatility slope or skew for a given strike.
Parameters: strike : float
The strike for which the implied volatility slope will be calculated.
Returns: implied_volatility_slope : float
The implied volatility slope for the provided strike.
-