Financial Derivatives Toolbox | ![]() ![]() |
Price bond by HJM interest rate tree
Syntax
[Price, PriceTree] = bondbyhjm(HJMTree, CouponRate, Settle, Maturity, Period, Basis, EndMonthRule, IssueDate, FirstCouponDate, LastCouponDate, StartDate, Face, Options)
Arguments
HJMTree |
Forward rate tree structure created by hjmtree . |
CouponRate |
Decimal annual rate. |
Settle |
Settlement date. A vector of serial date numbers or date strings. Settle must be earlier than or equal to Maturity . |
Maturity |
Maturity date. A vector of serial date numbers or date strings. |
Period |
(Optional) Coupons per year of the bond. A vector of integers. Allowed values are 1 , 2 , 3 , 4 , 6 , and 12 . Default = 2 . |
Basis | (Optional) Day-count basis of the bond. A vector of integers.0 = actual/actual (default), 1 = 30/360, 2 = actual/360, 3 = actual/365. |
EndMonthRule |
(Optional) End-of-month rule. A vector. This rule applies only when Maturity is an end-of-month date for a month having 30 or fewer days. 0 = ignore rule, meaning that a bond's coupon payment date is always the same numerical day of the month. 1 = set rule on (default), meaning that a bond's coupon payment date is always the last actual day of the month. |
IssueDate |
(Optional) Date when a bond was issued. |
FirstCouponDate |
Date when a bond makes its first coupon payment. When FirstCouponDate and LastCouponDate are both specified, FirstCouponDate takes precedence in determining the coupon payment structure. |
LastCouponDate |
Last coupon date of a bond prior to the maturity date. In the absence of a specified FirstCouponDate , a specified LastCouponDate determines the coupon structure of the bond. The coupon structure of a bond is truncated at the LastCouponDate regardless of where it falls and will be followed only by the bond's maturity cash flow date. |
StartDate |
Ignored. |
Face |
Face value. Default is 100 . |
Options |
(Optional) Derivatives pricing options structure created with derivset . |
The Settle
date for every bond is set to the ValuationDate
of the HJM tree. The bond argument Settle
is ignored.
Description
bondbyhjm
is a dynamic programming subroutine for hjmprice
.
Price
is a number of instruments (NINST
)-by-1
matrix of expected prices at time 0.
PriceTree
is a structure of trees containing vectors of instrument prices and accrued interest, and a vector of observation times for each node.
PriceTree.PBush
contains the clean prices.
PriceTree.AIBush
contains the accrued interest.
PriceTree.tObs
contains the observation times.
Examples
Price a 4% bond using an HJM forward rate tree.
Load the file deriv.mat
, which provides HJMTree
. HJMTree
contains the time and forward rate information needed to price the bond.
load deriv
Set the required values. Other arguments will use defaults.
CouponRate = 0.04; Settle = '01-Jan-2000'; Maturity = '01-Jan-2004';
Use bondbyhjm
to compute the Price
of the bond.
Price = bondbyhjm(HJMTree, CouponRate, Settle, Maturity) Warning: Not all cash flows are aligned with the tree. Result will be approximated. Price = 107.6773
See Also
![]() | Alphabetical List of Functions | bondbyzero | ![]() |