![]() ![]() This is a guide to the Macaulay Duration Formula. When rates increase and become larger, it becomes increasingly important to understand the bond yield relationship however, using a linear approximation like duration will contain a lot of errors. One important point to consider is that Duration is a good approximation for an option free bond with small changes in interest rates. Just as mean, standard deviation, beta act as a measure for equities, Macaulay Duration is for fixed income securities. Understanding duration helps an investor in determining the correct pick of fixed income security. Relevance and Use of Macaulay Duration Formula All this information can be accessed easily, and using the above formula Duration can be calculated. Macaulay Duration considers the time, coupon payment, the current yield, par value of the bond and the price to arrive at a number. The Macaulay Duration Formula can be calculated by using the below explanation: Or any one of the dates or both are not excel valid dates.If the numbers are invalid for either Coupon, yield, and frequency.It occurs if the settlement date is greater than or equal to the maturity date.Possible Errors and their meanings in excel: In the above calculation basis argument has been omitted in this case the default value of 30/360-day count basis is used. Let us consider a $100 par bond with a Settlement date as 1 st April 2015, a Maturity date as 31 st March 2025, coupon rate of 6% paid quarterly with a yield of 8% Frequency = Number of Coupon Payments Paid in A Year:.Settlement = Date of the Settlement of The Security.Syntax: DURATION (settlement, maturity, coupon, yield, frequency, ) The Present Value of Cash flow is calculated as After calculating the discount factor, we will multiply it with the cash flows to get the present value.Īfter calculating the discount factor, we will multiply it with the respective cash flow to get the present value and sum all the cash flows to get the bond’s Macaulay Duration.ĭiscount Factor for 6 months = 1 / (1 + 6%/2) We will first calculate the discount factors for all the periods using the formula 1 / (1+ r) n, where r is the coupon rate and n is the total number of periods for which it has to be compounded. Let us now calculate Macaulay Duration using these cash flows. We can expect the following cash flows to occur: 6 months: $3, 1 year: $3, 5 years: $3, 2 years: $3, 5 years: $3, 3 years: $3, 5 years: $3, 4 years: $103. The coupon rate is 8% p.a with semi-annual payment. Let us take a Bond A $100 value bond that pays a 6% coupon rate and matures in four years. Let us take another example and calculate Macaulay Duration using the longer method. Using the above formula, Macaulay Duration of Bond A is at 3.57 while Macaulay Duration of Bond B is at 4.13. Macaulay Duration = Modified Duration * (1 + (Yield/ Frequency)) Macaulay Duration is calculated using the formula given below input byte(day1 day2 da圓 day4) float(day1_dt day2_dt da圓_dt day4_dt)ĭay1 day2 da圓 day4 day1_dt day2_dt da圓_dt day4_dt Input byte(day1 day2 da圓 day4) float(day1_dt day2_dt da圓_dt day4_dt)Įgen enddate = max(cond(day = 4, day_dt. You'll want to assign a display format to enddate as well. If your date variables are really strings, you need to push them through daily() to do anything useful. I guessed one way, but the principles are the same the other way. Your example is fairly clear but requires a guess at what kind of date you have, as the display format could be YMD or YDM. See the Stata tag wiki for how to give data examples as Stata code (short explanation: use the dataex command). I recommend changing to long layout with a reshape. As you are finding out, that makes even simple tasks quite complicated. Identify the date where the value of 4 is no more/has changed and record it in end_dateĭay1 day1_dt day2 day2_dt da圓 da圓_dt day4 day4_dt duration end_dateįrom a Stata point of view you seem to be holding panel or longitudinal data in a wide layout.I think I solved the first part using following program generate int flg1 =1 if day1 = 4 Duration in days when dayX variable has 4 in them.Day1 day1_dt day2 day2_dt da圓 da圓_dt day4 day4_dt
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |