DreamCalc tm
Home Download Buy Now Support
User Guide: Contents Page Index of Functions

| # Bond Calculations
> ## Bond Price (PRICE) The [PRICE] key calculates a bond price, expressed as a percentage of par. This function accepts two date values, the settlement (purchase) date, followed by the maturity (redemption) date, and returns the calculated bond price. The following TVM register values are also used in the calculation: n - Number of payments per year*. i - Yield to Maturity. PMT - Coupon percentage rate. The [PRICE] key does not modify any memory register values. This function also calculates the interest accrued since the last interest date when the key is pressed, and the result is stored in the K memory register. If you are using an algebraic mode, you can recall the K register to retrieve the accrued interest result. If you are working in RPN mode, this result is also placed in the Y stack register. Below, we demonstrate the use of this function in both RPN and algebraic input modes. Example: What price should you pay on April 25th 2005 for a 6.75% U.S. Treasury bond that matures on June 1st 2015, if you want a yield of 8.25%. Assume that you normally express dates in the month-day-year format. Reverse Polish Notation:
>     2 [n] (semi-annual*)
>     8.25 [i] (enters YTM)
>     6.75 [PMT] (enters coupon rate)
>     4 [DATE] 25 [DATE] 2005 (settlement date)
>     [ENTER]
>     6 [DATE] 1 [DATE] 2015 (maturity date)
>     [PRICE]
>     Displays: 89.85 (price as percentage par)
>     [+]
>     Displays: 92.55 (total price inc. accrued interest)
> Algebraic Modes:
>     2 [n] (semi-annual*)
>     8.25 [i] (enters YTM)
>     6.75 [PMT] (enters coupon rate)
>     4 [DATE] 25 [DATE] 2005 (settlement date)
>     [PRICE]
>     6 [DATE] 1 [DATE] 2015 (maturity date)
>     [ENTER]
>     Displays: 89.85 (price as percentage par)
>     [+]
>     [RCL] [K] (recalls accrued interest)
>     Displays: 2.70
>     [ENTER]
>     Displays: 92.55 (total price inc. accrued interest)
> The above examples require the input of date values. For more information, refer to Calculating with Dates. * See Bond Conventions, below. ## Yield to Maturity (YTM) The [YTM] key calculates the Yield to Maturity of a bond, expressed as percentage of par. This function accepts two date values, the settlement (purchase) date, followed by the maturity (redemption) date, and returns the calculated Yield to Maturity. The following TVM register values are also used in the calculation: n - Number of payments per Year*. PV - Quoted price (percentage par). PMT - Coupon percentage rate. The [YTM] key does not modify any memory register values. Example: You buy a 6.75% US. Treasury bond on April 25th 2005, that matures on June 1st 2015. The quoted price is 89.85%. What yield will this provide? Assume that you normally express dates in the month-day-year format.
>     2 [n] (semi-annual*)
>     89.85 [PV] (enters price as percentage par)
>     6.75 [PMT] (enters coupon rate)
>     4 [DATE] 25 [DATE] 2005 (settlement date)
>     [ENTER]
>     6 [DATE] 1 [DATE] 2015 (maturity date)
>     [YTM]
>     Displays: 8.25
In the above example, the same input values given in the previous bond price calculation were used. In effect, the YTM function is demonstrated by reversing the original calculation, so as to arrive at the YTM value we used above. The example, above, is shown in Reverse Polish Notation only. The above examples require the input of date values. For more information, refer to Calculating with Dates. * See Bond Conventions, below. ## Bond Conventions ### DreamCalc Coupon & Day Count Basis Bond calculations may be performed for coupon payments per year from 1 (annual) to 12. The number of payments register "n" is used to specify this, where a value of 2 is semi-annual. If the register contains a value of less than +1, semi-annual is assumed. If the value has a fractional component, it is rounded down to the nearest integer. A payments per year value of more than 12 will result in a Range Error. DreamCalc assumes an ACT/ACT day count basis and divides by the Julian epoch (325.25 days) to calculate bond time periods. You may wish to treat the results of bond calculations as good estimates, rather than exact values. ### Bond Market Conventions in Various Countries
Country | Coupon Payments
--- | ---
Australia (CGSs) | Semi-annual
Canada (Treasury) | Semi-annual
Eurobond | Annual
Eurozone (Gov) | Annual or semi-annual
Japan (JGBs) | Semi-annual
Sweden (Gov) | Annual
Switzerland (SGBs/SGNs) | Annual
United Kingdom | Semi-annual
United States | Semi-annual
Bond Market Conventions in Various Countries Source: Walmsley (2000) Table 8.1. Bank of England, Practical Issues Arising from the Euro. See also: Calculating with Dates |