AI & Quantitative6 min readUpdated Mar 2026

Monte Carlo Simulation

A computational technique that runs thousands of randomized scenarios using historical data to model the range of possible outcomes for a trading strategy or portfolio.

See Monte Carlo Simulation in real trade signals

Tradewink uses monte carlo simulation as part of its AI signal pipeline. Get signals with full analysis — free to start.

Start Free

Explained Simply

Monte Carlo simulation answers the question: "Given the historical characteristics of my strategy, what could realistically happen in the future?" It works by: taking your strategy's historical trade distribution (win rate, average win/loss, trade frequency), randomly sampling trades thousands of times to create synthetic equity curves, and analyzing the distribution of outcomes. Key outputs include: probability of reaching a target return, expected worst-case drawdown at various confidence levels (e.g., "95% of the time, max drawdown stays below 25%"), probability of ruin (account hitting zero), and optimal position sizing. Unlike simple backtesting, Monte Carlo captures the effect of trade sequencing — two strategies with identical stats can have wildly different drawdown profiles depending on whether losses cluster. It's particularly valuable for stress-testing position sizing rules: "If my worst losing streak is 2x longer than historical, does my account survive?"

How Monte Carlo Simulation Works in Trading

Monte Carlo simulation tests trading strategies by running thousands of randomized scenarios using your historical trade data:

Step 1 — Collect trade history. Gather your strategy's historical trades: each trade's return (win or loss percentage), holding period, and any other relevant parameters. You need at least 100 trades for meaningful results.

Step 2 — Random sampling. The simulation randomly selects trades from your history (with replacement) to create synthetic sequences. Each run might pick different trades in different orders — one run might cluster your worst trades together, another might alternate wins and losses evenly.

Step 3 — Build equity curves. Each random sequence generates an equity curve showing how the account would have grown (or shrunk). Run 1,000-10,000 of these simulations to create a distribution of possible outcomes.

Step 4 — Analyze the distribution. From the thousands of equity curves, calculate: median final account value, worst-case drawdown at 95th percentile, probability of reaching your target return, probability of ruin (hitting a catastrophic loss), and the range of possible outcomes.

Why randomize? Your actual trade history happened in one specific order. But it could have happened differently — the same trades in a different sequence produce different drawdowns and different emotional experiences. Monte Carlo reveals what could have happened, not just what did happen. A strategy that showed a 15% max drawdown in backtesting might show a 95th percentile drawdown of 30% in Monte Carlo — meaning there was a 5% chance of a much worse experience than the historical backtest showed.

Key Monte Carlo Outputs for Traders

Drawdown distribution: The most valuable output. Instead of knowing your historical max drawdown was 20%, Monte Carlo tells you: 50th percentile drawdown is 15%, 75th percentile is 22%, 95th percentile is 32%, and 99th percentile is 45%. This reveals the realistic range of pain you should expect. If the 95th percentile drawdown exceeds what you can tolerate, reduce position size.

Risk of ruin probability: What percentage of simulations result in the account hitting a defined ruin level (e.g., 50% loss)? A strategy should show risk of ruin below 1% at your planned position size. If Monte Carlo shows 5% risk of ruin, you are sizing too aggressively.

CAGR distribution: The range of possible compound annual growth rates. A strategy's median CAGR might be 25%, but the 10th percentile might be 5% and the 90th percentile 50%. This tells you how variable your returns could be.

Optimal position sizing: Run Monte Carlo at different position sizes (0.5%, 1%, 2%, 5% risk per trade) and compare the risk/return tradeoffs. Typically, there is a sweet spot where increasing size improves returns rapidly, then a point where further increases barely improve returns but dramatically increase ruin risk.

Strategy comparison: When choosing between two strategies, compare their Monte Carlo distributions rather than their single backtest results. Strategy A with better median returns but worse 95th percentile drawdown may be inferior to Strategy B with lower median returns but tighter drawdown distribution.

Limitations and Best Practices

Limitation 1 — Assumes stationarity. Monte Carlo assumes your future trades will have similar characteristics to historical ones. If market conditions change (different volatility regime, new regulations, structural market changes), the historical distribution may not predict the future. Always combine Monte Carlo with regime analysis.

Limitation 2 — Ignores trade dependency. Standard Monte Carlo treats each trade as independent. In reality, trades may be correlated — losing trades often cluster during unfavorable market conditions. Bootstrapped Monte Carlo (sampling blocks of consecutive trades rather than individual trades) partially addresses this.

Limitation 3 — Garbage in, garbage out. If your backtest is overfitted (too many optimized parameters, look-ahead bias, survivorship bias), Monte Carlo on those results will produce meaningless optimism. Clean backtest data is essential.

Best practices:

  • Minimum 200+ trades for reliable Monte Carlo analysis. Fewer trades produce unstable distributions.
  • Run 5,000+ simulations for smooth distributions. 1,000 is a minimum; 10,000 is ideal.
  • Focus on the 95th percentile drawdown, not the average or median. Your risk management should handle the bad scenarios, not the average ones.
  • Re-run quarterly as new trade data accumulates. Your trade distribution changes over time.
  • Test different position sizes to find the optimal balance between growth and ruin risk. The Kelly Criterion gives a theoretical optimum; Monte Carlo validates it empirically.
  • Compare forward Monte Carlo vs realized results. If your actual drawdowns exceed the 95th percentile from Monte Carlo, either your strategy has degraded or the simulation assumptions were wrong.

How to Use Monte Carlo Simulation

  1. 1

    Define Your Trade Distribution

    Gather your actual trading statistics: win rate, average win, average loss, and standard deviation of wins and losses. These define the probability distribution from which the simulation will randomly sample trades.

  2. 2

    Run the Simulation

    Simulate 1,000-10,000 random sequences of trades using your statistics. Each sequence represents a possible future equity curve. Each simulated 'trade' is randomly drawn from your win/loss distribution. Use Python (numpy/scipy), Excel, or a Monte Carlo tool.

  3. 3

    Analyze the Distribution of Outcomes

    Plot all simulated equity curves. You'll see a range of possible outcomes — from best case to worst case. Calculate the median outcome, the 5th percentile (worst 5% of scenarios), and the 95th percentile (best 5%). The spread shows the range of luck in your trading.

  4. 4

    Estimate Maximum Drawdown Distribution

    For each simulated sequence, record the maximum drawdown. The median max drawdown is your expected worst-case. The 5th percentile max drawdown is the 'really bad luck' scenario. Use this to set your max drawdown limit — it should accommodate the 5th percentile.

  5. 5

    Determine Risk of Ruin

    Count how many simulations end below your 'ruin' threshold (e.g., 50% account decline). Divide by total simulations to get the probability of ruin. If risk of ruin exceeds 5%, reduce your per-trade risk until it drops below 1%. This is the most important output of Monte Carlo analysis.

Frequently Asked Questions

What is Monte Carlo simulation in trading?

Monte Carlo simulation runs thousands of randomized scenarios using your historical trade data to model the range of possible outcomes. Instead of relying on a single backtest result, it shows you the probability distribution of returns, drawdowns, and risk of ruin. By randomly reordering your trades, it reveals how trade sequencing affects outcomes and helps you understand the realistic range of what could happen with your strategy.

How many simulations should I run?

Run at least 5,000 simulations for reliable results. 10,000 is ideal for smooth distributions. With fewer than 1,000 simulations, the percentile estimates (especially the tails — 95th and 99th percentile) will be unstable and unreliable. More simulations always produce better estimates but with diminishing returns beyond 10,000.

Can Monte Carlo replace backtesting?

No — Monte Carlo complements backtesting, it does not replace it. Backtesting validates that a strategy has a historical edge. Monte Carlo stress-tests that edge by showing the range of possible outcomes and worst-case scenarios. A strategy should pass both: a profitable backtest showing consistent edge, AND a Monte Carlo analysis showing acceptable drawdown and risk-of-ruin distributions at your planned position size.

How Tradewink Uses Monte Carlo Simulation

Tradewink's backtesting engine uses Monte Carlo analysis to stress-test strategies beyond their historical sample. When evaluating a strategy, the system runs 1,000+ randomized trade sequences to calculate the probability distribution of returns and drawdowns, informing both strategy selection and position sizing decisions.

Trading Insights Newsletter

Weekly deep-dives on strategy, signals, and market structure — written for active traders. No spam, unsubscribe anytime.

Related Terms

Learn More

See Monte Carlo Simulation in real trade signals

Tradewink uses monte carlo simulation as part of its AI signal pipeline. Get daily trade ideas with full analysis — free to start.

Enter the email address where you want to receive free AI trading signals.