QuantLib: a free/open-source library for quantitative finance
Reference manual - version 1.40
Loading...
Searching...
No Matches
YoYInflationCouponPricer Class Reference

base pricer for capped/floored YoY inflation coupons More...

#include <ql/cashflows/inflationcouponpricer.hpp>

Inheritance diagram for YoYInflationCouponPricer:

Public Member Functions

 YoYInflationCouponPricer (Handle< YieldTermStructure > nominalTermStructure)
 YoYInflationCouponPricer (Handle< YoYOptionletVolatilitySurface > capletVol, Handle< YieldTermStructure > nominalTermStructure)
virtual Handle< YoYOptionletVolatilitySurfacecapletVolatility () const
virtual Handle< YieldTermStructurenominalTermStructure () const
virtual void setCapletVolatility (const Handle< YoYOptionletVolatilitySurface > &capletVol)
Public Member Functions inherited from InflationCouponPricer
void update () override
Public Member Functions inherited from Observer
 Observer (const Observer &)
Observeroperator= (const 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 deepUpdate ()
Public Member Functions inherited from Observable
 Observable (const Observable &)
Observableoperator= (const Observable &)
 Observable (Observable &&)=delete
Observableoperator= (Observable &&)=delete
void notifyObservers ()

InflationCouponPricer interface

Handle< YoYOptionletVolatilitySurfacecapletVol_
 data
Handle< YieldTermStructurenominalTermStructure_
const YoYInflationCouponcoupon_
Real gearing_
Spread spread_
Real discount_
Real swapletPrice () const override
Rate swapletRate () const override
Real capletPrice (Rate effectiveCap) const override
Rate capletRate (Rate effectiveCap) const override
Real floorletPrice (Rate effectiveFloor) const override
Rate floorletRate (Rate effectiveFloor) const override
void initialize (const InflationCoupon &) override
virtual Real optionletPrice (Option::Type optionType, Real effStrike) const
virtual Real optionletRate (Option::Type optionType, Real effStrike) const
virtual Real optionletPriceImp (Option::Type, Real strike, Real forward, Real stdDev) const
virtual Rate adjustedFixing (Rate fixing=Null< Rate >()) const

Additional Inherited Members

Public Types inherited from Observer
typedef set_type::iterator iterator
Date paymentDate_

Detailed Description

base pricer for capped/floored YoY inflation coupons

Note
this pricer can already do swaplets but to get volatility-dependent coupons you need the descendents.

Member Function Documentation

◆ swapletPrice()

Real swapletPrice ( ) const
overridevirtual

Implements InflationCouponPricer.

◆ swapletRate()

Rate swapletRate ( ) const
overridevirtual

Implements InflationCouponPricer.

◆ capletPrice()

Real capletPrice ( Rate effectiveCap) const
overridevirtual

Implements InflationCouponPricer.

◆ capletRate()

Rate capletRate ( Rate effectiveCap) const
overridevirtual

Implements InflationCouponPricer.

◆ floorletPrice()

Real floorletPrice ( Rate effectiveFloor) const
overridevirtual

Implements InflationCouponPricer.

◆ floorletRate()

Rate floorletRate ( Rate effectiveFloor) const
overridevirtual

Implements InflationCouponPricer.

◆ initialize()

void initialize ( const InflationCoupon & )
overridevirtual

Implements InflationCouponPricer.

◆ optionletPriceImp()

virtual Real optionletPriceImp ( Option::Type ,
Real strike,
Real forward,
Real stdDev ) const
protectedvirtual

Derived classes usually only need to implement this.

The name of the method is misleading. This actually returns the rate of the optionlet (so not discounted and not accrued).

Reimplemented in BachelierYoYInflationCouponPricer, BlackYoYInflationCouponPricer, and UnitDisplacedBlackYoYInflationCouponPricer.