Logo
Reference manual - version qle_version
OptionletStripper1 Class Reference

#include <qle/termstructures/optionletstripper1.hpp>

Inheritance diagram for OptionletStripper1:

Public Member Functions

 OptionletStripper1 (const QuantLib::ext::shared_ptr< QuantExt::CapFloorTermVolSurface > &, const QuantLib::ext::shared_ptr< IborIndex > &index, Rate switchStrikes=Null< Rate >(), Real accuracy=1.0e-6, Natural maxIter=100, const Handle< YieldTermStructure > &discount=Handle< YieldTermStructure >(), const VolatilityType type=ShiftedLognormal, const Real displacement=0.0, const optional< VolatilityType > targetVolatilityType=QuantLib::ext::nullopt, const optional< Real > targetDisplacement=QuantLib::ext::nullopt)
const Matrix & capFloorPrices () const
const Matrix & capletVols () const
const Matrix & capFloorVolatilities () const
const Matrix & optionletPrices () const
Rate switchStrike () const
const Handle< YieldTermStructure > & discountCurve () const
const std::vector< Rate > & optionletStrikes (Size i) const override
const std::vector< Volatility > & optionletVolatilities (Size i) const override
const std::vector< Date > & optionletFixingDates () const override
const std::vector< Time > & optionletFixingTimes () const override
Size optionletMaturities () const override
const std::vector< Rate > & atmOptionletRates () const override
DayCounter dayCounter () const override
Calendar calendar () const override
Natural settlementDays () const override
BusinessDayConvention businessDayConvention () const override
const std::vector< Period > & optionletFixingTenors () const
const std::vector< Date > & optionletPaymentDates () const
const std::vector< Time > & optionletAccrualPeriods () const
ext::shared_ptr< CapFloorTermVolSurfacetermVolSurface () const
ext::shared_ptr< IborIndexindex () const
Real displacement () const override
VolatilityType volatilityType () const override
const Period & rateComputationPeriod () const

LazyObject interface

void performCalculations () const override

Additional Inherited Members

 OptionletStripper (const ext::shared_ptr< QuantExt::CapFloorTermVolSurface > &, const ext::shared_ptr< IborIndex > &index, const Handle< YieldTermStructure > &discount=Handle< YieldTermStructure >(), const VolatilityType type=ShiftedLognormal, const Real displacement=0.0, const Period &rateComputationPeriod=0 *Days, const Size onCapSettlementDays=0)
virtual void populateDates () const
 Method to populate the dates, times and accruals that can be overridden in derived classes.
ext::shared_ptr< CapFloorTermVolSurfacetermVolSurface_
ext::shared_ptr< IborIndexindex_
Handle< YieldTermStructure > discount_
Size nStrikes_
Size nOptionletTenors_
std::vector< std::vector< Rate > > optionletStrikes_
std::vector< std::vector< Volatility > > optionletVolatilities_
std::vector< Time > optionletTimes_
std::vector< Date > optionletDates_
std::vector< Period > optionletTenors_
std::vector< Rate > atmOptionletRate_
std::vector< Date > optionletPaymentDates_
std::vector< Time > optionletAccrualPeriods_
std::vector< Period > capFloorLengths_
const VolatilityType volatilityType_
const Real displacement_
const Period rateComputationPeriod_
const Size onCapSettlementDays_

Detailed Description

Helper class to strip optionlet (i.e. caplet/floorlet) volatilities (a.k.a. forward-forward volatilities) from the (cap/floor) term volatilities of a CapFloorTermVolSurface.