Monte Carlo Simulation and Application to Pricing

Price a derivative by simulating the underlying, evaluating the payoff on each path, and averaging:

Monte Carlo pricing
V0=erTEQ[payoff]erT1ni=1npayoffiV_0 = e^{-rT}E^{\mathbb{Q}}\left[\text{payoff}\right] \approx e^{-rT}\frac{1}{n}\sum_{i=1}^n \text{payoff}_i

Simulate, evaluate the payoff on each path, average, discount. The error falls as one over root N, which is why precision is expensive.

Simple to state, and the details determine whether it is usable.

Simulating a GBM path

Do not discretise the stochastic differential equation directly. Use the exact solution:

St+Δt=Stexp((rσ22)Δt+σΔtZ),ZN(0,1)S_{t+\Delta t} = S_t\exp\left(\left(r - \tfrac{\sigma^2}{2}\right)\Delta t + \sigma\sqrt{\Delta t}\,Z\right), \qquad Z \sim \mathcal{N}(0,1)

This is exact for GBM at any step size, so there is no discretisation error. Using the Euler form St+Δt=St(1+rΔt+σΔtZ)S_{t+\Delta t} = S_t(1 + r\Delta t + \sigma\sqrt{\Delta t}Z) introduces bias and can produce negative prices.

Note rr rather than μ\mu: simulation for pricing runs under the risk-neutral measure.

The rest of this lesson is for subscribers

Unlock every lesson in Basics of Quantitative Finance, and every other premium course.

Subscribe to continue

Test your knowledge

Questions are only available to subscribers.

Keep reading Basics of Quantitative Finance

23 lessons in this course, and every other premium course, on one subscription.

  • Every lesson in every course, with the worked examples and interactive simulators
  • Graded questions on every lesson, with explanations for the wrong answers as well as the right one
  • The trainers, timed assessments and brainteaser library that go with them