25#ifndef quantlib_bma_coupon_hpp
26#define quantlib_bma_coupon_hpp
48 const Date& startDate,
50 const ext::shared_ptr<BMAIndex>&
index,
Bond Market Association index.
degenerate base class for the Acyclic Visitor pattern
std::vector< Date > fixingDates() const
fixing dates of the rates to be averaged
Rate indexFixing() const override
not applicable here; use indexFixings() instead
void accept(AcyclicVisitor &) override
std::vector< Rate > indexFixings() const
fixings of the underlying index to be averaged
Rate convexityAdjustment() const override
not applicable here
Date fixingDate() const override
not applicable here; use fixingDates() instead
helper class building a sequence of average BMA coupons
BusinessDayConvention paymentAdjustment_
AverageBMALeg & withSpreads(Spread spread)
AverageBMALeg & withGearings(Real gearing)
std::vector< Real > notionals_
std::vector< Spread > spreads_
AverageBMALeg & withPaymentDayCounter(const DayCounter &)
ext::shared_ptr< BMAIndex > index_
AverageBMALeg & withPaymentAdjustment(BusinessDayConvention)
AverageBMALeg & withNotionals(Real notional)
std::vector< Real > gearings_
DayCounter paymentDayCounter_
virtual Real nominal() const
base floating-rate coupon class
Real gearing() const
index gearing, i.e. multiplicative coefficient for the index
DayCounter dayCounter() const override
day counter for accrual calculation
const ext::shared_ptr< InterestRateIndex > & index() const
floating index
Spread spread() const
spread paid over the fixing of the underlying index
Coupon paying a variable index-based rate.
BusinessDayConvention
Business Day conventions.
Real Spread
spreads on interest rates
std::vector< ext::shared_ptr< CashFlow > > Leg
Sequence of cash-flows.