QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
Interpolated flat smile surface. More...
#include <yoyinflationoptionletvolatilitystructure2.hpp>
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... | |
~InterpolatedYoYOptionletVolatilityCurve () override=default | |
Limits | |
Real | minStrike () const override |
the minimum strike for which the term structure can return vols More... | |
Real | maxStrike () const override |
the maximum strike for which the term structure can return vols More... | |
Date | maxDate () const override |
the latest date for which the curve can return values More... | |
Public Member Functions inherited from YoYOptionletVolatilitySurface | |
YoYOptionletVolatilitySurface (Natural settlementDays, const Calendar &, BusinessDayConvention bdc, const DayCounter &dc, const Period &observationLag, Frequency frequency, bool indexIsInterpolated, VolatilityType volType=ShiftedLognormal, Real displacement=0.0) | |
~YoYOptionletVolatilitySurface () override=default | |
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 More... | |
Volatility | volatility (Time time, Rate strike) const |
virtual VolatilityType | volatilityType () const |
Returns the volatility type. More... | |
virtual Real | displacement () const |
Returns the displacement for lognormal volatilities. More... | |
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 More... | |
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 More... | |
virtual Volatility | baseLevel () const |
Public Member Functions inherited from VolatilityTermStructure | |
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 More... | |
VolatilityTermStructure (Natural settlementDays, const Calendar &cal, BusinessDayConvention bdc, const DayCounter &dc=DayCounter()) | |
calculate the reference date based on the global evaluation date More... | |
virtual BusinessDayConvention | businessDayConvention () const |
the business day convention used in tenor to date conversion More... | |
Date | optionDateFromTenor (const Period &) const |
period/date conversion More... | |
Public Member Functions inherited from TermStructure | |
TermStructure (DayCounter dc=DayCounter()) | |
default constructor More... | |
TermStructure (const Date &referenceDate, Calendar calendar=Calendar(), DayCounter dc=DayCounter()) | |
initialize with a fixed reference date More... | |
TermStructure (Natural settlementDays, Calendar, DayCounter dc=DayCounter()) | |
calculate the reference date based on the global evaluation date More... | |
~TermStructure () override=default | |
virtual DayCounter | dayCounter () const |
the day counter used for date/time conversion More... | |
Time | timeFromReference (const Date &date) const |
date/time conversion More... | |
virtual Time | maxTime () const |
the latest time for which the curve can return values More... | |
virtual const Date & | referenceDate () const |
the date at which discount = 1.0 and/or variance = 0.0 More... | |
virtual Calendar | calendar () const |
the calendar used for reference and/or option date calculation More... | |
virtual Natural | settlementDays () const |
the settlementDays used for reference date calculation More... | |
void | update () override |
Public Member Functions inherited from Observer | |
Observer ()=default | |
Observer (const Observer &) | |
Observer & | operator= (const Observer &) |
virtual | ~Observer () |
std::pair< iterator, bool > | registerWith (const ext::shared_ptr< Observable > &) |
void | registerWithObservables (const ext::shared_ptr< Observer > &) |
Size | unregisterWith (const ext::shared_ptr< Observable > &) |
void | unregisterWithAll () |
virtual void | update ()=0 |
virtual void | deepUpdate () |
Public Member Functions inherited from Observable | |
Observable () | |
Observable (const Observable &) | |
Observable & | operator= (const Observable &) |
Observable (Observable &&)=delete | |
Observable & | operator= (Observable &&)=delete |
virtual | ~Observable ()=default |
void | notifyObservers () |
Public Member Functions inherited from Extrapolator | |
Extrapolator ()=default | |
virtual | ~Extrapolator ()=default |
void | enableExtrapolation (bool b=true) |
enable extrapolation in subsequent calls More... | |
void | disableExtrapolation (bool b=true) |
disable extrapolation in subsequent calls More... | |
bool | allowsExtrapolation () const |
tells whether extrapolation is enabled More... | |
Bootstrap interface | |
std::vector< Date > | dates_ |
std::vector< std::pair< Date, Real > > | nodes_ |
Rate | minStrike_ |
Rate | maxStrike_ |
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 |
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()) | |
Volatility | volatilityImpl (Time length, Rate strike) const override |
implements the actual volatility calculation in derived classes More... | |
Additional Inherited Members | |
Public Types inherited from Observer | |
typedef set_type::iterator | iterator |
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 More... | |
Protected Member Functions inherited from TermStructure | |
void | checkRange (const Date &d, bool extrapolate) const |
date-range check More... | |
void | checkRange (Time t, bool extrapolate) const |
time-range check More... | |
Protected Member Functions inherited from InterpolatedCurve< Interpolator1D > | |
InterpolatedCurve (std::vector< Time > times, std::vector< Real > data, const Interpolator1D &i=Interpolator1D()) | |
InterpolatedCurve (std::vector< Time > times, 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) |
InterpolatedCurve (InterpolatedCurve &&c) noexcept | |
InterpolatedCurve & | operator= (InterpolatedCurve &&c) noexcept |
void | setupTimes (const std::vector< Date > &dates, Date referenceDate, const DayCounter &dayCounter) |
void | setupInterpolation () |
~InterpolatedCurve ()=default | |
Protected Attributes inherited from YoYOptionletVolatilitySurface | |
Volatility | baseLevel_ |
Period | observationLag_ |
Frequency | frequency_ |
bool | indexIsInterpolated_ |
VolatilityType | volType_ |
Real | displacement_ |
Protected Attributes inherited from TermStructure | |
bool | moving_ = false |
bool | updated_ = true |
Calendar | calendar_ |
Protected Attributes inherited from InterpolatedCurve< Interpolator1D > | |
std::vector< Time > | times_ |
std::vector< Real > | data_ |
Interpolation | interpolation_ |
Interpolator1D | interpolator_ |
Date | maxDate_ |
Interpolated flat smile surface.
Interpolated in T direction and constant in K direction.
Definition at line 39 of file yoyinflationoptionletvolatilitystructure2.hpp.
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.
Definition at line 119 of file yoyinflationoptionletvolatilitystructure2.hpp.
|
overridedefault |
|
protected |
Definition at line 157 of file yoyinflationoptionletvolatilitystructure2.hpp.
|
overridevirtual |
the minimum strike for which the term structure can return vols
Implements YoYOptionletVolatilitySurface.
Definition at line 70 of file yoyinflationoptionletvolatilitystructure2.hpp.
|
overridevirtual |
the maximum strike for which the term structure can return vols
Implements YoYOptionletVolatilitySurface.
Definition at line 72 of file yoyinflationoptionletvolatilitystructure2.hpp.
|
overridevirtual |
the latest date for which the curve can return values
Implements TermStructure.
Definition at line 73 of file yoyinflationoptionletvolatilitystructure2.hpp.
|
virtual |
Reimplemented in PiecewiseYoYOptionletVolatilityCurve< Interpolator, Bootstrap, Traits >.
Definition at line 81 of file yoyinflationoptionletvolatilitystructure2.hpp.
|
virtual |
Reimplemented in PiecewiseYoYOptionletVolatilityCurve< Interpolator, Bootstrap, Traits >.
Definition at line 82 of file yoyinflationoptionletvolatilitystructure2.hpp.
|
virtual |
Reimplemented in PiecewiseYoYOptionletVolatilityCurve< Interpolator, Bootstrap, Traits >.
Definition at line 83 of file yoyinflationoptionletvolatilitystructure2.hpp.
Reimplemented in PiecewiseYoYOptionletVolatilityCurve< Interpolator, Bootstrap, Traits >.
Definition at line 84 of file yoyinflationoptionletvolatilitystructure2.hpp.
|
overrideprotectedvirtual |
implements the actual volatility calculation in derived classes
For the curve strike is ignored because the smile is (can only be) flat.
Implements YoYOptionletVolatilitySurface.
Definition at line 182 of file yoyinflationoptionletvolatilitystructure2.hpp.
|
mutableprotected |
Definition at line 106 of file yoyinflationoptionletvolatilitystructure2.hpp.
Definition at line 107 of file yoyinflationoptionletvolatilitystructure2.hpp.
|
protected |
Definition at line 113 of file yoyinflationoptionletvolatilitystructure2.hpp.
|
protected |
Definition at line 113 of file yoyinflationoptionletvolatilitystructure2.hpp.