#include <ql/cashflows/averagebmacoupon.hpp>
Public Member Functions | |
AverageBMACoupon (const Date &paymentDate, Real nominal, const Date &startDate, const Date &endDate, const boost::shared_ptr< BMAIndex > &index, Real gearing=1.0, Spread spread=0.0, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date(), const DayCounter &dayCounter=DayCounter()) | |
FloatingRateCoupon interface | |
Date | fixingDate () const |
not applicable here; use fixingDates() instead | |
std::vector< Date > | fixingDates () const |
fixing dates of the rates to be averaged | |
Rate | indexFixing () const |
not applicable here; use indexFixings() instead | |
std::vector< Rate > | indexFixings () const |
fixings of the underlying index to be averaged | |
Rate | convexityAdjustment () const |
not applicable here | |
Visitability | |
void | accept (AcyclicVisitor &) |
![]() | |
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) | |
void | setPricer (const boost::shared_ptr< FloatingRateCouponPricer > &) |
boost::shared_ptr < FloatingRateCouponPricer > | pricer () const |
Real | amount () const |
returns the amount of the cash flow | |
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 | adjustedFixing () const |
convexity-adjusted fixing | |
bool | isInArrears () const |
whether or not the coupon fixes in arrears | |
void | update () |
![]() | |
Coupon (const Date &paymentDate, Real nominal, const Date &accrualStartDate, const Date &accrualEndDate, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date()) | |
Date | date () const |
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 | |
BigInteger | accrualDays () const |
accrual period in days | |
Time | accruedPeriod (const Date &) const |
accrued period as fraction of year at the given date | |
BigInteger | accruedDays (const Date &) const |
accrued days at the given date | |
![]() | |
bool | hasOccurred (const Date &refDate=Date(), boost::optional< bool > includeRefDate=boost::none) const |
returns true if an event has already occurred before a date | |
Event interface | |
Visitability | |
![]() | |
Observable (const Observable &) | |
Observable & | operator= (const Observable &) |
void | notifyObservers () |
![]() | |
Observer (const Observer &) | |
Observer & | operator= (const Observer &) |
std::pair< std::set < boost::shared_ptr < Observable > >::iterator, bool > | registerWith (const boost::shared_ptr< Observable > &) |
Size | unregisterWith (const boost::shared_ptr< Observable > &) |
void | unregisterWithAll () |
Additional Inherited Members | |
![]() | |
Rate | convexityAdjustmentImpl (Rate fixing) const |
convexity adjustment for the given index fixing | |
![]() | |
boost::shared_ptr < InterestRateIndex > | index_ |
DayCounter | dayCounter_ |
Natural | fixingDays_ |
Real | gearing_ |
Spread | spread_ |
bool | isInArrears_ |
boost::shared_ptr < FloatingRateCouponPricer > | pricer_ |
Average BMA coupon.
Coupon paying a BMA index, where the coupon rate is a weighted average of relevant fixings.
The weighted average is computed based on the actual calendar days for which a given fixing is valid and contributing to the given interest period.
Before weights are computed, the fixing schedule is adjusted for the index's fixing day gap. See rate() method for details.