CappedFlooredYoYInflationCoupon Class Reference
Capped or floored inflation coupon. More...
#include <ql/cashflows/capflooredinflationcoupon.hpp>

Public Member Functions | |
CappedFlooredYoYInflationCoupon (const boost::shared_ptr< YoYInflationCoupon > &underlying, Rate cap=Null< Rate >(), Rate floor=Null< Rate >()) | |
CappedFlooredYoYInflationCoupon (const Date &paymentDate, Real nominal, const Date &startDate, const Date &endDate, Natural fixingDays, const boost::shared_ptr< YoYInflationIndex > &index, const Period &observationLag, const DayCounter &dayCounter, Real gearing=1.0, Spread spread=0.0, const Rate cap=Null< Rate >(), const Rate floor=Null< Rate >(), const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date()) | |
bool | isCapped () const |
bool | isFloored () const |
void | setPricer (const boost::shared_ptr< YoYInflationCouponPricer > &) |
augmented Coupon interface | |
Rate | rate () const |
swap(let) rate | |
Rate | cap () const |
cap | |
Rate | floor () const |
floor | |
Rate | effectiveCap () const |
effective cap of fixing | |
Rate | effectiveFloor () const |
effective floor of fixing | |
Observer interface | |
void | update () |
Visitability | |
virtual void | accept (AcyclicVisitor &v) |
Protected Member Functions | |
virtual void | setCommon (Rate cap, Rate floor) |
Protected Attributes | |
boost::shared_ptr < YoYInflationCoupon > | underlying_ |
bool | isFloored_ |
bool | isCapped_ |
Rate | cap_ |
Rate | floor_ |
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 of a capped inflation-rate coupon with paysWithin = true is:
where is the notional,
is the accrual time,
is the inflation rate,
is its gearing,
is the spread, and
and
the strikes.
The payoff of a floored inflation-rate coupon is:
The payoff of a collared inflation-rate coupon is:
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:
where . Then:
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.
Reimplemented from InflationCoupon.