I don't know if this has been discussed on this message board before, but I am trying to figure out how to calculate Macauly and Modified duration using "solve". Does anybody else know of or have a formula that they have developed on their own calculator that they would like to share?
17Bii - Bond Duration
|
|
« Next Oldest | Next Newest »
|
▼ ▼
Post: #3
12-13-2001, 12:34 PM
Brian: Sorry for the late reply, but I didn't want to contribute when all I could say is "no!" Can you provide the relevant equations/methodology? If so, I'm sure somebody here could help you with your problem. I love programming the 17BII and 19BII, so I would take a whack at it for you if it is not too big a project. If I misunderstood your post, in that you don't know the relevant equations, then unfortunately I can't be of any help there. Bruce. ▼
Post: #4
12-13-2001, 02:12 PM
I guess you are considering a fixed rate bond, so I'll try to explain you how I solved this problem. First what I suggest to you is to set-up a STAT list named, for example CF (cash flows, in which you'll put the single cash flows for each coupon period (annual, semi-annual, ...). The last cash flow should be the last coupon plus the face value of the bond. You can then calculate the bond duration by solving the following related equations: 1. bond price Calculates the bond price for a given yield to maturity or vice-versa. 2. duration Calculates the bond duration for the ytm calculated in equation 1 3. price sensitivity Calculates the price change for a given movement in rates 4. convexity calculates the convexity of the bond specified above 5. exact price sensitivity calculates the exact price change, using the convexity adjustment for the bond durtation calculated in equation 3. If you want I can e-mail the program codes. By
Post: #5
12-13-2001, 03:34 PM
Duration = [(1 + a) / a] - [(1 + a) + yrs * (i - a)] / [i * [(1 + a) ^yrs - 1] + i] Where:
a = yield to maturity So, for a bond of 10 years to maturity with a 10% annual coupon presently yielding 8%, the duration is [(1 + 0.1)/ 0.1] - [(1 + 0.1) + 10 x (0.1-0.08)] / [0.1 x [(1+0.1)^10 - 1 ] + 0.1] or [11 - [ 1.1 +0.2] / [0.1 x [1.593742] + 0.1] or [11 - 1.3/(0.2593742)] or 5.9879 years
Gene ▼
Post: #6
01-09-2002, 06:48 PM
I'm a CFP student so this equation is of interest to me. I beleive there is at least one, possibly multiple, errors in
I'd like to hear back if I am mistaken about my observations Kay ▼
Post: #7
01-10-2002, 11:55 AM
http://www.finplan.com/invest/bondduration.asp The link above is where I got the formula. I think I typed it in correctly. Of course, the formula may be wrong on the web page. You are, however, quite right that I substituted the values into the formula incorrectly. My fault! Here is another site with a specific duration calculation example:
http://invest-faq.com/articles/bonds-duration.html Gene Wright ▼
Post: #8
01-10-2002, 06:45 PM
You did type the formula into your post correctly. I checked out the web site you noted. The formula is wrong there too. I sent them an e-mail to notify them of the mistake. Hopefully they'll fix it. I've double and triple checked this against my CFP student materials and the only way my observation could be wrong is if the student materials are.
Thanks, ▼
Post: #9
01-14-2002, 02:36 PM
Hi, if anyone of you is still looking for a bond duration formula, I did spend some hours and programmed one myself on my 17bii -- doing it the "old-fashioned" way. It might not be the shortest one, but I think it works. It also uses some built-in formulas.
O.K. here it is: DURTN=(SUM(I:1:N*F:1:I/F*C%/100/F*SPPV(R%/F:I))+N*SPPV(R%/F:N*F))/(C%/100/F*USPV(R%/F:N*F)+SPPV(R%/F:N*F))
Where
Example: Hope this it what you are looking for. Michael
Post: #10
01-08-2002, 08:53 PM
Here is the formula I have programmed into my HP17BII to DURTN: ((1+(Y x .01) / PYR) / ((Y x .01)/PYR) - (((1+(Y x .01) / PYR) + ((N x PYR) x ((C x .01)/PYR - (Y x .01) / PYR))) / ((C x .01) / PYR x ((1+(Y x .01) / PYR)^(N x PYR) -1) + (Y x .01) / PYR))) / PYR = DURTN
where Note that all variable values are entered as whole numbers including Y and C.
This formula reduces calculating duration on the
I also have a formula for bond price change calculations ▼
Post: #11
01-09-2002, 06:51 PM
Correction - my SOLVE equation doesn't calculate modified duration, just plain old duration. My bond price change |