|
From: Ferdinando A. <qf...@am...> - 2009-03-25 11:23:37
|
On Wed, Mar 25, 2009 at 11:38 AM, Luigi Ballabio <lui...@gm...> wrote: > On Wed, 2009-03-25 at 10:31 +0000, na...@us... wrote: >> Revision: 16065 >> >> Log Message: >> ----------- >> added flat extrapolation >> >> Modified Paths: >> -------------- >> trunk/QuantLib/ql/termstructures/yield/forwardcurve.hpp > > Care to discuss? glad to oblige. The InterpolatedForwardCurve used the interpolant to extrapolate, which easily leads to implausible rates, unless one used piecewise-constant interpolation. Even "basic" linear interpolation could lead to negative rates or implausible high rates depending on its slope in the final segment Flat forward rate extrapolation keeps forward rate continuous, at the cost of an angular point for non piecewise-constant interpolations. This is a non-issue for linear interpolation since in this case the curve already has an angular point at every knot. When it comes to higher order interpolation it is still a bearable cost compared to implausible extrapolation values. In any case this cost is negligible in the overall smoothness evaluation of the curve, as the forward rate curve is integrated in order to obtain zero rate (and then discount factor) Of course extrapolation is always a dangerous exercise, but if one needs it then flat extrapolation of instantaneous forward rates is usually the preferred approach, with no real feasible alternatives I know of. This is also the approach adopted in the InterpolatedHazardRateCurve. Any contrarian out there? ciao -- Nando |