⚡ BACKTESTING LAB

? How it works
Test your strategies against real historical data. Monte Carlo simulation reveals true edge vs. luck.
Results
Trades
Monte Carlo
Compare
Optimize
History
Running backtest...
📊

Select a strategy, date range, and symbol above, then hit RUN BACKTEST to see results.

📋

Run a backtest to see the individual trade log.

🎲

Click MONTE CARLO to run 500 randomized iterations and see the probability distribution of outcomes.

Click COMPARE ALL to run all saved strategies on the same data and rank them head-to-head.

🧬

Click OPTIMIZE to sweep parameter combinations and find the best settings for your strategy.

🕒

No backtest history yet. Run some backtests and they'll appear here.

✦ How backtesting works ×

Replay a strategy bar-by-bar over real history, count the trades it would have taken, and judge the result on whether the edge is real — not just one lucky run.
Strategy Historical bars Simulate trades Metrics Monte Carlo
Win rate
Share of simulated trades that closed green. Not edge on its own.
Profit factor
Gross profit ÷ gross loss. Above 1 profitable; 1.5+ is strong.
Expectancy
Average $ per trade you'd expect over time — the core "worth trading?" number.
Sharpe / Sortino
Return per unit of risk. Sortino only counts downside risk — the kinder, truer one.
Max drawdown
Worst peak-to-trough dip. How much pain the curve put you through.
R-multiple
Profit measured in units of the risk taken. +2R = twice what you risked.
Monte Carlo
Reshuffles the trade order hundreds of times to show the range of outcomes — luck vs. real edge.
Percentiles
The 5th/median/95th outcomes from those reshuffles. Judge on the pessimistic tail, not the best case.
What to do: pick a strategy + date range and Run. Read Profit Factor and Expectancy first — then the Monte Carlo spread: a tight, mostly-positive distribution means a real edge; a wide one that dips negative means you may be looking at luck.