Suppose I have today current duration of a bond and it's historical daily prices. How from that I can calculate the historical duration? e.g. the value of duration I would saw if yesterday, week ago, 43 days ago I checked?

(I know the exact formulas for duration are not trivial, but let's say reasonable approximation I can enter as formula to Excel).



1 Answer 1


You will use the YIELD() and PRICE() functions in Excel. There's really no difference between historic duration calculation and current. You just need the price and settle day. Here's how you do it:

  1. Get the settlement day for the day that you are interested. For TSY's it's the next business day.
  2. Get the price on the day you care about.
  3. Use YIELD() to get the effective yield for that day.
  4. Use PRICE() to get the price for a yield 1bp higher and 1bp lower.

4-your original price is your dv01.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.