Monte Carlo Documentation

Overview

The Monte Carlo Simulation is a numerical method used for estimating the fair value of options by simulating the price paths of the underlying asset over time. Unlike the Black-Scholes model, Monte Carlo does not rely on a closed-form solution. Instead, it generates random price paths based on the asset's volatility and risk-free rate, computes the payoff for each simulated path, and then takes the average discounted payoff.

Key Concepts in Monte Carlo Simulation

Function Parameters

Explanation of Key Calculations

  1. Price Paths: At each time step, the asset's price is updated according to the following formula:
    • \( S_{t+1} = S_t \times \exp\left((r - 0.5\sigma^2)\Delta t + \sigma \sqrt{\Delta t} \cdot z\right) \)
    where \(z\) is a random sample from a standard normal distribution, and \(\Delta t\) is the time step.
  2. Payoff Calculation: For each price path, the payoff is calculated at expiration based on the option type:
    • Call Option: \( \text{payoff} = \max(S_T - K, 0) \)
    • Put Option: \( \text{payoff} = \max(K - S_T, 0) \)
  3. Discounting the Payoffs: After computing the payoff for each simulation, the values are discounted to the present using the risk-free rate:
    • Discounted Payoff: \( e^{-rT} \cdot \text{payoff} \)
  4. Estimating Option Price: The option price is the average of the discounted payoffs across all simulations:
    • Option Price: \( \frac{1}{n} \sum_{i=1}^n \left(e^{-rT} \cdot \text{payoff}_i\right) \)
  5. Greek Calculation: The Greeks (Delta, Gamma, Vega, Theta, Rho) can be computed using finite difference methods by shocking the input parameters (e.g., increasing \(S\) or \(\sigma\)) and rerunning the simulation to observe the effect on the option price.