I think i finally found a solution to disturbing interest rate tree calculation.

the two formula given in Schweser and CFAI are:

({0.5[(face value of upper node + coupon) + (face value of lower node + coupon)]} / 1 + Rf) + coupon

Schweser has it as {0.5[(face value of upper node + coupon) + (face value of lower node + coupon)]} / 1 + Rf

When analysis bonds with call / put options, use the second formula (Scweser formula) without adding back the coupon after discounting, because we have to either call or put the bond if it is above/lower than the call and put price; and if we had added the coupon, it will mostly inflate the value at the calculated node.

When analysing option free bond, then you can safely use the CFAI method of adding coupon back to the discounted average cash flow.

Finally, we can lay this topic to rest.

You can reason through it by going through the solution to the Krishnan question on the CFAI practice webpage.

I can’t believe we spent so much time and man power on this!

I think rather than focusing on a formula we should focus on understanding the process and what is going on. I cannot recite back to you any formulas with respect to pricing bonds with/without embedded options but when I reworked the Krishnan/Desna problems the other day to give my two cents I got them both right without having to memorize any formulas. Why? Because I understood the concepts and what is going on. Discount back the cash flows from the previous node, adjust for put/call rules, take the average of the two values adjusted for the put/call rules and then add the coupon. Rinse and repeat. Simple as that until you work back to the first node. This methodology has never failed me in any question about valuing bonds with or without embedded options.

I made flash cards with most of the formulas and counted over 150 flash cards the other day. We have enough formulas that actually need memorizing - no need to stuff another 2 in there for these bonds. Instead just learn the mechanics.

lol… of cause, for you to pass the question on bonds, you need to know which formula to apply, and that is the problem we are trying to address with the above post.

It’s the same formula, just the method what is being displayed in the tree is different. You may be focusing too much on on the differences in the methods, when what’s important is the correct answer, which is usually going to be the value of a bond at T=0. So, anyways, the bottom line is, for determining whether a bond with an embedded option would be called or put, don’t include the coupon when making the assessment. Assuming the call/put strike price is 100, use that value for the node, add the coupon, and continue down the tree.

Personally, I don’t add the coupon to the number I write down at each node. I add it when calculating the value at the next node down.