#include <qle/termstructures/strippedoptionletadapter.hpp>
Public Member Functions | |
StrippedOptionletAdapter (const QuantLib::ext::shared_ptr< QuantLib::StrippedOptionletBase > &sob, const TimeInterpolator &ti=TimeInterpolator(), const SmileInterpolator &si=SmileInterpolator()) | |
StrippedOptionletAdapter (const QuantLib::Date &referenceDate, const QuantLib::ext::shared_ptr< QuantLib::StrippedOptionletBase > &sob, const TimeInterpolator &ti=TimeInterpolator(), const SmileInterpolator &si=SmileInterpolator()) | |
TermStructure interface | |
QuantLib::Date | maxDate () const override |
VolatilityTermStructure interface | |
QuantLib::Rate | minStrike () const override |
QuantLib::Rate | maxStrike () const override |
LazyObject interface | |
void | update () override |
void | performCalculations () const override |
Observer interface | |
void | deepUpdate () override |
Inspectors | |
QuantLib::ext::shared_ptr< QuantLib::StrippedOptionletBase > | optionletBase () const |
OptionletVolatilityStructure interface | |
QuantLib::ext::shared_ptr< QuantLib::StrippedOptionletBase > | optionletBase_ |
Base optionlet object that provides the stripped optionlet volatilities. More... | |
TimeInterpolator | ti_ |
The interpolation object in the time direction. More... | |
SmileInterpolator | si_ |
The interpolation object in the strike direction. More... | |
std::vector< QuantLib::Interpolation > | strikeSections_ |
bool | oneStrike_ |
Flag that indicates if optionletBase_ has only one strike for all option tenors. More... | |
QuantLib::VolatilityType | volatilityType () const override |
QuantLib::Real | displacement () const override |
QuantLib::ext::shared_ptr< QuantLib::SmileSection > | smileSectionImpl (QuantLib::Time optionTime) const override |
QuantLib::Volatility | volatilityImpl (QuantLib::Time length, QuantLib::Rate strike) const override |
void | populateOneStrike () |
Method to populate oneStrike_ on initialisation. More... | |
Adapter class for turning a StrippedOptionletBase into an OptionletVolatilityStructure.
The class takes two template parameters indicating the interpolation in the time and strike direction respectively.
The class can take a QuantLib::StrippedOptionletBase that has only one strike column. In this case, the strike interpolation is ignored and the volatility at one of the pillar tenors, and any strike, is merely the passed in volatility. In this case, the smile sections are flat. All of this enables the StrippedOptionletAdapter to represent a stripped ATM optionlet curve. The single strike in the QuantLib::StrippedOptionletBase is ignored.
Definition at line 51 of file strippedoptionletadapter.hpp.
StrippedOptionletAdapter | ( | const QuantLib::ext::shared_ptr< QuantLib::StrippedOptionletBase > & | sob, |
const TimeInterpolator & | ti = TimeInterpolator() , |
||
const SmileInterpolator & | si = SmileInterpolator() |
||
) |
Constructor that does not take a reference date. The settlement days is derived from sob
and the term structure will be a moving term structure.
Definition at line 131 of file strippedoptionletadapter.hpp.
StrippedOptionletAdapter | ( | const QuantLib::Date & | referenceDate, |
const QuantLib::ext::shared_ptr< QuantLib::StrippedOptionletBase > & | sob, | ||
const TimeInterpolator & | ti = TimeInterpolator() , |
||
const SmileInterpolator & | si = SmileInterpolator() |
||
) |
Constructor taking an explicit referenceDate
and the term structure will therefore be not moving.
Definition at line 142 of file strippedoptionletadapter.hpp.
|
override |
Definition at line 152 of file strippedoptionletadapter.hpp.
|
override |
Definition at line 157 of file strippedoptionletadapter.hpp.
|
override |
Definition at line 177 of file strippedoptionletadapter.hpp.
|
override |
Definition at line 193 of file strippedoptionletadapter.hpp.
|
override |
Definition at line 198 of file strippedoptionletadapter.hpp.
|
override |
Definition at line 203 of file strippedoptionletadapter.hpp.
|
override |
Definition at line 214 of file strippedoptionletadapter.hpp.
|
override |
Definition at line 237 of file strippedoptionletadapter.hpp.
QuantLib::ext::shared_ptr< QuantLib::StrippedOptionletBase > optionletBase |
Definition at line 244 of file strippedoptionletadapter.hpp.
|
overrideprotected |
Definition at line 250 of file strippedoptionletadapter.hpp.
|
overrideprotected |
Definition at line 291 of file strippedoptionletadapter.hpp.
|
private |
Method to populate oneStrike_ on initialisation.
Definition at line 319 of file strippedoptionletadapter.hpp.
|
private |
Base optionlet object that provides the stripped optionlet volatilities.
Definition at line 110 of file strippedoptionletadapter.hpp.
|
private |
The interpolation object in the time direction.
Definition at line 113 of file strippedoptionletadapter.hpp.
|
private |
The interpolation object in the strike direction.
Definition at line 116 of file strippedoptionletadapter.hpp.
|
mutableprivate |
The optionlet volatility vs strike section at each optionlet fixing date It is mutable
so that we can call enableExtrapolation
in performCalculations
.
Definition at line 121 of file strippedoptionletadapter.hpp.
|
private |
Flag that indicates if optionletBase_ has only one strike for all option tenors.
Definition at line 124 of file strippedoptionletadapter.hpp.