Interpolated zero inflation volatility structure. More...
#include <qle/termstructures/interpolatedcpivolatilitysurface.hpp>
Public Member Functions | |
InterpolatedCPIVolatilitySurface (const std::vector< Period > &optionTenors, const std::vector< Real > &strikes, const std::vector< std::vector< Handle< Quote >>> quotes, const boost::shared_ptr< QuantLib::ZeroInflationIndex > &index, const bool quotedInstrumentsAreInterpolated, const Natural settlementDays, const Calendar &cal, BusinessDayConvention bdc, const DayCounter &dc, const Period &observationLag, const Date &capFloorStartDate=Date(), const Interpolator2D &interpolator2d=Interpolator2D(), const QuantLib::VolatilityType volType=QuantLib::ShiftedLognormal, const double displacement=0.0) | |
QL_DEPRECATED | InterpolatedCPIVolatilitySurface (const std::vector< Period > &optionTenors, const std::vector< Real > &strikes, const std::vector< std::vector< Handle< Quote >>> quotes, const boost::shared_ptr< QuantLib::ZeroInflationIndex > &index, const Natural settlementDays, const Calendar &cal, BusinessDayConvention bdc, const DayCounter &dc, const Period &observationLag, const Date &capFloorStartDate=Date(), const Interpolator2D &interpolator2d=Interpolator2D(), const QuantLib::VolatilityType volType=QuantLib::ShiftedLognormal, const double displacement=0.0) |
LazyObject interface | |
void | performCalculations () const override |
void | update () override |
Limits | |
QuantLib::Real | minStrike () const override |
the minimum strike for which the term structure can return vols | |
QuantLib::Real | maxStrike () const override |
the maximum strike for which the term structure can return vols | |
QuantLib::Date | maxDate () const override |
maximum date for which the term structure can return vols | |
Public Member Functions inherited from CPIVolatilitySurface | |
CPIVolatilitySurface (QuantLib::Natural settlementDays, const QuantLib::Calendar &, QuantLib::BusinessDayConvention bdc, const QuantLib::DayCounter &dc, const QuantLib::Period &observationLag, QuantLib::Frequency frequency, bool indexIsInterpolated, const QuantLib::Date &capFloorStartDate=QuantLib::Date(), QuantLib::VolatilityType volType=QuantLib::ShiftedLognormal, double displacement=0.0) | |
QuantLib::Date | optionDateFromTenor (const QuantLib::Period &tenor) const override |
Computes the expiry date from the capFloorStartDate() | |
QuantLib::Date | baseDate () const override |
base date will be in the past | |
QuantLib::VolatilityType | volatilityType () const |
Returns the volatility type. | |
double | displacement () const |
Returns the displacement for lognormal volatilities. | |
bool | isLogNormal () const |
QuantLib::Volatility | volatility (const QuantLib::Date &maturityDate, QuantLib::Rate strike, const QuantLib::Period &obsLag=QuantLib::Period(-1, QuantLib::Days), bool extrapolate=false) const override |
QuantLib::Date | capFloorStartDate () const |
Additional Inherited Members | |
Protected Member Functions inherited from CPIVolatilitySurface | |
virtual double | fixingTime (const QuantLib::Date &maturityDate) const |
Computes the expiry time from the capFloorStartDate() | |
Protected Attributes inherited from CPIVolatilitySurface | |
QuantLib::VolatilityType | volType_ |
double | displacement_ |
Interpolated zero inflation volatility structure.
The surface provides interpolated CPI Black volatilities. Volatility data is passed in as a vector of vector of quote Handles. When performCalculations is called, current quote values are copied to a matrix and the interpolator is updated.