OvernightIndexedCoupon Class Reference

overnight coupon More...

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

Inheritance diagram for OvernightIndexedCoupon:
[legend]

## Public Member Functions

| OvernightIndexedCoupon (const Date &paymentDate, Real nominal, const Date &startDate, const Date &endDate, const boost::shared_ptr< OvernightIndex > &overnightIndex, Real gearing=1.0, Spread spread=0.0, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date(), const DayCounter &dayCounter=DayCounter(), bool telescopicValueDates=false)
Inspectors
const std::vector< Date > & | fixingDates () const
| fixing dates for the rates to be compounded
const std::vector< Time > & | dt () const
| accrual (compounding) periods
const std::vector< Rate > & | indexFixings () const
| fixings to be compounded
const std::vector< Date > & | valueDates () const
| value dates for the rates to be compounded
FloatingRateCoupon interface
Date | fixingDate () const
| the date when the coupon is fully determined
Visitability
void | accept (AcyclicVisitor &)
Public Member Functions inherited from FloatingRateCoupon
| FloatingRateCoupon (const Date &paymentDate, Real nominal, const Date &startDate, const Date &endDate, Natural fixingDays, const boost::shared_ptr< InterestRateIndex > &index, Real gearing=1.0, Spread spread=0.0, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date(), const DayCounter &dayCounter=DayCounter(), bool isInArrears=false)
virtual void | setPricer (const boost::shared_ptr< FloatingRateCouponPricer > &)
boost::shared_ptr< FloatingRateCouponPricer > | pricer () const
Real | amount () const
| returns the amount of the cash flow More...
Rate | rate () const
| accrued rate
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
const boost::shared_ptr< InterestRateIndex > & | index () const
| floating index
Natural | fixingDays () const
| fixing days
Real | gearing () const
| index gearing, i.e. multiplicative coefficient for the index
Spread | spread () const
| spread paid over the fixing of the underlying index
virtual Rate | indexFixing () const
| fixing of the underlying index
virtual Rate | convexityAdjustment () const
| convexity adjustment
virtual Rate | adjustedFixing () const
| convexity-adjusted fixing
bool | isInArrears () const
| whether or not the coupon fixes in arrears
void | update ()
Public Member Functions inherited from Coupon
| Coupon (const Date &paymentDate, Real nominal, const Date &accrualStartDate, const Date &accrualEndDate, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date(), const Date &exCouponDate=Date())
Date | date () const
Date | exCouponDate () const
| returns the date that the cash flow trades exCoupon
virtual Real | nominal () const
const Date & | accrualStartDate () const
| start of the accrual period
const Date & | accrualEndDate () const
| end of the accrual period
const Date & | referencePeriodStart () const
| start date of the reference period
const Date & | referencePeriodEnd () const
| end date of the reference period
Time | accrualPeriod () const
| accrual period as fraction of year
Date::serial_type | accrualDays () const
| accrual period in days
Time | accruedPeriod (const Date &) const
| accrued period as fraction of year at the given date
Date::serial_type | accruedDays (const Date &) const
| accrued days at the given date
Public Member Functions inherited from CashFlow
bool | hasOccurred (const Date &refDate=Date(), boost::optional< bool > includeRefDate=boost::none) const
| returns true if an event has already occurred before a date More...
bool | tradingExCoupon (const Date &refDate=Date()) const
| returns true if the cashflow is trading ex-coupon on the refDate
Event interface
Visitability
Public Member Functions inherited from Observable
| Observable (const Observable &)
Observable & | operator= (const Observable &)
void | notifyObservers ()
Public Member Functions inherited from Observer
| Observer (const Observer &)
Observer & | operator= (const Observer &)
std::pair< iterator, bool > | registerWith (const boost::shared_ptr< Observable > &)
void | registerWithObservables (const boost::shared_ptr< Observer > &)
Size | unregisterWith (const boost::shared_ptr< Observable > &)
void | unregisterWithAll ()
virtual void | deepUpdate ()

## Additional Inherited Members

Public Types inherited from Observer
typedef std::set< boost::shared_ptr< Observable > > | set_type
typedef set_type::iterator | iterator
Protected Member Functions inherited from FloatingRateCoupon
Rate | convexityAdjustmentImpl (Rate fixing) const
| convexity adjustment for the given index fixing
Protected Attributes inherited from FloatingRateCoupon
boost::shared_ptr< InterestRateIndex > | index_
DayCounter | dayCounter_
Natural | fixingDays_
Real | gearing_
Spread | spread_
bool | isInArrears_
boost::shared_ptr< FloatingRateCouponPricer > | pricer_
Protected Attributes inherited from Coupon
Date | paymentDate_
Real | nominal_
Date | accrualStartDate_
Date | accrualEndDate_
Date | refPeriodStart_
Date | refPeriodEnd_
Date | exCouponDate_
Real | accrualPeriod_

## Detailed Description

overnight coupon

Coupon paying the compounded interest due to daily overnight fixings.

Warning:
  telescopicValueDates optimizes the schedule for calculation speed, but might fail to produce correct results if the coupon ages by more than a grace period of 7 days. It is therefore recommended not to set this flag to true unless you know exactly what you are doing. The intended use is rather by the OISRateHelper which is safe, since it reinitialises the instrument each time the evaluation date changes.