InflationCoupon Class Reference

Base inflation-coupon class. More...

#include <ql/cashflows/inflationcoupon.hpp>

Inheritance diagram for InflationCoupon:

List of all members.

Public Member Functions

 InflationCoupon (const Date &paymentDate, Real nominal, const Date &startDate, const Date &endDate, Natural fixingDays, const boost::shared_ptr< InflationIndex > &index, const Period &observationLag, const DayCounter &dayCounter, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date())
void setPricer (const boost::shared_ptr< InflationCouponPricer > &)
boost::shared_ptr
< InflationCouponPricer
pricer () const
CashFlow interface
Real amount () const
 returns the amount of the cash flow
Coupon interface
Real price (const Handle< YieldTermStructure > &discountingCurve) const
DayCounter dayCounter () const
 day counter for accrual calculation
Real accruedAmount (const Date &) const
 accrued amount at the given date
Rate rate () const
 accrued rate
Inspectors
const boost::shared_ptr
< InflationIndex > & 
index () const
 yoy inflation index
Period observationLag () const
 how the coupon observes the index
Natural fixingDays () const
 fixing days
virtual Date fixingDate () const
 fixing date
virtual Rate indexFixing () const
 fixing of the underlying index, as observed by the coupon
Observer interface
void update ()
Visitability
virtual void accept (AcyclicVisitor &)

Protected Member Functions

virtual bool checkPricerImpl (const boost::shared_ptr< InflationCouponPricer > &) const =0
 makes sure you were given the correct type of pricer

Protected Attributes

boost::shared_ptr
< InflationCouponPricer
pricer_
boost::shared_ptr< InflationIndexindex_
Period observationLag_
DayCounter dayCounter_
Natural fixingDays_

Detailed Description

Base inflation-coupon class.

The day counter is usually obtained from the inflation term structure that the inflation index uses for forecasting. There is no gearing or spread because these are relevant for YoY coupons but not zero inflation coupons.

Note:
inflation indices do not contain day counters or calendars.

Member Function Documentation

Real amount ( ) const [virtual]

returns the amount of the cash flow

Note:
The amount is not discounted, i.e., it is the actual amount paid at the cash flow date.

Implements CashFlow.

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.

Reimplemented in CappedFlooredYoYInflationCoupon.