QuantLib
A free/open-source library for quantitative finance
Reference manual - version 1.20
Public Member Functions | List of all members
CPICouponPricer Class Reference

base pricer for capped/floored CPI coupons N.B. vol-dependent parts are a TODO More...

#include <ql/cashflows/cpicouponpricer.hpp>

+ Inheritance diagram for CPICouponPricer:

Public Member Functions

QL_DEPRECATED CPICouponPricer ()
 
 CPICouponPricer (const Handle< YieldTermStructure > &nominalTermStructure)
 
 CPICouponPricer (const Handle< CPIVolatilitySurface > &capletVol, const Handle< YieldTermStructure > &nominalTermStructure)
 
virtual Handle< CPIVolatilitySurfacecapletVolatility () const
 
virtual Handle< YieldTermStructurenominalTermStructure () const
 
virtual void setCapletVolatility (const Handle< CPIVolatilitySurface > &capletVol)
 
- Public Member Functions inherited from InflationCouponPricer
virtual void update ()
 
- 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 &)
 
void notifyObservers ()
 

InflationCouponPricer interface

Handle< CPIVolatilitySurfacecapletVol_
 data
 
Handle< YieldTermStructurenominalTermStructure_
 
const CPICouponcoupon_
 
Real gearing_
 
Spread spread_
 
Real discount_
 
virtual Real swapletPrice () const
 
virtual Rate swapletRate () const
 
virtual Real capletPrice (Rate effectiveCap) const
 
virtual Rate capletRate (Rate effectiveCap) const
 
virtual Real floorletPrice (Rate effectiveFloor) const
 
virtual Rate floorletRate (Rate effectiveFloor) const
 
virtual void initialize (const InflationCoupon &)
 
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 boost::unordered_set< ext::shared_ptr< Observable > > set_type
 
typedef set_type::iterator iterator
 
- Protected Attributes inherited from InflationCouponPricer
Handle< YieldTermStructurerateCurve_
 
Date paymentDate_
 

Detailed Description

base pricer for capped/floored CPI coupons N.B. vol-dependent parts are a TODO

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

Constructor & Destructor Documentation

◆ CPICouponPricer()

QL_DEPRECATED CPICouponPricer ( )
Deprecated:
Use one of the other constructors. Deprecated in version 1.19.

Member Function Documentation

◆ 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).