2
$\begingroup$

Assume that we have current month term curve and the curves from the two previous months. The current curve may be shifted from the average of the previous two curve by some value (a parallel shift). The task is to identify outliers on the current curve and if they exist than smooth (interpolate) the outlying points.

I've tackled the problem using first degree derivatives to identify the outliers. The method seem to work well to detect the outliers using the difference of the first derivatives as a sample.

My question relates to smoothing. Using, for instance, of the splines or quadratic interpolation would not work well as I may have two consequative points as outliers. The terms structure consits of only 12 maturities, thus probably using a polynom of a higher degree might do the trick. Do you have any other ideas?

Thanks guys!

$\endgroup$
3
  • $\begingroup$ Avoid high order polynomials, they can be unstable and are quite likely to give you a lot of overshoot. Splines are piecewise to reduce this risk. $\endgroup$
    – Phil H
    Commented Jan 3, 2014 at 15:06
  • 1
    $\begingroup$ You might look into interpolation techniques that incorporate liquidity (assuming you can get the data). This would effectively put less weight on bonds that aren't being actively traded. Liquidity is an important consideration in volatility surfaces so you should be able to find some research on it. Alternately you can try a parsimonious model, like Nelson-Siegel (which there should be some questions about), and take deviations from that to identify outliers. $\endgroup$
    – John
    Commented Jan 31, 2014 at 22:33
  • $\begingroup$ Have you considered Svensson-model ? $\endgroup$ Commented Apr 2, 2014 at 6:06

3 Answers 3

3
$\begingroup$

There are quite a few strategies you could take.

  • Use models that are more resistant to noises. As others have already mentioned, parametric models such as Nelson-Siegel or Svensson may do the trick. I have also used Merrill Lynch Exponential Spline Model successfully (http://www.bankofcanada.ca/wp-content/uploads/2010/02/wp04-48.pdf).

  • Change your objective function. For example, if you're currently minimizing $$\sum(P_\text{market} - P_\text{model})^2, $$ try minimizing $$\sum |P_\text{market} - P_\text{model}|. $$

  • Exclude the outlier altogether. This is actually done quite frequently in practice... For example, most US yield curve models exclude the on-the-run (most recently auctioned issues) and first-off-the-run issues. Some banks also exclude old seasoned bonds as well as "outliers", which are bonds whose prices deviate from the model by a certain amount.

  • If you want to be precise, you can introduce hypothetical bonds into the estimation. For example, you can calculate the spreads to a benchmark curve (say swap curve) for the two neighboring bonds; linearly interpolate to get the appropriate spread for the outlier bond; price this bond based on that spread and insert it back into the estimation set.

$\endgroup$
0
$\begingroup$

Just off the top of my head I would say that after you identify the outliers you remove them and do spline interpolation on the remaining points.

$\endgroup$
4
  • $\begingroup$ In such a case I would ignore the previous term structures, something I should avoid doing. $\endgroup$
    – ryzhiy
    Commented Aug 5, 2013 at 7:26
  • $\begingroup$ So, do you want the curve you fit to pass by your outliers? In that case you use higher order polynomials up to degree 12 and will get a curve that will pass for sure through all your points.But that curve will probably be very "irregular". If on the other hand you want a smoother curve that doesn't pass by your outlying points then you should think of a way to come up with some values with which to replace the outliers (like by averaging the points before and after the outliers) and use this in a spline interpolation. That's all I can think of. But maybe someone else has a better idea. $\endgroup$
    – KAT
    Commented Aug 5, 2013 at 8:32
  • $\begingroup$ No, I want to use the curvature of the previous terms, but the outliers must be removed. $\endgroup$
    – ryzhiy
    Commented Aug 5, 2013 at 13:12
  • 1
    $\begingroup$ Local regression (LOESS) or SVM regression (radial basis kernel) on log-rates vs. tenors. Non parametric regression could do the work as well. $\endgroup$
    – Lisa Ann
    Commented Sep 4, 2013 at 12:15
0
$\begingroup$

use a smoothing spline, there's a ton of literature on the subject, such as this one

$\endgroup$

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.