#include <qle/termstructures/inflation/cpivolatilitystructure.hpp>
Public Member Functions | |
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 |
Protected Member Functions | |
virtual double | fixingTime (const QuantLib::Date &maturityDate) const |
Computes the expiry time from the capFloorStartDate() More... | |
Protected Attributes | |
QuantLib::VolatilityType | volType_ |
double | displacement_ |
Private Attributes | |
QuantLib::Date | capFloorStartDate_ |
Abstract interface. CPI volatility is always with respect to some base date of the quoted Zero Coupon Caps and Floor. Also deal with lagged observations of an index with a (usually different) availability lag.
Definition at line 35 of file cpivolatilitystructure.hpp.
CPIVolatilitySurface | ( | QuantLib::Natural | settlementDays, |
const QuantLib::Calendar & | cal, | ||
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 |
||
) |
the capfloor startdate is the start date of the quoted market instruments, usually its today, but it could be in the future (e.g. AUCPI)
Definition at line 25 of file cpivolatilitystructure.cpp.
|
override |
Computes the expiry date from the capFloorStartDate()
Definition at line 41 of file cpivolatilitystructure.cpp.
|
override |
base date will be in the past
Definition at line 45 of file cpivolatilitystructure.cpp.
QuantLib::VolatilityType volatilityType | ( | ) | const |
Returns the volatility type.
Definition at line 53 of file cpivolatilitystructure.hpp.
double displacement | ( | ) | const |
Returns the displacement for lognormal volatilities.
Definition at line 55 of file cpivolatilitystructure.hpp.
bool isLogNormal | ( | ) | const |
Definition at line 57 of file cpivolatilitystructure.hpp.
|
override |
Definition at line 61 of file cpivolatilitystructure.cpp.
|
pure virtual |
Implemented in ConstantCPIVolatility, CPIPriceVolatilitySurface< InterpolatorStrike, InterpolatorTime >, InterpolatedCPIVolatilitySurface< Interpolator2D >, SpreadedCPIVolatilitySurface, and StrippedCPIVolatilitySurface< Interpolator2D >.
QuantLib::Date capFloorStartDate | ( | ) | const |
Definition at line 33 of file cpivolatilitystructure.cpp.
|
protectedvirtual |
Computes the expiry time from the capFloorStartDate()
Definition at line 57 of file cpivolatilitystructure.cpp.
|
protected |
Definition at line 77 of file cpivolatilitystructure.hpp.
|
protected |
Definition at line 78 of file cpivolatilitystructure.hpp.
|
private |
Definition at line 81 of file cpivolatilitystructure.hpp.