Monte Carlo Simulation Calculator
Run thousands of random price paths and see the full distribution of where your portfolio could end up. Handles contributions, withdrawals, sequence-of-returns risk, and inflation-adjusted (real) outcomes.
Results
showing nominal future dollarsDistribution of terminal outcomes
| Percentile | Portfolio value | vs starting |
|---|---|---|
| 5th | $99,572 | -0.4% |
| 25th | $208,246 | +108.2% |
| 50th (median) | $356,967 | +257.0% |
| 75th | $612,150 | +512.2% |
| 95th | $1,400,521 | +1300.5% |
Probability events
Sample paths
In the median outcome, your $100,000 grows to $356,967 over 20 years (CAGR 8.41%). But 5.1% of paths end below the starting value, and the worst 5% end at or below $99,572. The best 5% reach $1,400,521 or higher.
Track positions over time, get IV-crush alerts, run multi-leg strategies. $9/mo when it ships.
The chart platform used by 60M+ traders. Custom indicators, multi-timeframe analysis, alerts. Free 30-day Pro trial.
QuantOracle earns a commission if you sign up via this link. Doesn't cost you extra.
Frequently asked questions
Why Monte Carlo, instead of a single expected-return projection?
The simplest way to project a portfolio is to compound the expected return: start with $X, multiply by (1 + r)T, done. It gives a clean number. It is also wrong in a way that matters: two portfolios can have the same expected return but very different risk profiles, and the single-number projection hides the risk entirely.
Monte Carlo simulation runs thousands of random scenarios drawn from the same distribution and reports the full range of outcomes. You see not just "you will probably end at $250,000" but "5% chance you end below $80K, 50% chance you end above $200K, 5% chance you end above $510K." The spread is what informs decisions like whether your retirement plan can survive bad luck.
The math behind the simulation
This calculator uses geometric Brownian motion — log returns are drawn from a normal distribution with mean (μ − σ²/2)·dt and standard deviation σ·√dt. At each timestep, the portfolio is multiplied by exp(drawn_return). Contributions are added at year-end; withdrawals are subtracted as a fixed fraction of the current portfolio. The result is one random path from your starting value to a terminal value.
Repeat that process N times (1,000+ paths) and tabulate the distribution of terminal values. The percentiles of that distribution are the answer. Standard error of the percentile estimates is roughly 1/√N, so 1,000 paths gives ~3% precision and 10,000 paths gives ~1%.
Sequence-of-returns risk and why it matters
With contributions only (no withdrawals), the order of returns barely matters — math is commutative. With withdrawals, order matters enormously. Two retirees with the same average return can end up wildly different just based on whether bad years hit early or late: early bad years deplete the portfolio when withdrawals are largest, leaving nothing to grow. Late bad years happen on a portfolio that has already had decades of compound growth, so they sting less.
This is "sequence-of-returns risk," and it is why the famous "4% rule" for retirement uses 30 years of historical sequences rather than a single average. Monte Carlo simulates the same idea synthetically: by running thousands of random orderings, you see how often early-bad-year scenarios cause ruin even when the long-term mean return is fine.
Limitations to be honest about
- Assumes log-normal returns. Real markets have fatter tails — extreme moves are more frequent than the model predicts. The simulation under-estimates the probability of catastrophic losses. For institutional risk modeling, use a Student-t or GARCH model. The QuantOracle API exposes GARCH at
/v1/stats/garch-forecast. - Constant μ and σ. Real return distributions vary across regimes (bull, bear, high-vol, low-vol). The simulation treats them as fixed. For more realism, run multiple simulations under different regimes and weight the results.
- No correlations across assets. A single-asset model cannot capture diversification. For multi-asset portfolios, you would simulate each asset and combine using a correlation matrix.
- Garbage in, garbage out. Monte Carlo magnifies your input assumptions. If your expected return is too optimistic, every path will be too optimistic. Forward- looking returns are usually lower than historical — current consensus for US equities is closer to 6-7% real, not the 10% historical average.
Related calculators
For risk-adjusted return analysis on a known return series, use the Sharpe ratio calculator. For tail-risk estimation on historical returns, use the Value at Risk calculator. For optimal position sizing given an edge, use the Kelly criterion calculator.