Monte Carlo Simulation

Angshuman

New Member
Hi David,
Monte Carlo Simulation is a flexible algorithm and it is not burdened by normal distribution assumption. But when we are generating the shocks from the seed value we are using equation (NORMSINV(RAND())*volatility*SQRT(time); my question is why then we are again drawing the normally distributed random numbers? Is there a cntradiction? Is there any other technique to generate random numbers? If yes, then why don't we use the same?
If you kindly clarify the doubt , it will be of great help.
 

David Harper CFA FRM

David Harper CFA FRM
Subscriber
Hi Angshuman,

You are totally correct. A key virtue of MCS is that we are liberated from normality. This FRM cirriculum could do, should do I think, better in this regard with demos of alternatives. I used it simply because it's in the assignments, and the assignments are following a pretty typical practice of *introducing* MCS with normal returns. Specifically, both Jorion and Hull start here. Hull specifically, because the simulation you copied above is the discrete version of geometric Brownian Motion (GBM) and therefore the discrete version of the same lognormal (i.e., lognormal price = normal return) assumption that underlies Black-Scholes-Merton. So, in short, this is the most common way to *introduce* MCS. Otherwise, (i) it's totally inappropriate for, say, interest rate products and likely other asset classese and (ii) even for equities, there is limitless flexibility in specifying the "distributional engine." Carol Alexander's Volume IV of Market Risk Analysis shows some alternatives (e.g., you can literally replace the inverse normal with any distribution).

I think K. Dowd even suggest somewhere that using MCS with normality is sort of a waste since we have analytic methods for that; i *think* he implies you aren't really using it very well if your assuming normality, to your point.

(there are two points here. About generating random vars, that's a topic unto itself. So, 1. there is the issue of generating random numbers, and 2. the issue of specifying the stochastic process, what i think of as the "engine"). But, given that MCS is (to many people's thinking) maybe the favored VaR method and given that normality is dubious, I think you have pointed to a key omission in the current cirriculum, we should be studying this....

David
 

Angshuman

New Member
Hi David,
thanks a lot for clarification, another doubt for the 'Structured Monte Carlo VaR ' is that it uses correlation matrix which is derived from the historically observed returns. So even in Monte Carlo Simulation, historically observed events have critical influence. Hence events, which has never been observed in history (e.g recent happenings like 25 standard deviations!) can never be predicted either by Monte Carlo or by Historical Simulation. If this inference is right then what is the way out? How can we still use Monte Carlo to compute VaR?
 

Angshuman

New Member
Hi David,
post your advice for the MCS, in the worksheet provided by you for 'Structured Monte Carlo' for portfolio VaR computation I used TINV(RAND(),6) instead of NORMSINV(RAND()) is this the correct way to get rid of normality assumption? But when I used TINV(RAND(),6), most of the random numbers are in positive zone so the resultant VaR is not correct. Can you please suggest the correct one?
 

David Harper CFA FRM

David Harper CFA FRM
Subscriber
You could try (perhaps there are easier ways):

x = RAND()
IF x > 0.5: TINV(1-RAND()*2,d.f.)
IF x < 0.5: -TINV(RAND()*2,d.f.)

I seriously just made that up (as TINV() function is always positive, i just mirrored the tail), so I don't imagine it's the most efficient..David
 

Angshuman

New Member
Hi David,
thanks a lot for your guidance, I used the same formula (TINV)for generating the VaR no and as expected ,the resultant VaR i smuch higher.
so I have replaced the following equation,

S(t) = S(t-1)+S(t-1)*[mu*dt+normsinv(rand())]*sigma*dt^0.5...................(I)

with
S(t) = S(t-1)+S(t-1)*[mu*dt+tinv(rand())]*sigma*dt^0.5 ...............(II)

My question is,

1. is the equation (II) still valid under this non-normality assumption? In other words, is the Wiener process itself valid under the non-normality assumption?

2. In case of term structure of interest rates , for example if we cosider CIR model , then also the same issue surfaces, the interest rate evolution process is given by ,

dr= a(b-r)dt+sigma*r^0.5*dz


where, dr= incremental rate, a = speed of mean reversion, b = long-term equilibrium of mean reverting spot rate process,
and , dz = wiener process.

in this case also there has been use of normally distributed random process.

can we use in this case also any distribution other than random numbers generated from normal distribution?

Please help me in clarifying the doubts.
 
Top