Stripped zero inflation volatility structure. More...
#include <qle/termstructures/strippedcpivolatilitystructure.hpp>
Classes | |
class | ObjectiveFunction |
Public Member Functions | |
QL_DEPRECATED | StrippedCPIVolatilitySurface (PriceQuotePreference type, const QuantLib::Handle< QuantLib::CPICapFloorTermPriceSurface > &priceSurface, const QuantLib::ext::shared_ptr< QuantLib::ZeroInflationIndex > &zeroIndex, const QuantLib::ext::shared_ptr< QuantExt::CPICapFloorEngine > &engine, const QuantLib::Date &capFloorStartDate=Date(), const QuantLib::Real &upperVolBound=StrippedCPIVolSurfaceDefaultValues::upperVolBound, const QuantLib::Real &lowerVolBound=StrippedCPIVolSurfaceDefaultValues::lowerVolBound, const QuantLib::Real &solverTolerance=StrippedCPIVolSurfaceDefaultValues::solverTolerance, const Interpolator2D &interpolator2d=Interpolator2D(), const QuantLib::VolatilityType &volType=QuantLib::ShiftedLognormal, const double displacement=0.0) |
StrippedCPIVolatilitySurface (PriceQuotePreference type, const QuantLib::Handle< QuantLib::CPICapFloorTermPriceSurface > &priceSurface, const QuantLib::ext::shared_ptr< QuantLib::ZeroInflationIndex > &zeroIndex, const bool quotedPricesUseInterpolatedCPIFixings, const QuantLib::ext::shared_ptr< QuantExt::CPICapFloorEngine > &engine, const QuantLib::Date &capFloorStartDate=Date(), const QuantLib::Real &upperVolBound=StrippedCPIVolSurfaceDefaultValues::upperVolBound, const QuantLib::Real &lowerVolBound=StrippedCPIVolSurfaceDefaultValues::lowerVolBound, const QuantLib::Real &solverTolerance=StrippedCPIVolSurfaceDefaultValues::solverTolerance, const Interpolator2D &interpolator2d=Interpolator2D(), const QuantLib::VolatilityType &volType=QuantLib::ShiftedLognormal, const double displacement=0.0) | |
LazyObject interface | |
void | performCalculations () const |
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 | |
PriceQuotePreference | preference_ |
QuantLib::Handle< QuantLib::CPICapFloorTermPriceSurface > | priceSurface_ |
QuantLib::ext::shared_ptr< QuantLib::ZeroInflationIndex > | index_ |
QuantLib::ext::shared_ptr< QuantExt::CPICapFloorEngine > | engine_ |
QuantLib::Real | upperVolBound_ |
QuantLib::Real | lowerVolBound_ |
QuantLib::Real | solverTolerance_ |
std::vector< QuantLib::Rate > | strikes_ |
std::vector< QuantLib::Period > | maturities_ |
std::vector< QuantLib::Time > | maturityTimes_ |
QuantLib::Matrix | volData_ |
Interpolator2D | interpolator2d_ |
QuantLib::Interpolation2D | vols_ |
bool | computeTimeToExpiryFromLastAvailableFixingDate_ |
const std::vector< QuantLib::Real > & | strikes () |
const std::vector< QuantLib::Period > & | maturities () |
const QuantLib::Matrix & | volData () |
QuantLib::Real | atmStrike (const QuantLib::Date &maturity, const QuantLib::Period &obsLag=QuantLib::Period(-1, QuantLib::Days)) const override |
QuantLib::Volatility | volatilityImpl (QuantLib::Time length, QuantLib::Rate strike) const override |
bool | chooseFloor (QuantLib::Real strike, QuantLib::Real atmRate) 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() More... | |
Protected Attributes inherited from CPIVolatilitySurface | |
QuantLib::VolatilityType | volType_ |
double | displacement_ |
Stripped zero inflation volatility structure.
The surface provides implied CPI Black volatilities for the union of strikes that occur in the underlying cap and floor price surface.
The type argument determines which kind of price quotes are used with priority when there is an overlap, i.e. strikes for which we have both cap and floor quotes: If type is Cap: Use cap quotes where available, floor quotes otherwise If type is Floor: Use floor quotes where available, cap quotes otherwise If type is CapFloor: In case of overlap, use floor quotes up to the ATM strike, cap quotes for strikes beyond ATM
Definition at line 60 of file strippedcpivolatilitystructure.hpp.
QL_DEPRECATED_DISABLE_WARNING StrippedCPIVolatilitySurface | ( | PriceQuotePreference | type, |
const QuantLib::Handle< QuantLib::CPICapFloorTermPriceSurface > & | priceSurface, | ||
const QuantLib::ext::shared_ptr< QuantLib::ZeroInflationIndex > & | zeroIndex, | ||
const QuantLib::ext::shared_ptr< QuantExt::CPICapFloorEngine > & | engine, | ||
const QuantLib::Date & | capFloorStartDate = Date() , |
||
const QuantLib::Real & | upperVolBound = StrippedCPIVolSurfaceDefaultValues::upperVolBound , |
||
const QuantLib::Real & | lowerVolBound = StrippedCPIVolSurfaceDefaultValues::lowerVolBound , |
||
const QuantLib::Real & | solverTolerance = StrippedCPIVolSurfaceDefaultValues::solverTolerance , |
||
const Interpolator2D & | interpolator2d = Interpolator2D() , |
||
const QuantLib::VolatilityType & | volType = QuantLib::ShiftedLognormal , |
||
const double | displacement = 0.0 |
||
) |
Definition at line 182 of file strippedcpivolatilitystructure.hpp.
StrippedCPIVolatilitySurface | ( | PriceQuotePreference | type, |
const QuantLib::Handle< QuantLib::CPICapFloorTermPriceSurface > & | priceSurface, | ||
const QuantLib::ext::shared_ptr< QuantLib::ZeroInflationIndex > & | zeroIndex, | ||
const bool | quotedPricesUseInterpolatedCPIFixings, | ||
const QuantLib::ext::shared_ptr< QuantExt::CPICapFloorEngine > & | engine, | ||
const QuantLib::Date & | capFloorStartDate = Date() , |
||
const QuantLib::Real & | upperVolBound = StrippedCPIVolSurfaceDefaultValues::upperVolBound , |
||
const QuantLib::Real & | lowerVolBound = StrippedCPIVolSurfaceDefaultValues::lowerVolBound , |
||
const QuantLib::Real & | solverTolerance = StrippedCPIVolSurfaceDefaultValues::solverTolerance , |
||
const Interpolator2D & | interpolator2d = Interpolator2D() , |
||
const QuantLib::VolatilityType & | volType = QuantLib::ShiftedLognormal , |
||
const double | displacement = 0.0 |
||
) |
Definition at line 161 of file strippedcpivolatilitystructure.hpp.
QL_DEPRECATED_ENABLE_WARNING void performCalculations |
Definition at line 194 of file strippedcpivolatilitystructure.hpp.
|
override |
the minimum strike for which the term structure can return vols
Definition at line 295 of file strippedcpivolatilitystructure.hpp.
|
override |
the maximum strike for which the term structure can return vols
Definition at line 299 of file strippedcpivolatilitystructure.hpp.
|
override |
maximum date for which the term structure can return vols
Definition at line 303 of file strippedcpivolatilitystructure.hpp.
const std::vector< QuantLib::Real > & strikes | ( | ) |
Definition at line 104 of file strippedcpivolatilitystructure.hpp.
const std::vector< QuantLib::Period > & maturities | ( | ) |
Definition at line 105 of file strippedcpivolatilitystructure.hpp.
const QuantLib::Matrix & volData | ( | ) |
Definition at line 106 of file strippedcpivolatilitystructure.hpp.
|
overridevirtual |
Implements CPIVolatilitySurface.
Definition at line 357 of file strippedcpivolatilitystructure.hpp.
|
overrideprivate |
Definition at line 309 of file strippedcpivolatilitystructure.hpp.
|
private |
Definition at line 248 of file strippedcpivolatilitystructure.hpp.
|
private |
Definition at line 143 of file strippedcpivolatilitystructure.hpp.
|
private |
Definition at line 144 of file strippedcpivolatilitystructure.hpp.
|
private |
Definition at line 145 of file strippedcpivolatilitystructure.hpp.
|
private |
Definition at line 146 of file strippedcpivolatilitystructure.hpp.
|
private |
Definition at line 147 of file strippedcpivolatilitystructure.hpp.
|
private |
Definition at line 148 of file strippedcpivolatilitystructure.hpp.
|
private |
Definition at line 149 of file strippedcpivolatilitystructure.hpp.
|
mutableprivate |
Definition at line 151 of file strippedcpivolatilitystructure.hpp.
|
mutableprivate |
Definition at line 152 of file strippedcpivolatilitystructure.hpp.
|
mutableprivate |
Definition at line 153 of file strippedcpivolatilitystructure.hpp.
|
mutableprivate |
Definition at line 154 of file strippedcpivolatilitystructure.hpp.
|
private |
Definition at line 155 of file strippedcpivolatilitystructure.hpp.
|
mutableprivate |
Definition at line 156 of file strippedcpivolatilitystructure.hpp.
|
private |
Definition at line 157 of file strippedcpivolatilitystructure.hpp.