K-interpolated YoY optionlet volatility. More...
#include <ql/experimental/inflation/kinterpolatedyoyoptionletvolatilitysurface.hpp>

Constructor | |
calculate the reference date based on the global evaluation date | |
|
boost::shared_ptr < YoYCapFloorTermPriceSurface > | capFloorPrices_ |
|
boost::shared_ptr < YoYInflationCapFloorEngine > | yoyInflationCouponPricer_ |
|
boost::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 boost::shared_ptr< YoYCapFloorTermPriceSurface > &capFloorPrices, const boost::shared_ptr< YoYInflationCapFloorEngine > &pricer, const boost::shared_ptr< YoYOptionletStripper > &yoyOptionletStripper, const Real slope, const Interpolator1D &interpolator=Interpolator1D()) | |
| virtual Real | minStrike () const |
| the minimum strike for which the term structure can return vols | |
| virtual Real | maxStrike () const |
| the maximum strike for which the term structure can return vols | |
| virtual Date | maxDate () const |
| the latest date for which the curve can return values | |
|
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 |
| virtual void | performCalculations () const |
Additional Inherited Members | |
Public Member Functions inherited from YoYOptionletVolatilitySurface | |
| virtual Volatility | baseLevel () const |
| YoYOptionletVolatilitySurface (Natural settlementDays, const Calendar &, BusinessDayConvention bdc, const DayCounter &dc, const Period &observationLag, Frequency frequency, bool indexIsInterpolated) | |
| virtual | ~YoYOptionletVolatilitySurface () |
| Volatility | volatility (const Date &maturityDate, Rate strike, const Period &obsLag=Period(-1, Days), bool extrapolate=false) const |
| Volatility | volatility (const Period &optionTenor, Rate strike, const Period &obsLag=Period(-1, Days), bool extrapolate=false) const |
| returns the volatility for a given option tenor and strike rate | |
| virtual Volatility | totalVariance (const Date &exerciseDate, Rate strike, const Period &obsLag=Period(-1, Days), bool extrapolate=false) const |
| Returns the total integrated variance for a given exercise date and strike rate. | |
| virtual Volatility | totalVariance (const Period &optionTenor, Rate strike, const Period &obsLag=Period(-1, Days), bool extrapolate=false) const |
| returns the total integrated variance for a given option tenor and strike rate | |
| virtual Period | observationLag () const |
| virtual Frequency | frequency () const |
| virtual bool | indexIsInterpolated () const |
| virtual Date | baseDate () const |
| virtual Time | timeFromBase (const Date &date, const Period &obsLag=Period(-1, Days)) const |
| base date will be in the past because of observation lag | |
Protected Member Functions inherited from YoYOptionletVolatilitySurface | |
| virtual void | checkRange (const Date &, Rate strike, bool extrapolate) const |
| virtual void | checkRange (Time, Rate strike, bool extrapolate) const |
| virtual void | setBaseLevel (Volatility v) |
Protected Attributes inherited from YoYOptionletVolatilitySurface | |
| Volatility | baseLevel_ |
| Period | observationLag_ |
| Frequency | frequency_ |
| bool | indexIsInterpolated_ |
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.
|
protectedvirtual |
Implements the actual volatility surface calculation in derived classes e.g. bilinear interpolation. N.B. does not derive the surface.
Implements YoYOptionletVolatilitySurface.