Hi all,
As student I'm asked to implement a Montecarlo valuing tool for american basket options (bestof, worstof & average) in vba and I got now doubt about how to deal with the least-squares regression used to find the values from continuation.
Let's take the example of a bestof on 2 stocks :
I proceed this way
The issue is about the trade off between computation time and success (remind I'm in VBA) and robustness of the regression.
I use only a matrix of mixed best performing stocks as input where L&S are using many more components.
At section 8.1 of their article they describe the basis functions they take in the case of a 5 stocks bestof option.
http://www.math.ethz.ch/~hjfurrer/teaching/LongstaffSchwartzAmericanOptionsLeastSquareMonteCarlo.pdf
In this case, I would have used in my program only the constant and the first five Hermite polynomials in the maximum of the values of the five assets.
Knowing that I should propose basket options from 2 to 10 (at least) different stocks, I'm afraid that if my first intuition gives too weak results (moreover weaker and weaker by the number of stocks), my program will become a VBA monster consumming too much memory.
In my opinion, it should be close enough because of the correlation between each stocks introduced in the MC loop thanks to the Cholesky decomposition of the correlation matrix applied to the brownians motions etc. etc. but I can't be sure.
So here's the question : what do you think about ?
(I think this "problem" is less relevant in the case of an average basket)
Hope I've been clear enough and please forgive spelling and grammar mistakes I may have made.
Thanks & regards,
Quentin
As student I'm asked to implement a Montecarlo valuing tool for american basket options (bestof, worstof & average) in vba and I got now doubt about how to deal with the least-squares regression used to find the values from continuation.
Let's take the example of a bestof on 2 stocks :
I proceed this way
- I generate a 3D matrix (1 to nb stocks, 1 to nb MC simulations, 1 to nb periods in each simulation) of the two stocks' paths [let's call it Stock(k,i,j)]
- I mix the two created matrix to have only one where each member (i,j) is the maximum (bestof) between Stock(1,i,j) and Stock(2,i,j) [let's call it Virtual_UL(i,j)]
- From Virtual_UL(i,j) I deduce the matrix of intrinsic/immediate exercice values [IV(i,j)]
- I finally operate the regression using OLS (or whatever polynomials) Y = a + bX + cX² + ... with X the ITM underlyings vector at time T directly taken in my Virtual_UL matrix and Y the immediate exercice CF at time T+1 (taken in the IV matrix) to compute the conditional expectation function E[Y|X]
The issue is about the trade off between computation time and success (remind I'm in VBA) and robustness of the regression.
I use only a matrix of mixed best performing stocks as input where L&S are using many more components.
At section 8.1 of their article they describe the basis functions they take in the case of a 5 stocks bestof option.
We value this American call option using essentially the same simulation
procedure used in Section 3. Specifically, we use 50,000 paths and choose
19 basis functions consisting of a constant, the first five Hermite polynomials
in the maximum of the values of the five assets, the four values and squares
of the values of the second through fifth highest asset prices, the product
of the highest and second highest, second highest and third highest, etc.,
and finally, the product of all five asset values.
http://www.math.ethz.ch/~hjfurrer/teaching/LongstaffSchwartzAmericanOptionsLeastSquareMonteCarlo.pdf
In this case, I would have used in my program only the constant and the first five Hermite polynomials in the maximum of the values of the five assets.
Knowing that I should propose basket options from 2 to 10 (at least) different stocks, I'm afraid that if my first intuition gives too weak results (moreover weaker and weaker by the number of stocks), my program will become a VBA monster consumming too much memory.
In my opinion, it should be close enough because of the correlation between each stocks introduced in the MC loop thanks to the Cholesky decomposition of the correlation matrix applied to the brownians motions etc. etc. but I can't be sure.
So here's the question : what do you think about ?
(I think this "problem" is less relevant in the case of an average basket)
Hope I've been clear enough and please forgive spelling and grammar mistakes I may have made.
Thanks & regards,
Quentin