What's new

monte Carlo Simulation accuracy


Monte Carlo simulation returns consists of 100 replications returns a 95% VAR quantile of 1.645 with Standard Error of 0.40 such that the confidence interval for the VAR quantile is [1.245, 2.045.]This standard error is deemed too high. How many replications are approximately required to reduce the confidence interval to [ 1.545, 1.745]?
a) 200
b) 400
c) 800
d) 1600

Could some one please explain. I could not understand the solution as given below

the solution
a four fold increase in precision will approximately require FOUR FOLD^2 increase in replications . As a function of replications , the standard error is a function of SQRT(1/t). In order to educe the the standard errors from 0.4 to 0.1 , the replications need to increase from 100 to 1600

How was standard error 0.1 derived? Could someone detail the steps thanks


Well-Known Member
CI is given by [lower limit, upper limit]
Let x be mean VaR then and SE be standard error,
lower limit=x-1.645*SE….1
upper limit=x+1.645*SE…..2
subtracting 1 from 2 implies,
CW=upper limit- lower limit=2*1.645*SE….3
from data given in Q applying formula 3 gives us,
CW1=.8=2*1.645*SE1 (for n1 trials)
CW2=.2=2*1.645*SE2 (for n2 trials)
σ/√n2/ σ/√n1=.25
Or n1/n2=.0625
Given ,n1=100

Caramel hope it helps to explain it to u..thanks


Thanks so much for your solution , great help , could you mind explaining the intuition . I don't remember reading this in the text.


Well-Known Member
Thanks so much for your solution , great help , could you mind explaining the intuition . I don't remember reading this in the text.
I read it somewhere in the statistics book. don't remember from where i read it. Just that i remember about it :).

David Harper CFA FRM

David Harper CFA FRM
Staff member
ShaktiRathore thank you, awesome (star for great help)

caramel I think the intuition is pretty much illustrated by his calculations. Notice how standard error = sigma/SQRT(n)? And for a (mere) analogy, we can think of the CLT. The key idea, imo, is that the standard error scales with 1/SQRT(n). For exampe,
  • If we increase n by a factor of 4, then we reduce the SE by 1/SQRT(4n) = 1/2*1/SQRT(n).
  • If we increase n by a factor of 9, then we reduce the SE by 1/SQRT(9n) = 1/3*1/SQRT(n)
  • In order to improve the "precision" of the estimate by multiplying the SE by 1/n, we need approximately n^2 more replications.

Aleksander Hansen

Well-Known Member
Or you can think about it this way:
Say we have some observations from a population with standard normal distribution (mu=0, sigma =1) [that are i.i.d]
Adding up our obsevations, we get K=z1+z2+z3+z4+z5. So we have 5 observations, hence n=5 in our case.
What is the variance of the sum of z1+z2+z3+z4+z5, or the variance of K?
Well, they are drawn from a distribution with standard deviation = sigma, so the (population variance) is sigma^2.
Since they are independent we can just multiply the number of observations n=5 with the (sample) variance. Let's call the sample variance s^2. So, we have that the variance of K is just s^2 x n.
Now, if we want to find the mean of something we divide by the number of observations. So the mean of K is just K/n. That is, K/n is the sample mean z^hat.
Let's find the variance of K/n:
Variance(K/n) = (s^2 x n) x (1/n)^2,
so we cancel out the n in the numerator and write,
Variance(K/n) = s^2 x (1/n), = s^2 / n.
But what we really want is the standard deviation, not the variance, so the std.dev.(K/n).
Stddev(K/n) = square root (s^2/n)
Stddev(K/n) = stddev( sample mean z^hat) = s/square root (n) = standard error of the mean.