Excel Tutorial on Bond Pricing Lorenzo Garlappi February, 27, 2003 1 Entering Constants Suppose you want to assign a name to a value you would refer often in your spreadsheet (e.g. the coupon rate of a bond). You can do this by entering the value in a cell and then naming this cell by clicking on Insert, Name, Define. Example: 1. Enter a value for a coupon rate in cell A1 2. Put the cursor on cell A1 and Click on Insert, Name, Define. 3. Type CR for the coupon rate you just entered. If you want to refer to the coupon rate anywhere in the spreadsheet you can call the value of the coupon rate by entering = CR. 2 Entering a Formula Suppose you want to calculate the present value at 10% of one dollar. 1. Enter $1 in cell A1 2. In Cell B1 enter =A1/(1+0.1) 3. Hit enter Virtually every formula is entered this way. 1 3 Calculating the price of a bond- The “brute force approach” We want to calculate the price of a bond but we don’t know anything about annuity formulas or the like. We can still do it by simply taking a “brute force” approach that starts from the basic: discounting cash flows. Suppose you know coupon rate (CR), face value (FV), maturity (T), number of payment per year (NOP) and the annual yield to maturity (y) of a bond. (See the spreadsheet “Bond Pricing Basics-Tutorial” from my web page) 1. Enter the constant of your problem as described above. 2. Determine the yield to be used in each period by entering: = y/NOP . Give the name rate to this number using the procedure described above. 3. Determine the dollar coupon payment by entering: = F V ∗ CR/NOP 4. On a row, write down the dates in which coupons are received (there are as many dates as coupon to be received). E.g. if the bond pays 8 semi-annual coupon enter 1 2 3 4 5 6 7 8. 5. On the next row, calculate the present value of each coupon you are supposed to receive. For example, suppose you want to calculate the present value of the first coupon. You entered 1 (to indicate the first coupon) in cell B17 and 25 in cell B18. In cell B19 you simply enter =B18/(1+rate)ˆ B17. You can copy this formula by dragging it under the remaining cash flow without entering anything else. 6. Sum all the present values of each cash flow by using the function Sum(.,.). See the spreadsheet Bond Pricing Basic - Tutorial for further details. 4 Calculating the yield of a bond For details you can see my tutorial spreadsheet: Finding yield to maturity - Tutorial 2 1. Follow the steps above for entering the known constant in your problem. Now notice that the yield is not a constant! This is what you want to figure out. The bond price is now a know constant! 2. In a separate cell enter a conjectured value for the YTM. Call this cell y. 3. Follow the steps above in order to calculate the bond price given the conjectured yield y. 4. Use Solver to find the yield y that set the conjectured price of the bond equal to the given price. 3