QuantLib: CPICouponPricer Class Reference

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:
[legend]

## Public Member Functions
QL_DEPRECATED | CPICouponPricer ()
| CPICouponPricer (const Handle< YieldTermStructure > &nominalTermStructure)
| CPICouponPricer (const Handle< CPIVolatilitySurface > &capletVol, const Handle< YieldTermStructure > &nominalTermStructure)
virtual Handle< CPIVolatilitySurface > | capletVolatility () const
virtual Handle< YieldTermStructure > | nominalTermStructure () 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 &)
Observer & | operator= (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 &)
Observable & | operator= (const Observable &)
void | notifyObservers ()

## InflationCouponPricer interface
Handle< CPIVolatilitySurface > | capletVol_
| data
Handle< YieldTermStructure > | nominalTermStructure_
const CPICoupon * | coupon_
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< YieldTermStructure > | rateCurve_
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).