Skip to content
Free TradingApp

Monte Carlo Calculator

Reshuffle a strategy's real trade history thousands of times and see the range of outcomes those same trades could plausibly have produced.

TradingApp
EP_MonteCarlo
Requires
TradeStation Desktop
Install
Single .eld import

EP_MonteCarlo

Single .eld file. Import into TradeStation Desktop via File → Import.


1. What This Tool Does

EP_MonteCarlo is a free, standalone TradeStation TradingApp that stress-tests a strategy's real trade history by reshuffling it thousands of times and showing you the range of outcomes that same set of trades could plausibly have produced — not just the one path your backtest happened to walk.

Feed it a strategy (or an existing trades export) and it hands back a fan chart of simulated equity paths, a Max Drawdown histogram, and a P5/P50 percentile grid — so you can see how rough the ride could have been, not just how it actually went.

Trades in → shuffle thousands of times → fan chart + drawdown distribution + percentile grid

For the underlying methodology — what Monte Carlo analysis is, whole-trade shuffle vs. Bootstrap, and exactly how every number on screen gets calculated — see the companion doc: Documentation\Tutorials\Monte Carlo 101.md. This guide covers the tool's controls and workflow; that one covers the math.


1.1 Who Is This For

Built for anyone running a systematic strategy in TradeStation who wants an honest answer to "how much of my backtest's result was good sequencing, versus something I should actually expect could happen again?" It's useful whether the strategy is your own or one you're evaluating from someone else — the tool works from either a strategy TradeStation can run, or a trades file you already have.

You do not need to be a programmer. Everything is point-and-click. The only prerequisites are TradeStation itself and either a compiled strategy or an existing trades CSV.

1.2 How It Fits Into Your TradeStation Workflow

EP_MonteCarlo is a stand-alone TradingApp — no chart required, and no dependency on the paid EdgeProof app. Open it from TradeStation Apps like any other TradingApp; it stays available for the life of your session.


2. Installation

  1. Import (double-click) EP_MonteCarlo.eld.
  2. In any Workspace, go to the TradeStation Apps and click on EP_MonteCarlo.

That's it — there's no separate installer, no working-folder setup, and nothing to configure before first use.


3. Quick Start

If you already have a trades file (an EP_TradesRecorder-format CSV, or any export with TradePnLNet/CumNetPnL/Drawdown columns):

  1. Click Browse and select it.
  2. Click Start Monte Carlo.

If you're starting from a strategy instead:

  1. Fill in Symbol, Interval, and pick a Strategy from the dropdown.
  2. Set Contracts, Last Date, Days Back, Commission, and Slippage.
  3. Click Create Trades File — runs the strategy once and captures its trades. This returns immediately; watch the Messages box for "Trades file created."
  4. Once Start Monte Carlo lights up, click it.

Either path lands you in the same place: a fan chart, a drawdown histogram, and a metrics grid.


4. Field Reference

4.1 Symbols & Strategy

Only used on the auto-generate path (§3, second flow) — ignored entirely if you Browse an existing trades file instead, since a trades file already has everything it needs baked in.

FieldWhat it does
Symbol / IntervalThe market and bar interval to run the strategy on. Typing into either one enables Create Trades File and clears any Browsed selection (the two input modes are mutually exclusive).
Strategy dropdownEvery strategy currently compiled in TradeStation. The strategy runs with its own currently-saved input values — this tool doesn't sweep or optimize inputs, it runs one pass and captures the resulting trades.

4.2 Trade Size & Costs

FieldWhat it does
ContractsPosition size for the auto-generated run.
Commission / SlippageDollars per contract / per side, applied per trade — the only costs mode this tool supports.

4.3 Data Settings

FieldWhat it does
Last DateEnd date of the history window the auto-generated run uses.
Days BackHow much trading history to load, in trading days (not calendar days).

Out-of-Sample Settings (Exclude % first/last) is not currently wired up. It's visible on the form but has no effect on the run — every auto-generated trade file uses the full history window, with no holdout. Ignore this section for now.

4.4 Trades File

ControlWhat it does
BrowsePick an existing trades CSV. Loads it immediately and enables Start Monte Carlo. Clears Symbol/Interval/Strategy if any were filled — Browse and auto-generate are mutually exclusive.
Create Trades FileRuns the strategy specified in §4.1 once, via a companion recorder that captures every trade regardless of what the strategy itself does with files. Returns immediately — no waiting, no frozen window. Watch Messages for confirmation.
Start Monte CarloRuns the simulation and renders the results. Only enabled once trades are actually loaded, either from Browse or from a completed Create Trades File run.

4.5 Monte Carlo Settings

FieldWhat it does
IterationsHow many times the simulation reshuffles the trades. Higher = smoother, more reliable percentile estimates, at the cost of a longer run. The tool automatically scales this down for very large trade counts so a single run stays fast regardless of file size — you may see fewer iterations actually run than requested on a big trades file; that's expected, not an error.
Fan Sample CountHow many of those iterations get their entire equity path drawn on the fan chart, rather than just contributing to the percentile stats. More lines = a fuller picture of path variety, at some cost to chart clarity.
Bootstrap resampling checkboxSwitches simulation mode — see §6. Unchecked (default) = Shuffle.

5. Reading the Results

5.1 Equity Chart

The blue line is your strategy's real equity curve, from its actual trades in their actual order. Every other line is the same trades, reshuffled — colored green-to-red by how severe that particular reshuffle's own drawdown was, relative to the mildest and worst seen this run. A chart full of green with only a few streaks of red is a much better sign than one that's mostly orange/red.

Under Shuffle mode, every line converges to the same final value as the blue line — only the path there differs. Under Bootstrap mode, endpoints vary too (see §6).

5.2 Max Drawdown Histogram

How deep the worst drawdown got, bucketed across every simulated iteration (not just the sampled fan lines) — the fuller picture behind the P5/P50 numbers in the grid below.

5.3 Metrics Grid

ColumnMeaning
ActualThe real, unshuffled result from your actual trade sequence.
P5Only 5% of simulated iterations were worse than this — a tail-risk read, usually the more important number for sizing decisions than the median.
P50The median simulated outcome — half of all iterations were worse, half better.
RowNotes
Net ProfitUnder Shuffle, Actual/P5/P50 always match exactly — that's expected (the trades are the same, order doesn't change their sum), not a bug. Under Bootstrap, these genuinely differ — see §6.
Max DrawdownThe row the whole tool exists to stress-test. Genuinely varies by iteration under both modes.
Win RateAlways matches across Actual/P5/P50, in both modes — which trades won or lost doesn't depend on order, and Bootstrap still draws from the same pool of win/loss outcomes.

5.4 How to Read This

The panel to the right of the grid repeats the essentials above in plain language, for anyone opening the tool without this guide in hand.


6. Shuffle vs. Bootstrap Resampling

Two different questions about the same trade history:

  • Shuffle (default, unchecked) — every trade is used exactly once, just reordered. Answers: "if these same trades had landed in a different sequence, how much rougher could the ride have been?" Net Profit is mathematically fixed across every iteration; only the drawdown path varies.
  • Bootstrap (checked) — each iteration draws trades at random with replacement from the same pool, so a trade can be picked multiple times, or not at all. Answers a broader question: "if I only got to sample from this same population of trade outcomes, how much could my total result itself have varied?" Net Profit genuinely varies here too, not just drawdown.

Shuffle is the more standard, conservative read and stays the default — switch to Bootstrap when you specifically want to see result variability, not just path/drawdown variability.


7. Tips & Troubleshooting

Browse and auto-generate are mutually exclusive, not additive. Filling Symbol/Interval clears a Browsed file; Browsing a file clears Symbol/Interval/Strategy. Pick one path per run.

"Create Trades File" returns immediately — that's by design, not a hang. The strategy run happens in the background; watch the Messages box and Progress bar, and wait for "Trades file created" before expecting Start Monte Carlo to light up.

Fewer iterations than requested on a very large trades file is expected, not an error — see §4.5. The tool automatically scales down to stay fast regardless of trade count.

Generated trades files are scratch, not permanent. Files created via Create Trades File are deleted automatically when the tool closes (and any stray leftover from a crash is swept on the next launch). If you want to keep a generated trades file, copy it elsewhere before closing the tool. A file you Browsed to yourself is never touched or deleted.

Common issues:

  • Start Monte Carlo stays grayed out — no trades are loaded yet. Either Browse a file or complete a Create Trades File run first.
  • Grid shows 0.00 across the board — the trades file doesn't have the expected TradePnLNet/CumNetPnL/Drawdown columns (or their header names don't match). Only EP_TradesRecorder-format files, or files following that same column naming, are supported.
  • "Strategy run failed" in Messages — check the Print Log for the underlying TradeStation error; usually a data or symbol/interval issue with the auto-generate run itself, not this tool.

TradeStation®, EasyLanguage®, and PowerEditor® are registered trademarks of TradeStation Technologies, Inc. EdgeProof is an independent entity and is not affiliated with, endorsed, sponsored, or certified by TradeStation Technologies, Inc. or any of its affiliates. Nothing here is trading advice.

Stay in the loop

Get new tools as they ship

One short email when a new free TradingApp or a major EdgeProof update is released. No noise, unsubscribe any time.

We only use your address for these updates. See the Privacy Policy.