QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
Loading...
Searching...
No Matches
List of all members
FixedRateCoupon Class Reference

Coupon paying a fixed interest rate More...

#include <fixedratecoupon.hpp>

+ Inheritance diagram for FixedRateCoupon:
+ Collaboration diagram for FixedRateCoupon:

Public Member Functions

constructors
 FixedRateCoupon (const Date &paymentDate, Real nominal, Rate rate, const DayCounter &dayCounter, const Date &accrualStartDate, const Date &accrualEndDate, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date(), const Date &exCouponDate=Date())
 
 FixedRateCoupon (const Date &paymentDate, Real nominal, InterestRate interestRate, const Date &accrualStartDate, const Date &accrualEndDate, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date(), const Date &exCouponDate=Date())
 
LazyObject interface
void performCalculations () const override
 
CashFlow interface
Real amount () const override
 returns the amount of the cash flow More...
 
Coupon interface
Rate rate () const override
 accrued rate More...
 
InterestRate interestRate () const
 
DayCounter dayCounter () const override
 day counter for accrual calculation More...
 
Real accruedAmount (const Date &) const override
 accrued amount at the given date More...
 
- 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 override
 
Date exCouponDate () const override
 returns the date that the cash flow trades exCoupon More...
 
virtual Real nominal () const
 
const DateaccrualStartDate () const
 start of the accrual period More...
 
const DateaccrualEndDate () const
 end of the accrual period More...
 
const DatereferencePeriodStart () const
 start date of the reference period More...
 
const DatereferencePeriodEnd () const
 end date of the reference period More...
 
Time accrualPeriod () const
 accrual period as fraction of year More...
 
Date::serial_type accrualDays () const
 accrual period in days More...
 
Time accruedPeriod (const Date &) const
 accrued period as fraction of year at the given date More...
 
Date::serial_type accruedDays (const Date &) const
 accrued days at the given date More...
 
- Public Member Functions inherited from CashFlow
 ~CashFlow () override=default
 
bool hasOccurred (const Date &refDate=Date(), ext::optional< bool > includeRefDate=ext::nullopt) const override
 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 More...
 
- Public Member Functions inherited from Event
 ~Event () override=default
 
- Public Member Functions inherited from Observable
 Observable ()
 
 Observable (const Observable &)
 
Observableoperator= (const Observable &)
 
 Observable (Observable &&)=delete
 
Observableoperator= (Observable &&)=delete
 
virtual ~Observable ()=default
 
void notifyObservers ()
 
- Public Member Functions inherited from LazyObject
 LazyObject ()
 
 ~LazyObject () override=default
 
void update () override
 
bool isCalculated () const
 
void forwardFirstNotificationOnly ()
 
void alwaysForwardNotifications ()
 
void recalculate ()
 
void freeze ()
 
void unfreeze ()
 
- Public Member Functions inherited from Observer
 Observer ()=default
 
 Observer (const Observer &)
 
Observeroperator= (const Observer &)
 
virtual ~Observer ()
 
std::pair< iterator, boolregisterWith (const ext::shared_ptr< Observable > &)
 
void registerWithObservables (const ext::shared_ptr< Observer > &)
 
Size unregisterWith (const ext::shared_ptr< Observable > &)
 
void unregisterWithAll ()
 
virtual void update ()=0
 
virtual void deepUpdate ()
 

Visitability

InterestRate rate_
 
Real amount_
 
void accept (AcyclicVisitor &) override
 

Additional Inherited Members

- Public Types inherited from Observer
typedef set_type::iterator iterator
 
- Protected Member Functions inherited from LazyObject
virtual void calculate () const
 
- Protected Attributes inherited from Coupon
Date paymentDate_
 
Real nominal_
 
Date accrualStartDate_
 
Date accrualEndDate_
 
Date refPeriodStart_
 
Date refPeriodEnd_
 
Date exCouponDate_
 
Real accrualPeriod_
 
- Protected Attributes inherited from LazyObject
bool calculated_ = false
 
bool frozen_ = false
 
bool alwaysForward_
 

Detailed Description

Coupon paying a fixed interest rate

Definition at line 41 of file fixedratecoupon.hpp.

Constructor & Destructor Documentation

◆ FixedRateCoupon() [1/2]

FixedRateCoupon ( const Date paymentDate,
Real  nominal,
Rate  rate,
const DayCounter dayCounter,
const Date accrualStartDate,
const Date accrualEndDate,
const Date refPeriodStart = Date(),
const Date refPeriodEnd = Date(),
const Date exCouponDate = Date() 
)

Definition at line 32 of file fixedratecoupon.cpp.

◆ FixedRateCoupon() [2/2]

FixedRateCoupon ( const Date paymentDate,
Real  nominal,
InterestRate  interestRate,
const Date accrualStartDate,
const Date accrualEndDate,
const Date refPeriodStart = Date(),
const Date refPeriodEnd = Date(),
const Date exCouponDate = Date() 
)

Definition at line 45 of file fixedratecoupon.cpp.

Member Function Documentation

◆ performCalculations()

void performCalculations ( ) const
overridevirtual

This method must implement any calculations which must be (re)done in order to calculate the desired results.

Reimplemented from CashFlow.

Definition at line 67 of file fixedratecoupon.cpp.

+ Here is the call graph for this function:

◆ amount()

Real amount ( ) const
overridevirtual

returns the amount of the cash flow

Note
The amount is not discounted, i.e., it is the actual amount paid at the cash flow date.

Implements CashFlow.

Definition at line 62 of file fixedratecoupon.cpp.

+ Here is the call graph for this function:

◆ rate()

Rate rate ( ) const
overridevirtual

accrued rate

Implements Coupon.

Definition at line 73 of file fixedratecoupon.hpp.

◆ interestRate()

InterestRate interestRate ( ) const

Definition at line 74 of file fixedratecoupon.hpp.

◆ dayCounter()

DayCounter dayCounter ( ) const
overridevirtual

day counter for accrual calculation

Implements Coupon.

Definition at line 75 of file fixedratecoupon.hpp.

+ Here is the call graph for this function:

◆ accruedAmount()

Real accruedAmount ( const Date ) const
overridevirtual

accrued amount at the given date

Implements Coupon.

Definition at line 73 of file fixedratecoupon.cpp.

+ Here is the call graph for this function:

◆ accept()

void accept ( AcyclicVisitor v)
overridevirtual

Reimplemented from Coupon.

Definition at line 129 of file fixedratecoupon.hpp.

+ Here is the call graph for this function:

Member Data Documentation

◆ rate_

InterestRate rate_
private

Definition at line 83 of file fixedratecoupon.hpp.

◆ amount_

Real amount_
mutableprivate

Definition at line 84 of file fixedratecoupon.hpp.