I spent 3.5 years building a forex algo from scratch. Here are the stats, please critique me.
u/kurmulminecraft ·
Reddit — r/algotrading
· March 28, 2026 at 07:05
· ⬆ 76 pts
· 💬 183 comments
| View on Reddit ↗
AI Summary
Summary
A self-taught quant shares impressive 25-year backtest results for a forex algo trading EURUSD, GBPUSD, and EURGBP on the M15 timeframe.
The author's thesis is that their meticulously built and audited algorithm demonstrates exceptional historical risk-adjusted returns and robustness, though they seek critique to identify potential overfitting.
Quality assessment: Well-researched, data-driven backtesting with rigorous self-audit. However, it remains an unproven live strategy presentation, not a market analysis.
Score76
Comments183
Upvote %85%
▶ Full Post Text
Started building this at 16, self-taught, no institutional background. Just a lot of failed versions before this one.
Not posting the strategy. Just the numbers.
Three pairs — EURUSD, GBPUSD, EURGBP — M15. Fixed 1 lot, real spreads, $4 commission round-trip, 25 years of data (1999-2024). Zero missing candles.
Stats:
Win rate: 83.1%
Monthly win rate: 98.0% (296/302 months profitable)
Daily Sharpe: 7.78
Monthly Sharpe: 6.59
Sortino: 8.23
Profit Factor: 1.54
Max drawdown: $2,598
Drawdown recovery: 16 trading days
Zero losing years across 25 years
Worst year: +133.6% (2023)
Best year: +522.7% (2005)
Leverage 1:100
Lots: 1
Full audit done. Signal window uses candles\[window\_start:i+1\], entry always at confirmation candle close, SL checked before TP on same candle conflicts (conservative), commission deducted every trade.
I added spreads on the data, the spreads being:
EURUSD: 0.1p
GBPUSD: 0.3
EURGBP:0.5
Started live demo this week. Win rate 87.1%, profit factor 1.73, \~4% real gain in a geopolitically rough week. Too early to conclude anything.
Please do say if I missed any biases or anything I should look out for to make sure this data is not overfitted.
I even used AI to audit the code to make sure there were no biases or other cheats used that could inflate the stats.
please do critique me if you do want to ill use it to make my algorithm better.
AI was used in the making of this post because I am horrible at English(its my third language).