Bond Function

Navigation:  Available Functions > Interest Rate Functions >

Bond Function

Previous pageReturn to chapter overviewNext page

 

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:

 

Term Structure

Coupon

Rate

0

3.0%

0.5

3.5%

3

4.0%

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%

 

 

 

 

 

 

See Also

Futures

Bond Options

Cap Floor Options

Swaption

 

 

Remark

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.