Logo
Reference manual - version qle_version
KInterpolatedYoYOptionletVolatilitySurface< Interpolator1D > Class Template Reference

K-interpolated YoY optionlet volatility. More...

#include <qle/termstructures/kinterpolatedyoyoptionletvolatilitysurface.hpp>

Inheritance diagram for KInterpolatedYoYOptionletVolatilitySurface< Interpolator1D >:

Constructor

calculate the reference date based on the global evaluation date

ext::shared_ptr< YoYCapFloorTermPriceSurfacecapFloorPrices_
ext::shared_ptr< QuantLib::YoYInflationCapFloorEngine > yoyInflationCouponPricer_
ext::shared_ptr< YoYOptionletStripper > yoyOptionletStripper_
Interpolator1D factory1D_
Real slope_
bool lastDateisSet_
Date lastDate_
Interpolation tempKinterpolation_
std::pair< std::vector< Rate >, std::vector< Volatility > > slice_
 KInterpolatedYoYOptionletVolatilitySurface (const Natural settlementDays, const Calendar &, const BusinessDayConvention bdc, const DayCounter &dc, const Period &lag, const ext::shared_ptr< YoYCapFloorTermPriceSurface > &capFloorPrices, const ext::shared_ptr< QuantLib::YoYInflationCapFloorEngine > &pricer, const ext::shared_ptr< YoYOptionletStripper > &yoyOptionletStripper, const Real slope, const Interpolator1D &interpolator=Interpolator1D(), VolatilityType volType=ShiftedLognormal, Real displacement=0.0)
virtual Real minStrike () const override
virtual Real maxStrike () const override
virtual Date maxDate () const override
std::pair< std::vector< Rate >, std::vector< Volatility > > Dslice (const Date &d) const
virtual Volatility volatilityImpl (const Date &d, Rate strike) const
virtual Volatility volatilityImpl (Time length, Rate strike) const override
virtual void performCalculations () const

Detailed Description

template<class Interpolator1D>
class QuantExt::KInterpolatedYoYOptionletVolatilitySurface< Interpolator1D >

K-interpolated YoY optionlet volatility.

The stripper provides curves in the T direction along each K. We don't know whether this is interpolating or fitting in the T direction. Our K direction interpolations are not model fitting.

An alternative design would be a FittedYoYOptionletVolatilitySurface taking a model, e.g. SABR in the interest rate world. This could use the same stripping in the T direction along each K.

Bug
Tests currently fail.