I am a student in financial engineering and I have to find the matlab codes of american put option with monte carlo and asian call option with binomial tree. Can you help me? Can you write or show the link where I can find the codes?
See Chapter 7 of "The Complete Guide to Option Pricing Formulas" by Espen Gaarder Haug (2nd Edition) for Hull White trinomial trees for Asian Option (the CD accompanies the book contains the VBA code).
See Chapter 26 of "Options, Futures, and other Derivatives" by John Hull (7th Edition) for Least Squares Monte Carlo implementation for American put option. Quantcode website should have some sample codes that you can borrow. It should not be too bad implementing this yourself if you are using Matlab.
The penalty method makes the PDE semilinear and this a term like f(V, epsilon). My experience is that you need a second-order scheme in time for the BS PDE part and that epsilon must be chosen with care. Are you using the standard penalty term f()?
And you need to decide how to do time integration as you now have a nonlinear term (implicit, semi-implicit etc.) See Nielssen JCF 2002. When semi-implicit, your delta_T is dependent on that epsilon. At code level, it means a modification of the code in the linear case.
Actually, I have found Brennan-Schwartz to be very good. I have documented some results here for my ADE scheme
Looking at the numbers, 2.1 secs is NOT fast. I vaguely remember ~0.2 seconds using ADE and Brennan Schwarz.
Some articles tend to have the adjective 'fast' as the first word in the title. Even if fast, it seems strange...
---------- Post added at 07:56 AM ---------- Previous post was at 07:46 AM ----------
Here is a post I made from another forum last year, hth
I have done a number of tests against published results and other methods (e.g. penalty). Until now, I reckon that ADE with domain transformation and with checking of the intrinsic value constraint is up there in the first few.
Example: CEV model with beta = 2/3.
machine is Window XP (Dell vostro 1710) hobby laptop 1.8 Ghz, 2GB RAM. Duo core (and I use them).
In release mode the ADE model prices to the penny (2, 3 decimal places) in interval [45, 130] milliseconds. Using OpenMP multithreading gives a speedup of roughly 60%.
The nice thing is I do not need to define any nonlinear penalty functions, front fixing or domain truncation tricks. These methods I tried were much slower.
I may have posted this article already, but here it is on SSRN (ADE methods and with early exercise as well).