Monte Carlo simulation
A way to study uncertainty by running the same model many times with different random market movements—like repeating an experiment under thousands of plausible futures.
Numerical methods · Python · 2026
A numerical-finance engine that prices European calls and puts, validates simulation against Black–Scholes and estimates price and Greek uncertainty. Reproducible studies test convergence, confidence intervals and antithetic variance reduction.
In plain English
An option is a contract whose value depends on what an asset might be worth in the future. Because that future price is uncertain, the engine simulates thousands of plausible market outcomes, calculates the contract's payoff in each one and averages the results into an estimated fair value.
A way to study uncertainty by running the same model many times with different random market movements—like repeating an experiment under thousands of plausible futures.
A recognised analytical pricing formula. Comparing the simulation with this known answer checks that the engine is producing credible results.
Risk measures that show how an option's value responds when the market changes—for example, when the asset price or expected volatility moves.
01 / The question
The project begins with risk-neutral geometric Brownian motion and the closed-form Black–Scholes solution. Those analytical prices provide a benchmark for standard and antithetic Monte Carlo estimators.
Rather than reporting a single simulated price, the engine exposes standard errors and 95% confidence intervals. Tests cover analytical benchmarks, put–call parity, finite-difference Greek validation and the statistical treatment of independent antithetic pair averages.
The latest study extends that validation to pathwise Delta and Vega and a common-random-number Gamma estimator, tracking all three from 2,000 to 600,000 simulated paths.
In practical terms, this tests more than whether the code returns a number. It checks whether that number is accurate, whether its uncertainty is measured honestly and whether the method becomes more reliable as more computation is used.
02 / Method
Black–Scholes call and put prices establish the deterministic reference.
Exact terminal GBM samples produce discounted payoff observations.
Each normal draw is paired with its negative before payoffs are averaged.
Pathwise and common-random-number estimators measure Delta, Vega and Gamma.
03 / Results
Standard and antithetic estimators use equal numbers of terminal-price evaluations. The antithetic estimator consistently produces the lower standard error while retaining the expected N⁻¹ᐟ² scaling.
| Option | Standard SE | Antithetic SE | SE reduction | Variance reduction |
|---|---|---|---|---|
| Call | 0.019017 | 0.013460 | 1.413x | 1.996x |
| Put | 0.011188 | 0.008564 | 1.306x | 1.707x |
What this means: both methods use the same computational budget, but pairing each simulated market move with its opposite produces a more stable answer. For calls, the remaining statistical variance is almost halved—so the engine extracts roughly twice as much information from the same number of simulated outcomes.


04 / Greeks convergence
Across a 300-fold increase in path count, standard errors fall by roughly the expected square-root rate. At 600,000 paths, the analytical benchmark lies inside the reported 95% confidence interval for each studied Greek.
| Greek | Starting paths | Final paths | Starting SE | Final SE | SE reduction |
|---|---|---|---|---|---|
| Call Delta | 2,000 | 600,000 | 0.012819 | 0.000744 | 17.23x |
| Gamma | 2,000 | 600,000 | 0.002504 | 0.000139 | 18.01x |
| Call Vega | 2,000 | 600,000 | 1.600593 | 0.097863 | 16.36x |


Why this matters: a risk figure without uncertainty can look more precise than it really is. These confidence intervals show the range of values supported by the simulation, while the convergence study checks that this range narrows predictably as more paths are added. The underlying data is exported to CSV so the result can be inspected and reproduced.
Download study data05 / Impact
Financial models influence decisions only when their outputs can be trusted. This project moves from simply producing a price to showing how accurate it is, how sensitive it is to changing markets and how efficiently that evidence can be generated.
Antithetic sampling nearly halves call-price variance without increasing the number of simulated market outcomes. The same computational budget therefore produces a more stable estimate.
Delta, Gamma and Vega translate a single option price into an explanation of how exposure changes when price and volatility move—information that is closer to an actual risk decision.
Confidence intervals, analytical benchmarks and convergence tests make uncertainty visible. A reviewer can see not only the answer, but also why it should be believed and where its limitations remain.
06 / Engineering
The project demonstrates the full workflow behind trustworthy quantitative software: derive a method, implement it, compare it with an independent benchmark, quantify error and automate the checks so future changes cannot silently break the result.

07 / Next
The next version will expose the analysis through this website, allowing a visitor to change option parameters and compare prices, confidence intervals and Greeks without installing the Python package.
Explore the repository