#include <qle/termstructures/piecewiseatmoptionletcurve.hpp>
Inheritance diagram for PiecewiseAtmOptionletCurve< Interpolator, Bootstrap >:Public Types | |
| typedef PiecewiseOptionletCurve< Interpolator, Bootstrap >::this_curve | optionlet_curve |
Public Member Functions | |
| PiecewiseAtmOptionletCurve (QuantLib::Natural settlementDays, const QuantLib::ext::shared_ptr< CapFloorTermVolCurve > &cftvc, const QuantLib::ext::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 QuantLib::ext::shared_ptr< CapFloorTermVolCurve > &cftvc, const QuantLib::ext::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 |
| QuantLib::ext::shared_ptr< optionlet_curve > | curve () const |
| The underlying optionlet curve. | |
| QuantLib::ext::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.