I have found volatility in the black model for swaption for different maturity (1-2-3-6-9M, 1Y, 18M, 2-10Y, 15-20-25-30Y) and Tenor (1-10Y, 15-20-25-30Y). Now I need another values (Maturity: 2, Tenor: 12).

I work with Excel without add-ins, I tried linear interpolation between (2,10) and (2,15), but I have some doubt on this method. I know some advanced inteprolation techniques (spline) in 2 dimension wich I could use for a given maturity, but it could take some time to implement a bicubic spline interpolation method.

I could also use a (Maturity,Tenor) Interpolation, but I have some odd values for short maturity/short tenor. I would like to remove these " outliers". There is only discussion on advanced volatility interpolation for option.

What would be a reliable/fast method to interpolate Volatility(Maturity,Tenor) ?

I don't need a generic interpolation method but some suggestion on how to improve them for volatility interpolation, or a more complex interpolation method (not too complex) wich has given some good results.

Here are my data so you could see what I am doing, the graph is a 1D cubic interpolation on maturity (step 1/12) then on tenor (step 1).

enter image description here

  • $\begingroup$ I assume you need the data for calibration purposes ? $\endgroup$ – Probilitator May 28 '14 at 19:00
  • $\begingroup$ as far as I know people often just use log linear interpolation between neighbouring rates. This is at least what Brigo&Mercurio do and there work is considered a gold standard in the field $\endgroup$ – Probilitator May 28 '14 at 19:11

One of the most used interpolation techniques is the cubic spline interpolation.

Here you can find an overview of that, while, on Mathworks.com, you can find the tutorial to implement that in Matlab directly simply by using the spline(x,Y,xx) command function.

It is not difficult to implement and, moreover, it gives pretty reliable results.

I never tried to interpolate options data, but, anyway, it is proved it works pretty well on the most of macroeconomic time-series.

In the case you need for interpolating in 2-d, you can use the bi-cubic interpolation technique; Here you can find an example in Matlab.

  • $\begingroup$ I know spline interpolation for 1D curve, is tehre anything for a surface ? $\endgroup$ – lcrmorin May 26 '14 at 21:24
  • $\begingroup$ I modified the answer; I hope it suits you. $\endgroup$ – Quantopik May 26 '14 at 21:52
  • $\begingroup$ Sorry, i meant I have spline interpolation in 1D. I don't have 2D (a matlab function is not helping, I need to code it in VBA, so a source to translate would be usefull). In fact I'm lookng for specific interpolation to finance (and vol ?) not a general one. I have edited my question to make me clearer. $\endgroup$ – lcrmorin May 28 '14 at 16:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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