Serving the Quantitative Finance Community

 
User avatar
Afth
Topic Author
Posts: 0
Joined: May 23rd, 2005, 2:20 pm

Improve results MC simulations for long horizon BS-model

September 12th, 2008, 5:11 pm

Dear all,imagine a typical situation in an insurance company: a large pile of future cashfllows (all kinds of characteristics) on a long horizon (say 70 units (years)) programmed in a projection system. This system needs to be fed with paths generated by a model describing the evolution of a stock price and interest rates. For this we use a combined Hull-White/Black-Scholes model. Currently we are simply using a straightforward Monte Carlo simulation (Euler discretisation of time), with antithetic paths for some variance reduction. Due to the complexity of the cashflows in the projection system the number of paths that can be used as input is limited to say 1000 to 2000. As is to be expected of course, especially towards the end of the projection period the stock price paths start behaving badly in the sense that the discounted empirical mean is far off from its theoretical value S(0).I'm now looking for methods to improve the behaviour of especially this discounted empirical mean within this framework. My first (naive) guess is to try something like stratified sampling or moment matching. I am wondering whether people here have better ideas, are there methods that are better suited in such a setting?Thanks in advance!
 
User avatar
Alan
Posts: 3050
Joined: December 19th, 2001, 4:01 am
Location: California
Contact:

Improve results MC simulations for long horizon BS-model

September 12th, 2008, 5:44 pm

Your problems may be related to those discussed in this threadThe first thing I would do is set the interest rate = constant = r =long run mean and see if you still have problems.In that case, is the stock price generated by dS = r S dt + sigma S dW(t)?If the answer is yes and there are still problems, post some specifics, like dt, r, sigma, S(0), <exp(-r T) S(T)>, where <...> is the MC average, and the MC std. errors If the answer is no, first explain exactly how you generate S(T) (in this simplified case)regards,
Last edited by Alan on September 11th, 2008, 10:00 pm, edited 1 time in total.
 
User avatar
Afth
Topic Author
Posts: 0
Joined: May 23rd, 2005, 2:20 pm

Improve results MC simulations for long horizon BS-model

September 12th, 2008, 5:58 pm

Thanks Alan, I'll have a look . To reply to your edit, yes with your simplification to set interest rate constant it is just standard Black & Scholes. I'll get back to your questions in more detail when I'm back at work Monday, I can't access the data right now. What I can say already is that in the simulation:dt=0.01, sigma is approx. 0.2, S(0) =1 (for simplicity), T=75 (say),and the simulation procedure is to simply generate path-by-path, at each time step k drawing from a standard normal and doing the required calculations with that number to find S(k+dt). I trust I didn't make mistakes in that trivial part .In the original problem, so without setting the interest rate constant, the empirical mean of exp(..t..)*S(t) drifts off to values >1.1 and/or <0.9 if t gets closer to T.
Last edited by Afth on September 11th, 2008, 10:00 pm, edited 1 time in total.
 
User avatar
Alan
Posts: 3050
Joined: December 19th, 2001, 4:01 am
Location: California
Contact:

Improve results MC simulations for long horizon BS-model

September 12th, 2008, 6:23 pm

I will guess that my comment in the other threadQuote No, deltaT is irrelevant. Let B(t) be a Brownian motion. Do an "exact simulation" ofE M(T) = E exp(B(T) - T/2) by averaging NSIM drawings of X = exp(Z Sqrt(T) - T/2), where Z is a unit normal variate.This is -exact- with one big step from t=0 to t=T (NT = 1); i.e., no value of deltaT could improve upon this, since we are drawing from the exact terminal distribution.Writing <X> for the MC average with MC std. error in parens, I get, for T = 30:(T=30)NSIM <X> Std. error----------------------------10^4 0.15 (0.07)10^5 0.23 (0.14)10^6 0.48 (0.20)10^7 0.66 (0.19)10^8 0.89 (0.27)10^9 1.03 (0.20) is your problem also.To confirm it, just do an exact simulation ofE exp( sig B(T) - sig^2/2 T) by averaging NSIM drawings of X = exp(Z sig Sqrt(T) - sig^2 T/2), where Z is a unit normal variate,and sig = your 0.2 and T = 75.In the above, sig^2 T = 30, but in your case sig^2 T = 3, so you won't need to test so many trials.But, you will probably see the same pattern: values less than 1 that approach 1 as NSIM is increased.Now you know the value of NSIM that is necessary to get good results. If you confirm this, then theproblem becomes -- how to generate this many trials in your case? There may be some easy fixes ...
Last edited by Alan on September 11th, 2008, 10:00 pm, edited 1 time in total.
 
User avatar
Afth
Topic Author
Posts: 0
Joined: May 23rd, 2005, 2:20 pm

Improve results MC simulations for long horizon BS-model

September 12th, 2008, 6:42 pm

Yes, I agree deltaT (or dt) is irrelevant by the scaling property of Brownian motion.Maybe I should explain a bit more that the original situation is that the paths are generated by a (closed source) third party application that basically only allows to change some parameters, so I won't be able to do the experiment you suggested using this application. But then again, due to these limitations I probably need to generate the (improved) stock price paths anyhow outside this application, so I'll implement your experiment in an Excelsheet.
 
User avatar
Alan
Posts: 3050
Joined: December 19th, 2001, 4:01 am
Location: California
Contact:

Improve results MC simulations for long horizon BS-model

September 12th, 2008, 6:47 pm

Yes, try it. I just tried it myself and it looks to me that you may get very satisfactory results, for sig^2 T = 3 with 10^5trials.
 
User avatar
mj
Posts: 12
Joined: December 20th, 2001, 12:32 pm

Improve results MC simulations for long horizon BS-model

September 12th, 2008, 7:52 pm

If you can manipulate the paths after drawing, map them to log space, and then add \mu t to them to get the desired final mean. You could also scale the distance from the mean to get desired variance.
 
User avatar
Afth
Topic Author
Posts: 0
Joined: May 23rd, 2005, 2:20 pm

Improve results MC simulations for long horizon BS-model

September 12th, 2008, 7:52 pm

My results (with sigma=0.2 and T=75):Indeed 10^5 simulations already looks quite nice.
Last edited by Afth on September 11th, 2008, 10:00 pm, edited 1 time in total.
 
User avatar
Afth
Topic Author
Posts: 0
Joined: May 23rd, 2005, 2:20 pm

Improve results MC simulations for long horizon BS-model

September 12th, 2008, 7:56 pm

QuoteOriginally posted by: mjIf you can manipulate the paths after drawing, map them to log space, and then add \mu t to them to get the desired final mean. You could also scale the distance from the mean to get desired variance.Sorry, I don't think I understand what you're trying to point out?
 
User avatar
mj
Posts: 12
Joined: December 20th, 2001, 12:32 pm

Improve results MC simulations for long horizon BS-model

September 13th, 2008, 1:37 am

You can use moment matching to ensure that the sample mean and variance are precisely what you want.
 
User avatar
Afth
Topic Author
Posts: 0
Joined: May 23rd, 2005, 2:20 pm

Improve results MC simulations for long horizon BS-model

September 13th, 2008, 9:29 am

QuoteOriginally posted by: mjYou can use moment matching to ensure that the sample mean and variance are precisely what you want.Ah, yes, sorry, that is one of the possibilities I was thinking about as well . However, what makes me a bit hesitant is that you actually really adjust the stochastic properties by doing so... Would applying (some strong form) of stratified sampling, e.g. grouping the 1000 simulations by 100 groups of 10 each, be a feasible alternative to your mind?
 
User avatar
mj
Posts: 12
Joined: December 20th, 2001, 12:32 pm

Improve results MC simulations for long horizon BS-model

September 14th, 2008, 10:26 pm

Well, you clearly can do either or both! I don't think either would do any harm and both would probably reduce variance quite a bit.
 
User avatar
mj
Posts: 12
Joined: December 20th, 2001, 12:32 pm

Improve results MC simulations for long horizon BS-model

September 14th, 2008, 10:29 pm

The problem you may be hitting is that log-normals are not very nice long term. If r - 0.5\sigma^2 < 0 then most paths will go zero and a small number will give most of the value.
 
User avatar
jl8925
Posts: 0
Joined: August 28th, 2008, 1:22 am

Improve results MC simulations for long horizon BS-model

September 15th, 2008, 2:46 pm

I work for insurance company,too. So I am in the same boat. Any projections more than 1000 scenarios are practically impossible. So far, we have not found an easy solution to force E[S(t)*discount factor(t)] to converge to S(0) quickly. Afth, what will you use the model for? Pricing or valuation? We use our model for fair value calculation. Our fixed account liability is pretty small compared with separate account. So we took the short cuts by model interest rates and equity returns separately. Instead of using risk neutral scenarios, we do the projections under forward measure to simplify the discount factors.We are still looking for a method to combine interest rates and equity returns for pricing. QuoteOriginally posted by: AfthDear all,imagine a typical situation in an insurance company: a large pile of future cashfllows (all kinds of characteristics) on a long horizon (say 70 units (years)) programmed in a projection system. This system needs to be fed with paths generated by a model describing the evolution of a stock price and interest rates. For this we use a combined Hull-White/Black-Scholes model. Currently we are simply using a straightforward Monte Carlo simulation (Euler discretisation of time), with antithetic paths for some variance reduction. Due to the complexity of the cashflows in the projection system the number of paths that can be used as input is limited to say 1000 to 2000. As is to be expected of course, especially towards the end of the projection period the stock price paths start behaving badly in the sense that the discounted empirical mean is far off from its theoretical value S(0).I'm now looking for methods to improve the behaviour of especially this discounted empirical mean within this framework. My first (naive) guess is to try something like stratified sampling or moment matching. I am wondering whether people here have better ideas, are there methods that are better suited in such a setting?Thanks in advance!