Interpolated zero inflation volatility structure. More...
#include <qle/termstructures/interpolatedcpivolatilitysurface.hpp>
Inheritance diagram for InterpolatedCPIVolatilitySurface< Interpolator2D >:
Collaboration diagram for InterpolatedCPIVolatilitySurface< Interpolator2D >:Public Member Functions | |
| InterpolatedCPIVolatilitySurface (const std::vector< Period > &optionTenors, const std::vector< Real > &strikes, const std::vector< std::vector< Handle< Quote > > > quotes, const QuantLib::ext::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 QuantLib::ext::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 More... | |
| QuantLib::Real | maxStrike () const override |
| the maximum strike for which the term structure can return vols More... | |
| QuantLib::Date | maxDate () const override |
| maximum date for which the term structure can return vols More... | |
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() More... | |
| QuantLib::Date | baseDate () const override |
| base date will be in the past More... | |
| QuantLib::VolatilityType | volatilityType () const |
| Returns the volatility type. More... | |
| double | displacement () const |
| Returns the displacement for lognormal volatilities. More... | |
| 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 |
| virtual QuantLib::Real | atmStrike (const QuantLib::Date &maturity, const QuantLib::Period &obsLag=QuantLib::Period(-1, QuantLib::Days)) const =0 |
| QuantLib::Date | capFloorStartDate () const |
Inspectors | |
| std::vector< QuantLib::Period > | optionTenors_ |
| std::vector< QuantLib::Time > | optionTimes_ |
| std::vector< QuantLib::Rate > | strikes_ |
| std::vector< std::vector< Handle< Quote > > > | quotes_ |
| QuantLib::ext::shared_ptr< QuantLib::ZeroInflationIndex > | index_ |
| Matrix | volData_ |
| QuantLib::Interpolation2D | vols_ |
| Interpolator2D | interpolator2d_ |
| const std::vector< QuantLib::Real > & | strikes () |
| const std::vector< QuantLib::Period > & | optionTenors () |
| const std::vector< std::vector< Handle< Quote > > > & | quotes () |
| const QuantLib::Matrix & | volData () |
| QuantLib::Volatility | volatilityImpl (QuantLib::Time length, QuantLib::Rate strike) const override |
| QuantLib::Real | atmStrike (const QuantLib::Date &maturity, const QuantLib::Period &obsLag=QuantLib::Period(-1, QuantLib::Days)) const override |
Additional Inherited Members | |
Protected Member Functions inherited from CPIVolatilitySurface | |
| virtual double | fixingTime (const QuantLib::Date &maturityDate) const |
| Computes the expiry time from the capFloorStartDate() More... | |
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.
Definition at line 44 of file interpolatedcpivolatilitysurface.hpp.
| InterpolatedCPIVolatilitySurface | ( | const std::vector< Period > & | optionTenors, |
| const std::vector< Real > & | strikes, | ||
| const std::vector< std::vector< Handle< Quote > > > | quotes, | ||
| const QuantLib::ext::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 |
||
| ) |
Definition at line 115 of file interpolatedcpivolatilitysurface.hpp.
| QL_DEPRECATED_DISABLE_WARNING InterpolatedCPIVolatilitySurface | ( | const std::vector< Period > & | optionTenors, |
| const std::vector< Real > & | strikes, | ||
| const std::vector< std::vector< Handle< Quote > > > | quotes, | ||
| const QuantLib::ext::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 |
||
| ) |
Definition at line 135 of file interpolatedcpivolatilitysurface.hpp.
|
override |
Definition at line 152 of file interpolatedcpivolatilitysurface.hpp.
|
override |
Definition at line 72 of file interpolatedcpivolatilitysurface.hpp.
|
override |
the minimum strike for which the term structure can return vols
Definition at line 171 of file interpolatedcpivolatilitysurface.hpp.
|
override |
the maximum strike for which the term structure can return vols
Definition at line 175 of file interpolatedcpivolatilitysurface.hpp.
|
override |
maximum date for which the term structure can return vols
Definition at line 179 of file interpolatedcpivolatilitysurface.hpp.
| const std::vector< QuantLib::Real > & strikes | ( | ) |
Definition at line 90 of file interpolatedcpivolatilitysurface.hpp.
| const std::vector< QuantLib::Period > & optionTenors | ( | ) |
Definition at line 91 of file interpolatedcpivolatilitysurface.hpp.
| const std::vector< std::vector< Handle< Quote > > > & quotes | ( | ) |
Definition at line 92 of file interpolatedcpivolatilitysurface.hpp.
| const QuantLib::Matrix & volData | ( | ) |
Definition at line 93 of file interpolatedcpivolatilitysurface.hpp.
|
override |
Definition at line 185 of file interpolatedcpivolatilitysurface.hpp.
|
overridevirtual |
Implements CPIVolatilitySurface.
Definition at line 192 of file interpolatedcpivolatilitysurface.hpp.
Here is the call graph for this function:
|
mutableprivate |
Definition at line 103 of file interpolatedcpivolatilitysurface.hpp.
|
mutableprivate |
Definition at line 104 of file interpolatedcpivolatilitysurface.hpp.
|
mutableprivate |
Definition at line 105 of file interpolatedcpivolatilitysurface.hpp.
|
mutableprivate |
Definition at line 106 of file interpolatedcpivolatilitysurface.hpp.
|
private |
Definition at line 107 of file interpolatedcpivolatilitysurface.hpp.
|
mutableprivate |
Definition at line 108 of file interpolatedcpivolatilitysurface.hpp.
|
mutableprivate |
Definition at line 109 of file interpolatedcpivolatilitysurface.hpp.
|
private |
Definition at line 110 of file interpolatedcpivolatilitysurface.hpp.