## Interface VolatilityCube

• All Known Implementing Classes:
SABRVolatilityCube, SABRVolatilityCubeParallel, SABRVolatilityCubeSingleSmile, ScaledVolatilityCube, StaticVolatilityCube, VolVolCube

public interface VolatilityCube
Interface to be implemented by classes providing a volatility cube for a VolatilityCubeModel. The cubes provide volatilities in three dimensions, being termination, maturity and strike. Maturity being the maturity of a physically settled swaption. Termination being the end date of the underlying swap of said swaption and strike being its strike rate inabsolute terms (not moneyness). The dates are stored as double in correlation to the cubes reference date.
Author:
Christian Fries, Roland Bachl
• ### Method Summary

All Methods
Modifier and Type Method Description
double getCorrelationDecay()
Return the correlation decay parameter of the cube.
double getIborOisDecorrelation()
Return the IBOR vs OIS decorrelation parameter.
double getLowestStrike​(VolatilityCubeModel model)
Returns the lowest possible value of strike that can be evaluated by this cube.
String getName()
Returns the name of the volatility cube.
Map<String,​Object> getParameters()
Returns a map with all implementation dependent parameters of this volatility cube.
LocalDate getReferenceDate()
Return the reference date of this cube, i.e. the date associated with t=0.
double getValue​(double termination, double maturity, double strike, VolatilitySurface.QuotingConvention quotingConvention)
Return the volatility at the specified coordinates in the desired quotation.
double getValue​(VolatilityCubeModel model, double termination, double maturity, double strike, VolatilitySurface.QuotingConvention quotingConvention)
Return the volatility at the specified coordinates in the desired quotation.
• ### Method Detail

• #### getValue

double getValue​(VolatilityCubeModel model,
double termination,
double maturity,
double strike,
VolatilitySurface.QuotingConvention quotingConvention)
Return the volatility at the specified coordinates in the desired quotation.
Parameters:
model - A model providing context.
termination - End date of the underlying.
maturity - Maturity date of the option.
strike - Strike rate of the option.
quotingConvention - Desired quoting convention.
Returns:
The volatility.
• #### getValue

double getValue​(double termination,
double maturity,
double strike,
VolatilitySurface.QuotingConvention quotingConvention)
Return the volatility at the specified coordinates in the desired quotation.
Parameters:
termination - End date of the underlying.
maturity - Maturity date of the option.
strike - Strike rate of the option.
quotingConvention - Desired quoting convention.
Returns:
The volatility.
• #### getName

String getName()
Returns the name of the volatility cube.
Returns:
The name of the volatility cube.
• #### getReferenceDate

LocalDate getReferenceDate()
Return the reference date of this cube, i.e. the date associated with t=0.
Returns:
The date identified as t=0.
• #### getCorrelationDecay

double getCorrelationDecay()
Return the correlation decay parameter of the cube. This is used to determine the correlation between tenors in a derived volvol cube.
Returns:
The correlation decay parameter.
• #### getIborOisDecorrelation

double getIborOisDecorrelation()
Return the IBOR vs OIS decorrelation parameter. This parameter scales the convexity adjustment in a multi curve model, using different curves for forward rates and discounting.
Returns:
The IBOR vs OIS decorrelation parameter.
• #### getParameters

Map<String,​Object> getParameters()
Returns a map with all implementation dependent parameters of this volatility cube.
Returns:
A map of all parameters.
• #### getLowestStrike

double getLowestStrike​(VolatilityCubeModel model)
Returns the lowest possible value of strike that can be evaluated by this cube. This is relevant for instance when an implementation uses a SABR model with displacement.
Parameters:
model - A model for context.
Returns:
Lowest possible strike this volatility cube supports.