• C++ Programming for Financial Engineering
    Highly recommended by thousands of MFE students. Covers essential C++ topics with applications to financial engineering. Learn more Join!
    Python for Finance with Intro to Data Science
    Gain practical understanding of Python to read, understand, and write professional Python code for your first day on the job. Learn more Join!
    An Intuition-Based Options Primer for FE
    Ideal for entry level positions interviews and graduate studies, specializing in options trading arbitrage and options valuation models. Learn more Join!

Newton's Method in Hull-White model-Matlab

Hi all,

I currently want to use Jamshidian's trick for pricing a coupon bond option in Hull-White model, which is to represent
the strike price K as a price of a coupon bond with a yield r_star.
To do so, one has to use a non linear solver to obtain this yield, r_star, of the coupon bearing bond with price K.
I have implemented Newton's method in Matlab but I do not get the correct yield.
The strange thing is that if I use the same algorithm for Vasicek model, I get exactly the correct result, in contrast to the Hull-White model where the result is NaN.

Does anyone know why this problem occurs?

Thanks.
 

Daniel Duffy

C++ author, trainer
I did BDT model using NR for yield fitting and the major issue for me was that it did not always converge because of bad seed value.

So I use Bisection to bracket to TOL = 1.0e-1 and then NR.
 
I did BDT model using NR for yield fitting and the major issue for me was that it did not always converge because of bad seed value.

So I use Bisection to bracket to TOL = 1.0e-1 and then NR.


Finally, I used bisection method too. Concerning the NR method, I plotted the Coupon Bond prices for different r_star in both HW and Vasicek and I show that when r_star increases then the prices decreases very fast in HW and much less in Vasicek. Therefore, NR method does not converge in HW model as the function for coupon bond prices reaches its assymptotics quickly. By the way, bisection method is much faster than I was expecting initially.
 

Daniel Duffy

C++ author, trainer
Finally, I used bisection method too. Concerning the NR method, I plotted the Coupon Bond prices for different r_star in both HW and Vasicek and I show that when r_star increases then the prices decreases very fast in HW and much less in Vasicek. Therefore, NR method does not converge in HW model as the function for coupon bond prices reaches its assymptotics quickly. By the way, bisection method is much faster than I was expecting initially.
Well done :)

This nasty NR experience (lost time....) is not well documented in general. People tend to use seed = 0.05 as if was the Bible!
 
Top