This is the classic
three-chart build of the lab, kept online by request.
Latest version →
Prop Firm Lab v1
Build any prop account from its rules, plug in your trading, and watch
thousands of lifecycles play out in Monte Carlo. Money only counts when a payout clears.
Your edge does not have to be a static number — give it a range and let it
drift, because no real edge stays constant.
The account's rules
Pick a preset or set the rules yourself.
Static drawdown: the floor never moves. Trailing:
the floor stays one drawdown below your highest balance -- EOD ratchets it up only from
end-of-day highs (touching it intraday still busts you); intraday ratchets it from every
tick, so open-trade peaks count against you. Buffer: you must be up one full drawdown
amount before payouts start counting.
Your process
Advanced: edge is a low-high range, not one number
inputs changed -- hit Generate to refresh
The lifecycle
Every line is one account: eval (if on), then the funded grind, then
payouts. The line only ends three ways: live, busted, or out of days.
on the wayfailed evalreached livebusted fundedpayout paid25-75% and 10-90% bands
% Reached Live
--
hit Generate to simulate
ROI per $ Spent
--
payouts collected vs the account cost
Days to First Payout
--
among accounts that got paid at all
Across many accounts
Size sweep
Same rules, same edge, nine position sizes. Bigger is faster; the best
expected value usually sits in the middle.
Days to first payout vs position size
ROI vs position size
Days to payout vs ROI
one dot per position size, $ labels = risk per trade at the curve ends
hit Generate to run the sweep
How it works: your risk, reward-to-risk, win rate and trades per day become a daily P&L
distribution. Each account is simulated with 20 intraday checks per day; barriers that
are fixed within a day (static, and EOD-trailing floors) get Brownian-bridge crossing
corrections, an intraday-trailing floor is checked tick-by-tick at every step. EOD
trailing ratchets the floor up from each day's closing balance; a breach is still
checked continuously during the day. Intraday trailing ratchets from every equity high,
including open-trade peaks.
In Advanced mode, win rate, reward-to-risk and trades per day are drawn from your
low-high ranges. Normal treats low and high as -1 and +1 standard deviation around the
middle, so about one draw in three lands outside the range (clipped only at physical
limits). Random draws land uniformly between the two edges. "Drifts slowly" makes each
day's edge a mean-reverting step from yesterday's with roughly a two-week memory, so you
get good weeks and bad weeks instead of pure day-to-day noise; "Fresh daily" redraws
independently every day; "Per account" draws once and holds it for the whole lifecycle.
The three parameters drift independently. In "% of DD left" sizing, risk scales with
your remaining cushion but is floored at your minimum risk per trade -- you cannot trade
less than 1 MES or 1 MNQ, so accounts near the floor keep taking real risk and can
actually bust instead of shrinking forever. After each payout the balance drops by the
payout amount and a trailing floor resets to the new balance. ROI counts only cash
actually paid out at your split -- a live account's future value is NOT priced in, so
live-heavy setups are worth more than the ROI shows. Not modeled: commissions, slippage,
gaps, daily loss limits, consistency rules, payout waiting periods. Real results run
worse than this toy. Educational only, not financial advice.