Module net.finmath.lib
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 aVolatilityCubeModel
. 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 Instance Methods Abstract 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.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.
-
-