# QuantLib_CappedFlooredYoYInflationCoupon man page

CappedFlooredYoYInflationCoupon — Capped or floored inflation coupon.

## Synopsis

`#include <ql/cashflows/capflooredinflationcoupon.hpp>`

Inherits **YoYInflationCoupon**.

### Public Member Functions

CappedFlooredYoYInflationCoupon(const boost::shared_ptr<YoYInflationCoupon> &underlying,Rate cap=Null<Rate>(),Rate floor=Null<Rate>())CappedFlooredYoYInflationCoupon(constDate&paymentDate,Realnominal, constDate&startDate, constDate&endDate,Natural fixingDays, const boost::shared_ptr<YoYInflationIndex> &index, constPeriod&observationLag, constDayCounter&dayCounter,Real gearing=1.0,Spread spread=0.0, constRate cap=Null<Rate>(), constRate floor=Null<Rate>(), constDate&refPeriodStart=Date(), constDate&refPeriodEnd=Date())

boolisCapped() const

boolisFloored() const

voidsetPricer(const boost::shared_ptr<YoYInflationCouponPricer> &)

**augmented Coupon interface**

Rate rate() const

swap(let) rateRate cap() const

capRate floor() const

floorRate effectiveCap() const

effective cap of fixingRate effectiveFloor() const

effective floor of fixing

**Observer interface**

voidupdate()

**Visitability**

virtual voidaccept(AcyclicVisitor&v)

### Protected Member Functions

virtual voidsetCommon(Rate cap,Rate floor)

### Protected Attributes

boost::shared_ptr<YoYInflationCoupon>underlying_

boolisFloored_

boolisCapped_Rate cap_Rate floor_

### Additional Inherited Members

## Detailed Description

Capped or floored inflation coupon.

Essentially a copy of the nominal version but taking a different index and a set of pricers (not just one).

The payoff $ P $ of a capped inflation-rate coupon with paysWithin = true is:

[ P = N imes T imes min(a L + b, C). ].PP where $ N $ is the notional, $ T $ is the accrual time, $ L $ is the inflation rate, $ a $ is its gearing, $ b $ is the spread, and $ C $ and $ F $ the strikes.

The payoff of a floored inflation-rate coupon is:

[ P = N imes T imes max(a L + b, F). ].PP The payoff of a collared inflation-rate coupon is:

[ P = N imes T imes min(max(a L + b, F), C). ].PP If paysWithin = false then the inverse is returned (this provides for instrument cap and caplet prices).

They can be decomposed in the following manner. Decomposition of a capped floating rate coupon when paysWithin = true: [ R = min(a L + b, C) = (a L + b) + min(C - b - xi |a| L, 0) ] where $ xi = sgn(a) $. Then: [ R = (a L + b) + |a| min(ac{C - b}{|a|} - xi L, 0) ]

## Member Function Documentation

### void update () [virtual]

This method must be implemented in derived classes. An instance of Observer does not call this method directly: instead, it will be called by the observables the instance registered with when they need to notify any changes.

Implements **Observer**.

## Author

Generated automatically by Doxygen for QuantLib from the source code.

## Referenced By

CappedFlooredYoYInflationCoupon(3) and setCommon(3) are aliases of QuantLib_CappedFlooredYoYInflationCoupon(3).