Skip to content

FRM Part I · FRM Exam Part I

Simulation and Bootstrapping: formula sheet

Full chapter guide

Key formulas

Monte Carlo estimator
Ê[g(X)] = (1 ÷ N) × Σ g(Xᵢ), i = 1 to N
The simple average of the outcome over N independent trials. It converges to the true expected value as N grows.
Standard error of the estimate
SE = s ÷ √N
s is the sample standard deviation of the trial outcomes. To halve the SE you need four times as many trials.
Confidence interval for the estimate
Estimate ± z × SE (z = 1.96 for 95%)
Uses the normal approximation, which is reasonable for large N by the central limit theorem.
GBM terminal price
S_T = S₀ × exp[(μ − σ²/2) × T + σ × √T × Z], Z ~ N(0,1)
For option pricing under risk-neutral valuation, replace μ with r (or r − q if there is a dividend yield q).
Monte Carlo option price
Price = e^(−rT) × (1 ÷ N) × Σ payoffᵢ
Discount the average payoff at the risk-free rate. For a European call, payoffᵢ = max(S_T,ᵢ − K, 0).
Simulated VaR
VaR at confidence c = minus the (1 − c) quantile of simulated P&L
With N trials at 99%, VaR is roughly the loss at rank 0.01 × N when losses are sorted from worst to best.
Standard error of a simulated mean
SE = σ ÷ √N
σ is the standard deviation of the simulated outcomes (use the sample standard deviation s if σ is unknown). N is the number of independent replications.
Confidence interval for the estimate
x̄ ± z × σ ÷ √N
z is 1.645 for 90%, 1.96 for 95% and 2.576 for 99% two-sided confidence, based on the normal approximation.
Required number of simulations
N = (z × σ ÷ E)²
E is the target half-width of the confidence interval, the maximum acceptable error at the chosen confidence level.
Scaling rule
SE₂ ÷ SE₁ = √(N₁ ÷ N₂)
To cut error by a factor k, multiply N by k². Holds when σ is unchanged.
Standard error of a Monte Carlo estimate
SE = σ ÷ √N
Quadrupling N halves SE. This is the baseline that variance reduction improves on.
Antithetic pair variance
Var[(X₁ + X₂) ÷ 2] = (σ² ÷ 2) × (1 + ρ)
X₁ and X₂ have the same variance σ². ρ is their correlation. ρ < 0 helps; ρ = 0 gives no gain over two independent draws.
Control variate adjusted estimator
X* = X − b(Y − E[Y])
E[Y] must be known exactly. The adjusted estimator stays unbiased because E[Y − E[Y]] = 0.
Optimal control coefficient
b* = Cov(X, Y) ÷ Var(Y) = ρ × σX ÷ σY
This is the regression slope of X on Y.
Variance after optimal control
Var(X*) = Var(X) × (1 − ρ²)
Gain depends on the size of ρ, not its sign. ρ = 0.9 removes 81% of the variance.
Bootstrap sample
Draw n values from n observations, with replacement, each draw equally likely (probability 1/n)
Each resample has the same size as the original sample. Repeat B times to get B statistics θ*₁, …, θ*_B.
Bootstrap standard error
SE(θ̂) ≈ √[ Σ (θ*_b − mean of θ*)² ÷ (B − 1) ], summed over b = 1 to B
This is the sample standard deviation of the B bootstrap estimates. It is not the standard deviation of the raw data.
Percentile confidence interval
For a (1 − α) interval, use the α/2 and (1 − α/2) percentiles of the B bootstrap estimates
For a 95% interval, use the 2.5th and 97.5th percentiles.
Chance an observation is left out of one resample
(1 − 1/n)ⁿ, which approaches e⁻¹ ≈ 0.368 as n grows
So about 63.2% of the original observations appear at least once in a large resample.
Bootstrap bias estimate
Bias ≈ mean of θ* − θ̂
θ̂ is the statistic from the original sample. Mean of θ* is the average of the bootstrap statistics.
Bootstrap resampling rule
Draw n observations with replacement from the original n observations; compute the statistic; repeat B times
Each draw is from the empirical distribution. The bootstrap standard error is the standard deviation of the B statistics.
Bootstrap i.i.d. condition
Observations independent and identically distributed, and sample representative of the population
If either part fails, the bootstrap can be unreliable.
Simulation sampling error
Standard error of a simulated mean ≈ s ÷ √N
Quadrupling the number of simulations N roughly halves the standard error. It does not fix model risk.
Bootstrap standard error
SE = √[ Σ(θ*ᵢ − θ̄*)² ÷ (B − 1) ]
θ*ᵢ is the statistic from resample i and θ̄* is the average across B resamples.
Inverse transform method
X = F⁻¹(U), where U ~ Uniform(0, 1)
Works for any distribution whose CDF can be inverted. X then has CDF F.
Standard normal from uniform
Z = N⁻¹(U)
Excel: NORM.S.INV(RAND()). U must lie strictly between 0 and 1.
General normal draw
X = μ + σ × Z
Z is a standard normal draw. Use σ, not σ².
Lognormal price draw
S_T = S_0 × exp[(μ − σ²/2)T + σ√T × Z]
Standard geometric Brownian motion over time T. Under risk-neutral pricing, use the risk-free rate (net of any yield) for μ.
Correlated normals (two variables)
Z₂ = ρ × ε₁ + √(1 − ρ²) × ε₂
ε₁ and ε₂ are independent standard normals and Z₁ = ε₁. Then Corr(Z₁, Z₂) = ρ.
Standard error of a simulation estimate
SE = s ÷ √N
s is the sample standard deviation of the outputs and N is the number of trials. Changing the seed does not change the expected SE.

Quick revision

  • Monte Carlo estimate = average of the outcomes from N simulated paths.
  • Standard error of the estimate = σ ÷ √N, where σ is the standard deviation of the outcome.
  • To halve the standard error, you need four times as many simulations.
  • Increasing N reduces sampling error only; it does not fix a wrong model.
  • Antithetic variates use a draw and its mirror image (for example Z and −Z) to induce negative correlation and cut variance.
  • Control variates use a related variable with a known expected value to adjust the estimate; the benefit grows with the correlation.
  • Bootstrapping resamples observed data with replacement and assumes the observations are iid.
  • Bootstrapping cannot create outcomes outside those present in the sample, so tail events may be missed.
  • Simulation is useful for path-dependent and complex payoffs where no closed form exists.
  • Pseudo-random numbers are deterministic given a seed, which allows results to be reproduced.
  • Both methods are only as good as their inputs: model assumptions for simulation, representative data for bootstrapping.

Common mistakes

  • Using the real-world expected return μ as the drift when pricing an option. Fix: For pricing, simulate under the risk-neutral measure with drift r (or r − q), then discount at r. For VaR, use the real-world drift (often set near zero over short horizons).
  • Forgetting the −σ²/2 term in the GBM exponent. Fix: Write the exponent as (μ − σ²/2)T + σ√T Z every time. The correction keeps the expected terminal price at S₀ × e^(μT).
  • Thinking that doubling N halves the standard error. Fix: Error falls with √N. Doubling N cuts error by about 29% (a factor of 1 ÷ √2). Halving error needs 4 times N.
  • Using σ ÷ N instead of σ ÷ √N. Fix: Either use the standard deviation σ ÷ √N, or the variance σ² ÷ N. Never σ ÷ N.
  • Saying variance reduction works by increasing the number of draws. Fix: Remember the point: same N, lower variance. The techniques change what is averaged, not how many draws are used.
  • Using a control variate whose expected value is unknown or estimated. Fix: The control needs a known E[Y], often from a closed-form price. Otherwise the adjustment adds bias or noise.
  • Resampling without replacement Fix: Remember that replacement is what makes each resample different. Without it, a full-size resample would just reproduce the original data.
  • Using the data's standard deviation as the bootstrap standard error Fix: The bootstrap standard error is the standard deviation of the statistic across resamples, for example of the B resampled means.
  • Saying more Monte Carlo draws fix a wrong model Fix: More draws shrink sampling error only. A misspecified distribution or correlation stays wrong.
  • Claiming bootstrapping needs a normality assumption Fix: Standard bootstrapping is nonparametric. Its key assumptions are i.i.d. data and a representative sample.

Exam tips

  • Questions often test the √N rule. Know that four times the trials halves the error, and be ready to compute the N needed for a target SE.
  • Know the ordered steps: specify the model, generate random numbers, build scenarios, compute outcomes, repeat N times, summarize. Expect a question asking which step comes first or is missing.
  • Check the drift in any pricing question. Risk-neutral drift is r (or r − q), and the discount factor uses r.
  • For VaR, convert confidence to a rank with (1 − c) × N, and state VaR as a positive loss.
  • Know the limits: Monte Carlo is slow for large portfolios, depends on the model assumed, and needs correlated draws for several risk factors.
  • Memorise the √N rule as a scaling fact: error ÷ 2 means N × 4, error ÷ 10 means N × 100. Many questions are solved in seconds this way.
  • Read carefully whether the given standard deviation is for one run or for the average. Only divide by √N for a single-run σ.
  • If a question asks which change reduces error most efficiently, a variance reduction technique that lowers σ is often the better answer than raising N.