Bond key rate duration given zero curve
computes the key rate durations for one or more bonds given a zero curve and a
set of key rates.KeyRateDuration
= bndkrdur(ZeroData
,CouponRate
,Settle
,Maturity
)
adds optional name-value pair arguments. KeyRateDuration
= bndkrdur(___,Name,Value
)
bndkrdur
computes the key rate durations for one or more bonds
given a zero curve and a set of key rates. By default, the key rates are each of the
zero curve rates. For each key rate, the duration is computed by shifting the zero
curve up and down by a specified amount (ShiftValue
) at that
particular key rate, computing the present value of the bond in each case with the
new zero curves, and then evaluating the following:
Note
The shift to the curve is computed by shifting the particular key rate by the
ShiftValue
and then interpolating the values of the
curve in the interval between the previous and next key rates. For the first key
rate, any curve values before the date are equal to the
ShiftValue
; likewise, for the last key rate, any curve
values after the date are equal to the ShiftValue
.
[1] Golub, B., Tilman, L. Risk Management: Approaches for Fixed Income Markets. Wiley, 2000.
[2] Tuckman, B. Fixed Income Securities: Tools for Today's Markets. Wiley, 2002.