FixedCouponBond - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


Finance

  

FixedCouponBond

  

create new fixed-coupon bond

 

Calling Sequence

Parameters

Options

Description

Examples

References

Compatibility

Calling Sequence

FixedCouponBond(redemptionvalue, term, units, coupons, opts)

FixedCouponBond(redemptionvalue, maturity, coupons, opts)

Parameters

redemptionvalue

-

positive constant; bond's redemption value

term

-

positive integer; length of term

units

-

Days, Weeks, Months, or Years; time units

coupons

-

non-negative constant or a list of non-negative constants; coupon rate(s)

maturity

-

a date specified in a format recognized by the ParseDate command; maturity date

opts

-

(optional) equation(s) of the form option = value where option is one of calendar, convention, frequency, daycounter, issuedate, or settlementdays; specify options for the FixedCouponBond command

Options

• 

calendar = a name representing a supported calendar (e.g. Toronto, NewYork) or a calendar data structure created using the Calendar constructor -- This option can be used to specify the underlying calendar.

• 

convention = Unadjusted, Preceding, ModifiedPreceding, Following, ModifiedFollowing, or MonthEndReference -- This option can be used to specify business day conventions. The default value is Following.

• 

daycounter = a name representing a supported day counter (e.g. ISDA, Simple) or a day counter data structure created using the DayCounter constructor -- This option provides a day counter that will be used to convert the period between two dates as a fraction of the year.

• 

frequency = Annual, Semiannual, EveryFourthMonth, Quarterly, Bimonthly, or Monthly -- This option specifies coupon frequency. The default value is Annual.

• 

issuedate = a string containing a date specification in a format recognized by ParseDate or a date data structure -- This option provides the issue date of a bond. It is set to the global evaluation date by default.

• 

settlementdays = positive integer -- This option specifies the number of settlement days. The default value is 1.

Description

• 

The FixedCouponBond commands creates a new fixed-coupon bond with the specified parameters. It is assumed that the face value of the bond is 100.0.

• 

The parameter term specifies the length of the term of this bond. The parameter units specifies the time units in which the term is measured.

• 

The parameter coupons specifies coupon rates for the bond. The value of the parameter can be either a non-negative constant or a list. If coupons is given as a negative constant then all coupon rates are assumed to be equal. Irregular coupons can be specified as a list of rates. The first element of this list is the rate of the first coupon, the second element of this list is the rate of the second coupon, etc. If the number of coupon payments exceeds the number of elements in the coupons list, the last rate from that list will be used for all the remaining coupons.

Examples

withFinance:

First set the global evaluation date.

SetEvaluationDateJanuary 05, 2007:

Settingssettlementdays=0,daycounter=Historical,businessdayconvention=Unadjusted

settlementdays=0,daycounter=Historical,businessdayconvention=Unadjusted

(1)

Construct three fixed-coupon bonds.

bond1FixedCouponBond100,5,Years,0.05,0.07,0.03,0.04,issuedate=December 06, 2006

bond1moduleend module

(2)

bond2FixedCouponBond100,5,Years,0.05,issuedate=December 06, 2006

bond2moduleend module

(3)

bond3FixedCouponBond120,5,Years,0.05,0.07,0.03,issuedate=December 06, 2006

bond3moduleend module

(4)

Get the set of cash flows for our bonds.

CashFlowsbond1

5. on 'December 6, 2007',7.001362377 on 'December 6, 2008',2.999416124 on 'December 6, 2009',4. on 'December 6, 2010',4. on 'December 6, 2011',100. on 'December 6, 2011'

(5)

CashFlowsbond2

5. on 'December 6, 2007',5.000973127 on 'December 6, 2008',4.999026873 on 'December 6, 2009',5. on 'December 6, 2010',5. on 'December 6, 2011',100. on 'December 6, 2011'

(6)

Note that the face value of bond3 is still 100.0 and the coupon payments are calculated based on this value. Note also that the last specified coupon rate is used for all coupons after the third.

CashFlowsbond3

5. on 'December 6, 2007',7.001362377 on 'December 6, 2008',2.999416124 on 'December 6, 2009',3. on 'December 6, 2010',3. on 'December 6, 2011',120. on 'December 6, 2011'

(7)

Calculate the clean price and the dirty price for the first two of your bonds using the fixed rate of 5% as the discount rate.

cleanprice1CleanPricebond1,0.05

cleanprice197.93538076

(8)

dirtyprice1DirtyPricebond1,0.05

dirtyprice198.34633967

(9)

cleanprice2CleanPricebond2,0.05

cleanprice299.45019629

(10)

dirtyprice2DirtyPricebond2,0.05

dirtyprice299.86115519

(11)

Calculate the bond's yield using the previous discount rate.

YieldFromCleanPricebond1,cleanprice1

0.05000000001

(12)

YieldFromDirtyPricebond1,dirtyprice1

0.04999999999

(13)

YieldFromCleanPricebond2,cleanprice2

0.05000000000

(14)

YieldFromDirtyPricebond2,dirtyprice2

0.05000000000

(15)

Here is another way to calculate the dirty price and the yield.

discountForwardCurve0.05

discountmoduleend module

(16)

npv1NetPresentValuebond1,discount

npv198.34633967

(17)

npv2NetPresentValuebond2,discount

npv299.86115519

(18)

InternalRateOfReturnbond1,npv1

0.05000000000

(19)

InternalRateOfReturnbond2,npv2

0.05000000000

(20)

References

  

Brigo, D., Mercurio, F., Interest Rate Models: Theory and Practice. New York: Springer-Verlag, 2001.

  

Glasserman, P., Monte Carlo Methods in Financial Engineering. New York: Springer-Verlag, 2004.

  

Hull, J., Options, Futures, and Other Derivatives, 5th. edition. Upper Saddle River, New Jersey: Prentice Hall, 2003.

Compatibility

• 

The Finance[FixedCouponBond] command was introduced in Maple 15.

• 

For more information on Maple 15 changes, see Updates in Maple 15.

See Also

Finance[CleanPrice]

Finance[DirtyPrice]

Finance[FloatingRateBond]

Finance[YieldFromCleanPrice]

Finance[YieldFromDirtyPrice]

Finance[ZeroCouponBond]