Hi,

I am trying to calculate the Yield on Step up bonds. For example, the bond may have a 0% coupon for 4 years then 6% coupon for years 5-9 and 9% from 10 through to maturity. Does anyone know of a function or of a way to calculate the yield on such a bond using VBA??


The yield function only allows for one coupon rate to be assigned. Ive thought of using the yield function to calculate out the yields per each coupon as separate bonds, but then I dont know how I would put all those yields together and account for later yields having less effect due to being discounted for a longer time period.

I cant think of any concise efficient way to go about this because the function will have to take into account the fact that higher yields later in the bonds life will have less effect on yield today due to longer discounting schedule.

Any help is greatly appreciated,

thanks,
Tim