Monte Carlo simulation of instantaneous spot rate

  • Thread starter Thread starter featips
  • Start date Start date
Joined
2/26/09
Messages
76
Points
16
Hi all,

I am using Hull-White model to simulate short interest rate. I already built LIBOR curve (from LIBOR data, Euro-future data and swap data). I also obtained parameters by calibrating H-W model based on market swaption data.

Now what I am doing is to use the obtained H-W model parameters to implement Monte-Carlo simulation. Currently I am not using any variance reduction techniques and no LDN. I am just using the most common (and intuitive) way: generating random numbers using MATLAB function RANDN().

I run 10,000 paths and take average. My result gave me non-smooth spot rate curve over 30 years (as seen in attached JPG file). Note, my input of observed term structure (LIBOR curve) is relatively smooth.

So, my questions are:

(1) Is it normal (or correct, or acceptible) that the obtained spot rate curve is non-smooth?
(2) When you guys do such kind of simulations, are your curve smooth?
(3) Do those techniques (variance-reduction methods, quasi-Monte Carlo, LDN) help to generate smoother curve?

Thanks a lot for your help.

Regards,
Derek
 

Attachments

  • ShortRateMonthly.jpg
    ShortRateMonthly.jpg
    21.4 KB · Views: 72
2. Try using more paths.

3. Yes. They are not much more code, give them a try.
 
2. Try using more paths.

3. Yes. They are not much more code, give them a try.

Thanks a lot for your helpful answer.
So, I assume generally you get smooth rate curve, that's why you suggest more path, right? I will try with more path.

However, by tuition, I think too smooth curve may not be realistic, since market volatility shall 'distort' the curve......maybe I am wrong.
 
I think that you get this kind of curve because of the values of your calibrated parameters.

What are the values of your parameters after the calibration routine ?
 
Hi Pulco,

Thanks a lot for your reply.

The two parameters that I obtained from calibrating Hull-White model is:

($a=0.068$)
($\sigma=0.015$)

These two parameters give good fitting to swaption volatility data, and also they match the data range recommended by John Hull. I ever tried time-dependent a and sigma, no significant increase of accuracy, so I still stick with constants.

Another input is currently observed term structure, which is the LIBOR-Curve built from LIBOR data (<3-month), Euro-future (<2 year) and swap (> 2 year). The obtained zero-coupon LIBOR Curves for USD and Sterling are attached here.

Thanks a lot for your help.

I think that you get this kind of curve because of the values of your calibrated parameters.

What are the values of your parameters after the calibration routine ?
 

Attachments

  • Yield_Curves.png
    Yield_Curves.png
    5.2 KB · Views: 33
Back
Top