I am calculating the effective duration of an interest rate instrument with optionality. I do the following
- calibrate an interest rate model to market data: discount curve and ATM swaption vols
- use the calibrated model to price the instrument (P)
- bump the discount curve up by dr
- recalibrate the interest rate model (with new curve but unchanged ATM swaption vols)
- price the instrument again (P+)
- repeat with bump down to get P-
- estimate effective duration as (P+ - P-)/(2P dr)
Potential problem: when I recalibrate I use an optimization procedure with initial point set to the parameters from Step 1 and hope that the recalibrated model parameters are close to these. This is what seems to happen but there is no real guarantee that this will happen and even if the recalibrated parameters appear to be close to the originals, they may be sufficiently different to give unreliable values for the effective duration.
How do people try to ensure that the recalibrated parameters are reliable for calculating the effective duration (or any sensitivity, for that matter)?
The only reference that I've found on the topic is a paper by Joshi and Kwon where they develop a method to perturb the original parameters instead of recalibrating: