Product Updates

Introducing Prop Firm Sim: Know Your Odds Before You Pay the Fee

By Sean Mackey6 min read
Introducing Prop Firm Sim: Know Your Odds Before You Pay the Fee

Today we are releasing Prop Firm Sim, a fully open-source Monte Carlo engine that answers the one question every prop firm trader should ask before paying for an evaluation: what are my actual odds?

Pick a challenge, describe your trading (or upload your real trade history), and the engine plays ten thousand complete challenge journeys through that firm's exact ruleset. Out come the numbers that matter: your pass probability per phase and overall with confidence intervals, how many attempts and how much money to expect, expected value with every fee priced in, time to funding, and the probability a funded account ever collects a payout.

It runs in your browser, in your terminal, and inside your AI agent. It is MIT licensed, keyless, and collects nothing.

800 traced Monte Carlo equity paths over 70 trading days, with step targets as dashed lines and the median max-loss floor ratcheting upward beneath the paths
The hosted simulator tracing 800 of 10,000 simulated equity paths against the ruleset's actual moving loss floor. Under trailing rules you can watch the floor ratchet up beneath the paths.

Why Your Odds Are Worse Than You Think

Every prop firm calculator you have seen multiplies a win rate into a binomial formula. That number is wrong, and wrong in the house's favor, because the odds do not live in the profit target. They live in the exact mechanics of the loss rules.

"Trailing drawdown" is four different rules wearing the same headline number: a max loss that is static from the initial balance, one that trails end-of-day highs, one that trails peak unrealized equity intraday, and one that trails then locks at breakeven. The intraday variant, standard on futures evaluations, routinely cuts pass probability by a third versus the static rule at the same limit. A "5% daily loss" is four choices multiplied together: five percent of what, anchored to which day-start number, counting open P&L or not, checked live or only at the close. Same headline, different survivors.

And your trades come in streaks, while the naive math assumes they do not. Streaks are exactly what breach daily-loss and trailing rules, so the engine block-bootstraps your real trade sequence with its autocorrelation preserved. Every one of these semantics is encoded explicitly, with pen-and-paper examples in the documentation.

One Run, Every Number That Matters

Simulation results: the attempt verdict with pass, fail and timeout shares, then a KPI grid with per-phase pass rates, joint pass probability, net EV, payout probability, expected cost and stagnation
One run in the hosted simulator: verdict, per-phase and joint pass rates, EV with fees priced in, payout probability, and stagnation. Everything runs client side; nothing you enter leaves your browser.

Consistency rules are simulated, not footnoted: one outsized day raises your effective target. So is payout gating: winning-day minimums, profit buffers, per-payout caps. Results report the probability a funded account ever collects a payout and how long the first one takes, because getting funded is not the same as getting paid. Every result also reports stagnation, the longest stretch of days without a new equity high, because dead time is part of the price of surviving on low risk.

The Risk That Passes Is Not the Risk That Pays

Passing wants small risk, to survive the loss floors. Expected value wants more, because fees are fixed and payouts scale. The two maxima land on different risk sizes, and the engine sweeps the whole curve for you, reproducible with one command:

Risk sweep: pass probability and EV plotted against risk per trade, with the two maxima landing on different risk sizes
Pass probability and EV against risk per trade, from a realistic two-step ruleset. Pick your sizing by the objective you are actually optimizing.

Run It on Your Real Trades

Summary stats are a start. Timestamps are the truth. Real platform exports import directly: TradingView lists of trades, MT4 and MT5 statements including the HTML reports, MT5 deals tables, ThinkOrSwim account statements, plain timestamped CSVs, and broker trade history as JSON. Files that carry P&L but no risk data are refused until you state the risk you took per trade: R-multiples are computed, never fabricated.

With timestamps in hand, two more questions become answerable. The news filter replays your history with trades opened around scheduled releases removed and simulates both versions on the same seed, so you see exactly what avoiding news costs or saves you. And the portfolio overlap audit measures same-direction positions open at the same time across up to five strategies, exactly what a payout reviewer looks for in correlated accounts, before you find out the expensive way.

Avoiding news windows card: pass rate with all trades versus avoiding news, the delta in points, and the count of excluded trades and calendar events
The news filter compares your odds with and without trading around scheduled releases, on the same seed. Sometimes avoiding news costs you probability, and the card says so.

Open Source, and Fast

The entire engine is public, MIT licensed, and pure: no keys, no telemetry, no network required for the math. It simulates 10,000 complete challenge journeys in under a fifth of a second on a single CPU core, and the same seed reproduces the same numbers byte for byte, so every published result is verifiable.

GitHub LuxAlgo / prop-firm-sim

The open-source Monte Carlo engine for prop firm challenge simulation: pass probability, expected cost, EV, and optimal risk from a firm's exact ruleset.

TypeScript
--
--
View on GitHub ↗

Quick Start

Thirty seconds to your odds, straight from the terminal:

npx @luxalgo/prop-firm-sim-cli simulate \
  --firm ftmo --challenge 100k-2step \
  --winrate 0.48 --avg-win 1.6 --avg-loss 1 \
  --risk 1% --trades-per-day 4

Prefer a browser? The same engine runs client side in the hosted simulator, with precomputed reference odds per firm and challenge. Firm rules come live from LuxAlgo's public prop firm directory, keyless and read-only, and any ruleset can also be passed inline, fully offline.

Ask Your AI Instead

The whole engine is also served through the LuxAlgo MCP, free and keyless. Add one URL to Claude, ChatGPT, or Cursor and your agent can pull any challenge's exact rules and simulate your odds mid-conversation. Paste a trade export and ask: "Here are my last 200 trades. What are my odds on this 100K two-step challenge, and what risk size should I run?" It answers with the exact rules and confidence intervals, and every result carries its assumptions.

Distributions, Never Promises

Simulation is not prediction, and we built the honesty in as architecture. Every result ships with the full list of assumption flags: what the engine simplifies, and any rules a ruleset declares that are not simulated. Rule data from the directory follows a strict policy: structured rule columns are used verbatim, free text is inferred only when one reasonable reading exists and every inferred field is disclosed, and ambiguity is refused rather than guessed. The data is data, not endorsement: no rankings, no offers, and no affiliate anything in any simulation result. Firms change rules without notice, and the firm's own page is always authoritative.

What's Next?

Prop Firm Sim joins PineTS, the Library, and a growing set of LuxAlgo open-source projects being wired into one ecosystem your AI can work with. More of it is on the way, and the connection between your real broker data and this engine is only getting tighter. We cannot wait to show you what is coming next.

Simulate your own odds: luxalgo.com/prop-firms/futures

Star and verify the engine: github.com/LuxAlgo/prop-firm-sim

Connect your AI: mcp.luxalgo.com


Disclaimer: Simulation, not prediction. Results are Monte Carlo distributions under stated assumptions and the encoded ruleset, not financial advice and not a guarantee of passing any challenge. Firms change their rules; each firm's own published pages are always authoritative. TradingView® and Pine Script® are registered trademarks of TradingView, Inc. LuxAlgo has no affiliation with, and its independent open-source or proprietary products, tools, and services are not endorsed, sponsored, or certified by TradingView, Inc.

Learn to trade with AI.

Market analysis and AI techniques that build your edge, one email a week.

Don’t worry, no spam here. See our privacy policy for more info.

Read next