#include <qle/termstructures/piecewiseatmoptionletcurve.hpp>
Public Types | |
typedef PiecewiseOptionletCurve< Interpolator, Bootstrap >::this_curve | optionlet_curve |
Public Member Functions | |
PiecewiseAtmOptionletCurve (QuantLib::Natural settlementDays, const boost::shared_ptr< CapFloorTermVolCurve > &cftvc, const boost::shared_ptr< QuantLib::IborIndex > &index, const QuantLib::Handle< QuantLib::YieldTermStructure > &discount, bool flatFirstPeriod=true, const QuantLib::VolatilityType capFloorVolType=QuantLib::ShiftedLognormal, const QuantLib::Real capFloorVolDisplacement=0.0, const boost::optional< QuantLib::VolatilityType > optionletVolType=boost::none, const boost::optional< QuantLib::Real > optionletVolDisplacement=boost::none, bool interpOnOptionlets=true, const Interpolator &i=Interpolator(), const Bootstrap< optionlet_curve > &bootstrap=Bootstrap< optionlet_curve >()) | |
PiecewiseAtmOptionletCurve (const QuantLib::Date &referenceDate, const boost::shared_ptr< CapFloorTermVolCurve > &cftvc, const boost::shared_ptr< QuantLib::IborIndex > &index, const QuantLib::Handle< QuantLib::YieldTermStructure > &discount, bool flatFirstPeriod=true, const QuantLib::VolatilityType capFloorVolType=QuantLib::ShiftedLognormal, const QuantLib::Real capFloorVolDisplacement=0.0, const boost::optional< QuantLib::VolatilityType > optionletVolType=boost::none, const boost::optional< QuantLib::Real > optionletVolDisplacement=boost::none, bool interpOnOptionlets=true, const Interpolator &i=Interpolator(), const Bootstrap< optionlet_curve > &bootstrap=Bootstrap< optionlet_curve >()) | |
Inspectors | |
QuantLib::VolatilityType | capFloorVolType () const |
Volatility type for the underlying ATM cap floor curve. | |
QuantLib::Real | capFloorVolDisplacement () const |
The applicable shift if the underlying ATM cap floor curve has shifted lognormal volatility. | |
Observer interface | |
void | update () override |
LazyObject interface | |
void | performCalculations () const override |
TermStructure interface | |
QuantLib::Date | maxDate () const override |
VolatilityTermStructure interface | |
QuantLib::Rate | minStrike () const override |
QuantLib::Rate | maxStrike () const override |
OptionletVolatilityStructure interface | |
QuantLib::VolatilityType | volatilityType () const override |
QuantLib::Real | displacement () const override |
boost::shared_ptr< optionlet_curve > | curve () const |
The underlying optionlet curve. | |
boost::shared_ptr< QuantLib::SmileSection > | smileSectionImpl (QuantLib::Time optionTime) const override |
QuantLib::Volatility | volatilityImpl (QuantLib::Time optionTime, QuantLib::Rate strike) const override |
Helper class to strip caplet/floorlet volatilities from the cap floor term volatilities of a CapFloorTermVolCurve.