Class implements the bond paying fixed coupon. More...

#include <fixedIncomeBond.hpp>

Inheritance diagram for julian::FixedIncomeBond:
julian::Bond

Public Member Functions

 FixedIncomeBond ()
 Default Constructor. More...
 
 FixedIncomeBond (Date issue_date, Date maturity_date, double principal, double coupon, InterestRate rate, CashFlowVector cash_flows, Frequency payment_frequency)
 Constructor. More...
 
double getCoupon () const
 returns the coupon More...
 
virtual ~FixedIncomeBond ()
 destructor More...
 
Bond interface
virtual void valuation (const SmartPointer< ir::Curve > &curve) const override
 bond valuation More...
 
virtual void valuation (const SmartPointer< ir::Curve > &curve, const SmartPointer< ir::Curve > &) const override
 bond valuation More...
 
virtual double prize (const SmartPointer< ir::Curve > &curve) const override
 prize bond More...
 
virtual double prize (const SmartPointer< ir::Curve > &curve, const SmartPointer< ir::Curve > &) const override
 prize bond More...
 
virtual double getPrincipal () const override
 returns the bond's principal More...
 
virtual Date getDate () const override
 returns the bond's maturity More...
 
virtual FixedIncomeBond * clone () const override
 virtual copy constructor More...
 
- Public Member Functions inherited from julian::Bond
 Bond ()
 constructor More...
 
virtual ~Bond ()
 destructor More...
 

Private Attributes

Date issue_date_
 Bond's issue date. More...
 
Date maturity_date_
 Date of repaying original sum loaned. More...
 
double principal_
 Principal of bond. More...
 
double coupon_
 Coupon paid by bond. More...
 
InterestRate rate_
 Interest rate convention. More...
 
CashFlowVector cash_flows_
 Cash Flow Vector containing julian::FixedCashFlow. More...
 
Frequency payment_frequency_
 Frequency of coupon payment. More...
 

Friends

std::ostream & operator<< (std::ostream &, FixedIncomeBond &)
 Overloads stream operator. More...
 

Detailed Description

Class implements the bond paying fixed coupon.

A fixed coupon bond is represented by julian::CashFlowVector containing FixedCashFlow. Other data is provided just for information purposes only.

More information see [6]

Examples:
bondsExample.cpp.

Constructor & Destructor Documentation

julian::FixedIncomeBond::FixedIncomeBond ( )
inline

Default Constructor.

julian::FixedIncomeBond::FixedIncomeBond ( Date  issue_date,
Date  maturity_date,
double  principal,
double  coupon,
InterestRate  rate,
CashFlowVector  cash_flows,
Frequency  payment_frequency 
)
inline

Constructor.

virtual julian::FixedIncomeBond::~FixedIncomeBond ( )
inlinevirtual

destructor

Member Function Documentation

FixedIncomeBond * julian::FixedIncomeBond::clone ( ) const
overridevirtual

virtual copy constructor

Implements julian::Bond.

double julian::FixedIncomeBond::getCoupon ( ) const

returns the coupon

Date julian::FixedIncomeBond::getDate ( ) const
overridevirtual

returns the bond's maturity

Implements julian::Bond.

double julian::FixedIncomeBond::getPrincipal ( ) const
overridevirtual

returns the bond's principal

Implements julian::Bond.

double julian::FixedIncomeBond::prize ( const SmartPointer< ir::Curve > &  curve) const
overridevirtual

prize bond

Parameters
curveInterest rate curve used to discount CFs
Returns
price of bonds

Implements julian::Bond.

double julian::FixedIncomeBond::prize ( const SmartPointer< ir::Curve > &  curve,
const SmartPointer< ir::Curve > &   
) const
overridevirtual

prize bond

Parameters
curveInterest rate curve used to discount CFs
Remarks
second curve is not used
Returns
price of bonds

Implements julian::Bond.

void julian::FixedIncomeBond::valuation ( const SmartPointer< ir::Curve > &  curve) const
overridevirtual

bond valuation

Parameters
curveInterest rate curve used to discount CFs

Implements julian::Bond.

Examples:
bondsExample.cpp.
void julian::FixedIncomeBond::valuation ( const SmartPointer< ir::Curve > &  curve,
const SmartPointer< ir::Curve > &   
) const
overridevirtual

bond valuation

Parameters
curveInterest rate curve used to discount CFs

Implements julian::Bond.

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  s,
FixedIncomeBond &  b 
)
friend

Overloads stream operator.

This overloaded operator enables to print the curve on the console.

Member Data Documentation

CashFlowVector julian::FixedIncomeBond::cash_flows_
private

Cash Flow Vector containing julian::FixedCashFlow.

double julian::FixedIncomeBond::coupon_
private

Coupon paid by bond.

Date julian::FixedIncomeBond::issue_date_
private

Bond's issue date.

Date julian::FixedIncomeBond::maturity_date_
private

Date of repaying original sum loaned.

Frequency julian::FixedIncomeBond::payment_frequency_
private

Frequency of coupon payment.

double julian::FixedIncomeBond::principal_
private

Principal of bond.

InterestRate julian::FixedIncomeBond::rate_
private

Interest rate convention.


The documentation for this class was generated from the following files:
  • C:/Unix/home/OEM/jULIAN/src/instruments/bonds/fixedIncomeBond.hpp
  • C:/Unix/home/OEM/jULIAN/src/instruments/bonds/fixedIncomeBond.cpp