Interpolated flat smile surface. More...
#include <ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp>
 Inheritance diagram for InterpolatedYoYOptionletVolatilityCurve< Interpolator1D >:
 Inheritance diagram for InterpolatedYoYOptionletVolatilityCurve< Interpolator1D >:| Public Member Functions | |
| Constructor | |
| InterpolatedYoYOptionletVolatilityCurve (Natural settlementDays, const Calendar &, BusinessDayConvention bdc, const DayCounter &dc, const Period &lag, Frequency frequency, bool indexIsInterpolated, const std::vector< Date > &d, const std::vector< Volatility > &v, Rate minStrike, Rate maxStrike, const Interpolator1D &i=Interpolator1D()) | |
| calculate the reference date based on the global evaluation date  More... | |
| Limits | |
| 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 | |
| Bootstrap interface | |
| virtual const std::vector< Time > & | times () const | 
| virtual const std::vector< Date > & | dates () const | 
| virtual const std::vector< Real > & | data () const | 
| virtual std::vector< std::pair< Date, Real > > | nodes () const | 
|  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.  More... | |
| 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 | |
|  Public Member Functions inherited from VolatilityTermStructure | |
| virtual BusinessDayConvention | businessDayConvention () const | 
| the business day convention used in tenor to date conversion | |
| Date | optionDateFromTenor (const Period &) const | 
| period/date conversion | |
| VolatilityTermStructure (BusinessDayConvention bdc, const DayCounter &dc=DayCounter()) | |
| VolatilityTermStructure (const Date &referenceDate, const Calendar &cal, BusinessDayConvention bdc, const DayCounter &dc=DayCounter()) | |
| initialize with a fixed reference date | |
| VolatilityTermStructure (Natural settlementDays, const Calendar &cal, BusinessDayConvention bdc, const DayCounter &dc=DayCounter()) | |
| calculate the reference date based on the global evaluation date | |
|  Public Member Functions inherited from TermStructure | |
| TermStructure (const DayCounter &dc=DayCounter()) | |
| default constructor  More... | |
| TermStructure (const Date &referenceDate, const Calendar &calendar=Calendar(), const DayCounter &dc=DayCounter()) | |
| initialize with a fixed reference date | |
| TermStructure (Natural settlementDays, const Calendar &, const DayCounter &dc=DayCounter()) | |
| calculate the reference date based on the global evaluation date | |
| virtual DayCounter | dayCounter () const | 
| the day counter used for date/time conversion | |
| Time | timeFromReference (const Date &date) const | 
| date/time conversion | |
| virtual Time | maxTime () const | 
| the latest time for which the curve can return values | |
| virtual const Date & | referenceDate () const | 
| the date at which discount = 1.0 and/or variance = 0.0 | |
| virtual Calendar | calendar () const | 
| the calendar used for reference and/or option date calculation | |
| virtual Natural | settlementDays () const | 
| the settlementDays used for reference date calculation | |
| void | update () | 
|  Public Member Functions inherited from Observer | |
| Observer (const Observer &) | |
| Observer & | operator= (const Observer &) | 
| std::pair< iterator, bool > | registerWith (const boost::shared_ptr< Observable > &) | 
| void | registerWithObservables (const boost::shared_ptr< Observer > &) | 
| Size | unregisterWith (const boost::shared_ptr< Observable > &) | 
| void | unregisterWithAll () | 
| virtual void | deepUpdate () | 
|  Public Member Functions inherited from Observable | |
| Observable (const Observable &) | |
| Observable & | operator= (const Observable &) | 
| void | notifyObservers () | 
|  Public Member Functions inherited from Extrapolator | |
| void | enableExtrapolation (bool b=true) | 
| enable extrapolation in subsequent calls | |
| void | disableExtrapolation (bool b=true) | 
| disable extrapolation in subsequent calls | |
| bool | allowsExtrapolation () const | 
| tells whether extrapolation is enabled | |
| Protected Member Functions | |
| InterpolatedYoYOptionletVolatilityCurve (Natural settlementDays, const Calendar &, BusinessDayConvention bdc, const DayCounter &dc, const Period &lag, Frequency frequency, bool indexIsInterpolated, Rate minStrike, Rate maxStrike, Volatility baseYoYVolatility, const Interpolator1D &i=Interpolator1D()) | |
| virtual Volatility | volatilityImpl (Time length, Rate strike) const | 
| implements the actual volatility calculation in derived classes  More... | |
|  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 Member Functions inherited from VolatilityTermStructure | |
| void | checkStrike (Rate strike, bool extrapolate) const | 
| strike-range check | |
|  Protected Member Functions inherited from TermStructure | |
| void | checkRange (const Date &d, bool extrapolate) const | 
| date-range check | |
| void | checkRange (Time t, bool extrapolate) const | 
| time-range check | |
|  Protected Member Functions inherited from InterpolatedCurve< Interpolator1D > | |
| void | setupInterpolation () | 
| InterpolatedCurve (const std::vector< Time > ×, const std::vector< Real > &data, const Interpolator1D &i=Interpolator1D()) | |
| InterpolatedCurve (const std::vector< Time > ×, const Interpolator1D &i=Interpolator1D()) | |
| InterpolatedCurve (Size n, const Interpolator1D &i=Interpolator1D()) | |
| InterpolatedCurve (const Interpolator1D &i=Interpolator1D()) | |
| InterpolatedCurve (const InterpolatedCurve &c) | |
| InterpolatedCurve & | operator= (const InterpolatedCurve &c) | 
| Protected Attributes | |
| std::vector< Date > | dates_ | 
| std::vector< std::pair< Date, Real > > | nodes_ | 
| Rate | minStrike_ | 
| Rate | maxStrike_ | 
|  Protected Attributes inherited from YoYOptionletVolatilitySurface | |
| Volatility | baseLevel_ | 
| Period | observationLag_ | 
| Frequency | frequency_ | 
| bool | indexIsInterpolated_ | 
|  Protected Attributes inherited from TermStructure | |
| bool | moving_ | 
| bool | updated_ | 
| Calendar | calendar_ | 
|  Protected Attributes inherited from InterpolatedCurve< Interpolator1D > | |
| std::vector< Time > | times_ | 
| std::vector< Real > | data_ | 
| Interpolation | interpolation_ | 
| Interpolator1D | interpolator_ | 
| Date | maxDate_ | 
| Additional Inherited Members | |
|  Public Types inherited from Observer | |
| typedef std::set< boost::shared_ptr< Observable > > | set_type | 
| typedef set_type::iterator | iterator | 
Interpolated flat smile surface.
Interpolated in T direction and constant in K direction.
| InterpolatedYoYOptionletVolatilityCurve | ( | Natural | settlementDays, | 
| const Calendar & | cal, | ||
| BusinessDayConvention | bdc, | ||
| const DayCounter & | dc, | ||
| const Period & | lag, | ||
| Frequency | frequency, | ||
| bool | indexIsInterpolated, | ||
| const std::vector< Date > & | d, | ||
| const std::vector< Volatility > & | v, | ||
| Rate | minStrike, | ||
| Rate | maxStrike, | ||
| const Interpolator1D & | i = Interpolator1D() | ||
| ) | 
calculate the reference date based on the global evaluation date
The dates are those of the volatility ... there is no lag on the dates but they are relative to a start date earlier than the reference date as always for inflation.
| 
 | protectedvirtual | 
implements the actual volatility calculation in derived classes
For the curve strike is ignored because the smile is (can only be) flat.
Implements YoYOptionletVolatilitySurface.