Bond Class Reference
[Financial instruments]

#include <ql/Instruments/bond.hpp>

Inheritance diagram for Bond:

Inheritance graph
[legend]
List of all members.

Detailed Description

Base bond class.

Derived classes must fill the unitialized data members.

Warning:
Most methods assume that the cashflows are stored sorted by date

Tests:
a) price/yield calculations are cross-checked for consistency.

b) price/yield calculations are checked against known good values.


Instrument interface

bool isExpired () const
 returns whether the instrument is still tradable.
void performCalculations () const

Public Member Functions

Date settlementDate () const
const std::vector< boost::shared_ptr<
CashFlow > > & 
cashflows () const
const Calendarcalendar () const
const DayCounterdayCounter () const
Real cleanPrice (Rate yield, Date settlementDate=Date()) const
 clean price given a yield and settlement date
Real dirtyPrice (Rate yield, Date settlementDate=Date()) const
 dirty price given a yield and settlement date
Real yield (Real cleanPrice, Date settlementDate=Date(), Real accuracy=1.0e-8, Size maxEvaluations=100) const
 yield given a (clean) price and settlement date
Real accruedAmount (Date d=Date()) const
 accrued amount at a given date

Protected Member Functions

 Bond (const DayCounter &dayCount, const Calendar &calendar, Integer settlementDays)

Protected Attributes

Integer settlementDays_
Calendar calendar_
DayCounter dayCount_
Date issueDate_
Date datedDate_
Date maturityDate_
Real redemption_
std::vector< boost::shared_ptr<
CashFlow > > 
cashFlows_


Member Function Documentation

Real cleanPrice Rate  yield,
Date  settlementDate = Date()
const
 

clean price given a yield and settlement date

The default bond settlement is used if no date is given.

Real dirtyPrice Rate  yield,
Date  settlementDate = Date()
const
 

dirty price given a yield and settlement date

The default bond settlement is used if no date is given.

Real yield Real  cleanPrice,
Date  settlementDate = Date(),
Real  accuracy = 1.0e-8,
Size  maxEvaluations = 100
const
 

yield given a (clean) price and settlement date

The default bond settlement is used if no date is given.

Real accruedAmount Date  d = Date()  )  const
 

accrued amount at a given date

The default bond settlement is used if no date is given.

void performCalculations  )  const [protected, virtual]
 

In case a pricing engine is not used, this method must be overridden to perform the actual calculations and set any needed results. In case a pricing engine is used, the default implementation can be used.

Reimplemented from Instrument.


QuantLib.org
QuantLib
Hosted by
SourceForge.net Logo
Documentation generated by
doxygen