Lab note · 008 · 31 Oct 2026

1,470 free EAs, one harness: 79% of them never closed a single trade.

Every file below was compiled from source, then run on the same EURUSD chart, over the same 32 months, at the same spread, each on its own $10,000 account. 1,430 produced a usable log. Of those, 707 never opened a position and 428 opened positions and never closed one. That leaves 295 files with a realised profit and loss statement at all — and 65.8% of those are in profit. The rest of this page is about that 65.8%.

EURUSD  ·  H1  ·  Feb 2024 – Oct 2026  ·  $10,000 per file  ·  17-point spread  ·  every tick modelled  ·  all 1,430 rows as CSV
79.4%
never closed a trade in 32 months
295
files that did close at least one
65.8%
of those ended in profit
35.7%
still in profit once the book is closed 1:1

1 · What the counter actually says

Two counters per file: positions opened, positions closed. Everything else on this page is a consequence of the gap between them.

StageFiles Share
In the batch1,470100%
Produced a usable log (40 runs timed out and are excluded)1,430100%
Never opened a position70749.4%
Opened positions, never closed one42829.9%
Closed at least one position29520.6%

The first line is the one worth sitting with. 707 files, three years of history, a live spread, and not one position. That is not the same as broken: an EA that filters for a session, a symbol suffix or a volatility regime that this chart never produced will sit still for years and look perfectly healthy in the terminal. It is the most common explanation for the email that says “my EA is not trading” — and it is not a setting you can see from outside.

The second line is stranger. 428 files opened positions and closed none of them: 1225_TheStratUr (43,205) · 0923_2 (16,755) · 1667_new (15,624) positions in the three worst cases. They are not “still open” in any useful sense. An EA that has opened 43,205 positions and closed zero has no exit logic that fires on this chart, only an entry logic that never stops.

2 · The accounting rule that flips the sign

The 295 files that closed something, sorted by how much of what they opened they actually closed.

Share of positions closedFiles “Profitable” Median realised P&L
0–20%14489.6%+$5.23
20–50%2941.4%−$17.68
50–95%3056.7%+$509
95–100%8435.7%−$261

Read the first and last rows together. The files that closed under 20% of what they opened are 89.6% profitable, with a median of +$5.23. The files that closed 95–100% of what they opened are 35.7% profitable, with a median of −$261.

Nobody is lying, and no figure here is fabricated. It is a counting rule. A position that is still open has no realised P&L, so the only P&L an EA can report is the one from the trades it chose to close. An EA that closes winners and holds losers produces a spotless statement with a growing hole behind it. The median +$5.23 is not a return — it is the average amount of money these files were willing to take, on the trades they agreed to end.

This is also why “my backtest shows +300%” and “my account is down” coexist. The statement and the terminal are describing two different books. The only comparable number across files is the one where the two books match: 84 files closed between 95% and 102% of what they opened.

3 · The aggregate, which is the point

Treat the 295 files that closed a trade as 295 separate accounts of $10,000 each: $2,950,000 in, $2,820,017 out. A net $129,983 gone, over 32 months, on one symbol, at one spread.

The distribution is what makes that number easy to miss. p10 is −$6,112, the median is +$5.23, p90 is +$2,521. The typical file does not lose money in a dramatic way. It finishes within a rounding error of where it started, which is exactly what a small negative expectancy plus a spread looks like over two and a half years. The destruction is concentrated in the left tail: a handful of files lose several times their deposit, and the rest are noise.

4 · Four tells, counted

Among the 723 files that opened at least one position.

BehaviourFiles Share
Margin call at some point7210.0%
Five or more distinct lot sizes (adds to positions)37151.3%
20+ positions opened, under 20% of them ever closed49067.8%
Win rate 99% or higher over 10+ closed trades111.5%

Lot sizes are the cleanest of the four. 51.3% of these files use five or more distinct lot sizes, which means the position size is a function of the position count — grid, martingale or averaging down, whatever the vendor calls it. One file in the batch cycles through 1,413 lot sizes and reaches 141.3 lots on a $10,000 account. These are not strategies with a risk setting; the sizing is the strategy.

The same warning shows up as a win rate. 11 files report 99% or better over ten or more closed trades. The ones I opened to check were doing the same thing: closing the winners, holding the losers. A 100% win rate is not a skill, it is a definition — it describes which trades you agreed to end.

FileOpened ClosedLot sizes Win rateRealised
1161_Ilan-Trio_V1.491,9940100%−$58,952
0373_V1.4.06025748334%−$4,902
1089_Pin_Bar_Trader2,48403060%−$0.92
0145_Ilan_RSI12,473070%+$0.00
1173_Turbo-profit_v.3.09803541100%+$3,180
← swipe the table for the rest of the columns

A negative realised figure larger than the deposit means the file borrowed against the account: 1161 held positions until the broker closed them. It never reported a loss, because nothing it closed lost money.

5 · What actually survived

Apply the four screens that matter — closed 95–100% of what it opened, at least 30 closed trades, positive, no margin call, a fixed lot — and 1,430 files produce 12 line items. Collapse duplicates by trading fingerprint and it is 7 distinct strategies:

FileOpen/Close Win rateRealised P&L Max lotNote
0037_RSI_Power_Maximum_v2.0361/5869.0%+$5,8740.1
1153_ScalperV3_week2_trial140/13951.8%+$2,4640.4
0278_Moving_Average730/72928.1%+$7200.25 copies of one file
1572_Eugene32/3237.5%+$5680.1
1670_gridderea_v1.8060/5998.3%+$1190.01
0111_milestone-3.079/7991.1%+$84.700.022 copies of one file
0349_RSI_Scalper_XAUUSD74/7248.6%+$7.930.01
← swipe the table for the rest of the columns

Two cautionary rows in there. Five differently-named files run identically — 730 opens, 729 closes, the same 28.1% win rate and the same $719.8 — because they are the Moving Average sample shipped with MetaTrader, re-uploaded. And 0111 / 0112 are two versions of one strategy with identical trade sequences. A pile of 1,470 files is not 1,470 ideas; deduplication is part of reading it.

That leaves one file I would spend money on, and it comes with a caveat that is bigger than its return. 0037_RSI_Power_Maximum_v2.03 closed 58 trades at 69%, +$5,874 on $10,000, +58.7%. It also has stoploss=0, and it finished the test holding three losing positions that the tester force-closed after the period ended: −$892.4 that never reached the realised column. Charged properly, it is +49.8% over 32 months, not +58.7%, with a 13.9% balance drawdown that looks small precisely because the losses were not in the balance.

6 · Method, and what this page does not prove

These are the same files, and the same harness, as lab note 005 — but a different batch. 5,403 ready-made .ex4 files were downloaded; the terminal silently fell back to its built-in sample for all but about a hundred of them, so the rest were recompiled from source: 2,678 compiled, of which 1,470 are testable and all 1,470 are reported here. Every figure on this page is recomputed by tools/c3_analysis.py from c3.csv: opens, closes, win rate, lot levels, stop-outs and realised P&L per file.

What it does not prove: realised P&L is rebuilt from the tester log, not read from an account statement, so it excludes commission and swap and it drifts from the official figure in exactly the cases where a file holds positions into a margin call. That is why this page reports medians and counters rather than an average return. It also covers one symbol, one timeframe, one 32-month window and default inputs. Change the symbol and half of the 707 may start trading — which is the next test, not this page.

The one thing worth carrying away: before you judge any statement, ask what share of positions it closed. 65.8% of these files look profitable and 35.7% are, and the difference between those two numbers is entirely a matter of which trades they were willing to end.

The next batch, as it finishes. One note when a batch is done: what was tested, what failed, and the number that decided it. No product offers, no “top 10” roundups, no affiliate mail.