24#ifndef quantext_floating_annuity_coupon_hpp
25#define quantext_floating_annuity_coupon_hpp
27#include <ql/cashflows/floatingratecoupon.hpp>
28#include <ql/indexes/iborindex.hpp>
29#include <ql/patterns/lazyobject.hpp>
30#include <ql/time/schedule.hpp>
40 FloatingAnnuityCoupon(Real annuity,
bool underflow,
const QuantLib::ext::shared_ptr<Coupon>& previousCoupon,
41 const Date& paymentDate,
const Date& startDate,
const Date& endDate, Natural
fixingDays,
42 const QuantLib::ext::shared_ptr<InterestRateIndex>&
index, Real
gearing = 1.0, Spread
spread = 0.0,
43 const Date& refPeriodStart = Date(),
const Date& refPeriodEnd = Date(),
46 Rate
amount()
const override;
52 Rate
rate()
const override;
53 Real
price(
const Handle<YieldTermStructure>& discountingCurve)
const;
54 const QuantLib::ext::shared_ptr<InterestRateIndex>&
index()
const;
67 virtual void accept(AcyclicVisitor&)
override;
80 QuantLib::ext::shared_ptr<InterestRateIndex>
index_;
void performCalculations() const override
QuantLib::ext::shared_ptr< Coupon > previousCoupon_
virtual Rate convexityAdjustment() const
const QuantLib::ext::shared_ptr< InterestRateIndex > & index() const
Natural fixingDays() const
QuantLib::ext::shared_ptr< InterestRateIndex > index_
Rate rate() const override
Rate amount() const override
virtual void accept(AcyclicVisitor &) override
Rate nominal() const override
DayCounter dayCounter() const override
virtual Rate adjustedFixing() const
Real price(const Handle< YieldTermStructure > &discountingCurve) const
Real accruedAmount(const Date &d) const override
Rate previousNominal() const