Module net.finmath.lib
Class CapletVolBootstrapping
- java.lang.Object
-
- net.finmath.marketdata.model.volatility.caplet.CapletVolBootstrapping
-
public class CapletVolBootstrapping extends Object
This class implements a caplet volatility bootstrapper. Given an object of type CapVolMarketData which contains market volatilities for caps it calculates the caplet volatilities.- Author:
- Daniel Willhalm (initial version), Christian Fries (review and fixes)
-
-
Constructor Summary
Constructors Constructor Description CapletVolBootstrapping(CapVolMarketData capVolMarketData, AnalyticModel parsedModel)
Overloaded constructor of the caplet bootstrapping class if a correlation provider isn't necessary.CapletVolBootstrapping(CorrelationProvider correlationProvider, CapVolMarketData capVolMarketData, AnalyticModel parsedModel)
The constructor of the caplet bootstrapping class.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description double[][]
calculateCapVolsFromCapletVols(double[][] inputCapletVolMatrix)
Method that implements the opposite direction.double[]
getCapletFixingTimeVectorInYears()
double[][]
getCapletVolMatrix()
Method that bootstraps the caplet volatilities from the cap volatility data.DiscountCurve
getDiscountCurve()
ForwardCurve
getForwardCurve()
AnalyticModel
getParsedModel()
-
-
-
Constructor Detail
-
CapletVolBootstrapping
public CapletVolBootstrapping(CorrelationProvider correlationProvider, CapVolMarketData capVolMarketData, AnalyticModel parsedModel)
The constructor of the caplet bootstrapping class.- Parameters:
correlationProvider
- The correlationProvider which is necessary only if the underlying cap data changes its tenor (common for EUR cap data).capVolMarketData
- The market data for the caps.parsedModel
- The analytic model for forward and discount curves.
-
CapletVolBootstrapping
public CapletVolBootstrapping(CapVolMarketData capVolMarketData, AnalyticModel parsedModel)
Overloaded constructor of the caplet bootstrapping class if a correlation provider isn't necessary.- Parameters:
capVolMarketData
- The market data for the caps.parsedModel
- The analytic model for forward and discount curves.
-
-
Method Detail
-
getCapletVolMatrix
public double[][] getCapletVolMatrix() throws CalculationException
Method that bootstraps the caplet volatilities from the cap volatility data. It is assumed that the caplet volatilities between available cap volatility data is constant. The bisection method is used as a root finder to align the cap price and the sum of caplets price.- Returns:
- The bootstrapped caplet volatility matrix.
- Throws:
CalculationException
- Thrown if calculation fails arithmetically.
-
calculateCapVolsFromCapletVols
public double[][] calculateCapVolsFromCapletVols(double[][] inputCapletVolMatrix)
Method that implements the opposite direction. That means using a caplet volatility matrix the cap volatility matrix is calculated- Parameters:
inputCapletVolMatrix
- The caplet volatility matrix.- Returns:
- The cap volatility matrix.
-
getParsedModel
public AnalyticModel getParsedModel()
-
getDiscountCurve
public DiscountCurve getDiscountCurve()
-
getForwardCurve
public ForwardCurve getForwardCurve()
-
getCapletFixingTimeVectorInYears
public double[] getCapletFixingTimeVectorInYears()
-
-