34 const std::vector<Rate>& coupons,
38 const Date& issueDate,
40 const Period& exCouponPeriod,
43 bool exCouponEndOfMonth,
45 :
Bond(settlementDays,
46 paymentCalendar==
Calendar() ? schedule.calendar() : paymentCalendar,
48 frequency_(schedule.hasTenor() ? schedule.tenor().frequency() :
NoFrequency),
49 dayCounter_(accrualDayCounter),
50 firstPeriodDayCounter_(firstPeriodDayCounter) {
Cash flow vector builders.
void addRedemptionsToCashflows(const std::vector< Real > &redemptions=std::vector< Real >())
const Leg & cashflows() const
const ext::shared_ptr< CashFlow > & redemption() const
FixedRateBond(Natural settlementDays, Real faceAmount, Schedule schedule, const std::vector< Rate > &coupons, const DayCounter &accrualDayCounter, BusinessDayConvention paymentConvention=Following, Real redemption=100.0, const Date &issueDate=Date(), const Calendar &paymentCalendar=Calendar(), const Period &exCouponPeriod=Period(), const Calendar &exCouponCalendar=Calendar(), BusinessDayConvention exCouponConvention=Unadjusted, bool exCouponEndOfMonth=false, const DayCounter &firstPeriodDayCounter=DayCounter())
simple annual compounding coupon rates
const DayCounter & firstPeriodDayCounter() const
helper class building a sequence of fixed rate coupons
FixedRateLeg & withNotionals(Real)
FixedRateLeg & withPaymentCalendar(const Calendar &)
FixedRateLeg & withPaymentAdjustment(BusinessDayConvention)
FixedRateLeg & withCouponRates(Rate, const DayCounter &paymentDayCounter, Compounding comp=Simple, Frequency freq=Annual)
FixedRateLeg & withFirstPeriodDayCounter(const DayCounter &)
FixedRateLeg & withExCouponPeriod(const Period &, const Calendar &, BusinessDayConvention, bool endOfMonth=false)
const Date & endDate() const
#define QL_ENSURE(condition, message)
throw an error if the given post-condition is not verified
BusinessDayConvention
Business Day conventions.
@ NoFrequency
null frequency
unsigned QL_INTEGER Natural
positive integer