The Bond function calculates the Bond Price, Yield, Duration and Modified Duration for a coupon paying Bond security. See Interest Rate Models for a further explanation.
Bond |
(BondModel, BondPriceType, Principal, TimeMaturity, CouponRate, Frequency, TermStructure, MarketPrice, TimeFormat, RateType) |
Note: Optional arguments are shown in Italics. MarketPrice is not Optional for the Implied Volatility Calculation.
Argument |
Description |
BondModel |
Alphanumeric value indicating the exercise type: •Bond Price = 1 or "p" (case insensitive) •Bond Yield = 2 or "y" (case insensitive) •Bond Duration = 3 or "d" (case insensitive) •Bond Modified Duration = 1 or "m" (case insensitive) |
BondPriceType |
Alphanumeric value indicating the type of bond price: •Quoted Price = 0 or "q" (case insensitive) •Cash Price = 1 or "c" (case insensitive) |
Principal |
The face value of the bond asset. Must be > 0. |
TimeMaturity |
Time expressed in either Days or Years (depending on the TimeFormat value) until the bond maturity. Must be > 0. |
CouponRate |
The annual coupon rate expressed as a percentage of the principal. This rate is interpreted as a continuously compounded rate unless otherwise specified in the RateType argument. Must be > 0. |
Frequency |
Alphanumeric value indicating the coupon payment frequency when evaluation the bond. |
TermStructure |
A two-dimensional array or range of coupon maturity and interest rate pairs where the first column is the maturity and the second is the rate. The rates are interpreted as a continuously compounded rate unless otherwise specified in the RateType argument. All rates must be > 0.
As an example: Term Structure Coupon Rate 0.0 0.02 0.5 0.03 1.0 0.04 1.5 0.05 2.0 0.06 2.5 0.07 |
MarketPrice |
Optional. The selling price of the option in the marketplace. This input is required when bond yield are calculated. Price must be > 0. |
TimeFormat |
Optional. Alphanumeric value indicating the format of the time argument (i.e. TimeMaturity). If omitted, Days are used as the default. Specified as either: •Days = 0 or "D" (case insensitive) •Years = 1 or "Y" (case insensitive) |
RateType |
Optional. Alphanumeric value indicating the type of RateType used for both the CouponRate ad Term Structure Rate when evaluating the bond. This value is converted to Continuously Compounded for the calculations. If omitted, a continuously compounded rate is used. |
Example
Quoted Bond Price:Calculate all of the functions Bond whose Quoted price six years from maturity is $100, the coupon rate is 6% per annum with semi annual coupon frequency. The coupon or term structure is as follows: 0 to 0.5 years at 3%, 0.5 to 3.0 years at 3.5%, 3.0 years and after at 4%. This means that Principal = $100, CouponRate = 6%, TimeMaturity = 6 and CouponFrequency = Semi-Annual. All interest rates are considered continuous and the following term structure is in place:
So, |
Input |
|
Output |
|||
Variable |
Value |
|
Function |
Name |
Value |
Bond Price Type |
Quoted Price |
|
1 |
Price |
110.39917 |
Principal |
100 |
|
2 |
Yield |
0.05148 |
Time to Maturity |
6.00 |
|
3 |
Duration |
5.17450 |
Coupon Rate |
0.06 |
|
4 |
Modified Duration |
5.07226 |
Frequency |
Semi-Annually |
|
|
|
|
Market Price |
104.00 |
|
|
|
|
Time Format |
Years |
|
|
|
|
|
|
|
|
|
|
Term Structure |
|
|
|
|
|
Coupon |
Rate |
|
|
|
|
0 |
3.0% |
|
|
|
|
0.5 |
3.5% |
|
|
|
|
3 |
4.0% |
|
|
|
|
For a further example on this model see the included Excel Template located in the root directory of the add-in. This example can be accessed through the Interest Rate Template menu item after the add-in has been installed properly.
A list of all of the possible Error Messages is included for convenience.