The Honest EA Test: 10 checks to run before you trust any Expert Advisor (free guide)

13 November 2026, 16:19
Cesar De Los Reyes Sanchez
0
13

An Expert Advisor (EA) is only a piece of code that follows rules. A beautiful equity curve in a screenshot tells you almost nothing: it can be the result of a good idea, but it can just as easily be the result of tuning the settings until the past looked perfect, of unrealistic costs, or of a handful of lucky trades.

This guide gives you ten practical checks. You can run all of them yourself with the free MetaTrader 5 Strategy Tester and a demo account. They apply to any EA: mine, yours, or one you are thinking of buying. An EA that survives these checks is not guaranteed to make money - nothing is - but you will know what you are actually trading and how much you can lose.

Risk notice: trading leveraged products involves a high risk of loss. This post is educational material only; it is not financial advice.

The rule behind everything: your job is not to prove that an EA works. It is to try hard to break it, before the market does it with your money.

1. Can you explain the idea in one sentence?

Before any test, write down in one sentence why the EA should make money. Examples of a clear idea: "it trades the breakout of the Asian range", "it follows the daily trend after a pullback", "it sells JPY pairs at a fixed time on days when Japanese companies settle payments". If the answer is "it uses an AI algorithm" or "a secret formula", you cannot judge whether the behaviour you see is normal or broken. An idea you can explain is also an idea you can monitor: when the EA starts doing something that does not fit the sentence, you notice.

Your action: write the sentence on paper. If the product page does not let you write it, ask the author.

2. Test with real ticks, not just bars

In the Strategy Tester, the modelling option "Every tick based on real ticks" replays the ticks your broker actually delivered. The cheaper options ("1 minute OHLC", "Open prices only") invent what happened inside each bar. For a strategy that enters at a precise time, or uses tight stops, this difference can be the whole result. Real-tick tests are slower and need history downloaded first. That is the price of a test you can believe.

Your action: use "Every tick based on real ticks" and make sure the history for the whole period is downloaded.

3. Put the real costs in the test

Spread, commission, swap and slippage are not details. For a strategy with small targets they can erase the edge completely. Use the spread and commission of the account type you will really trade, not a zero-cost demo. In the tester, set a delay (the "Execution" option, for example a random delay) so orders do not fill instantly at the perfect price. Then look at what happens when the spread is double its normal value. A robust idea survives a worse day than the average one.

Your action: run the same test twice: with normal costs and with spread and slippage clearly worse. Compare.

4. Count the trades, not the profit

A result built on twenty trades says very little. Luck dominates small samples. As a rough rule of thumb, the more trades, the more a result tells you; a few hundred is much more informative than a few dozen. If the strategy trades rarely (for example only a few days per month), test a longer period instead of trusting a short one. Also look at how the profit is distributed: if removing the three best trades turns the result negative, you do not have a strategy, you have three lucky trades.

Your action: note the number of trades and the result without the 3 best trades.

5. Keep part of the history for a second look (out-of-sample)

Optimising settings on the whole history and then admiring the result is the most common way to fool yourself. A fairer procedure: choose and tune the settings on one period (say 2019-2022), then test them untouched on a period the EA has never seen (2023 onwards). If the second period is dramatically worse, the settings were fitted to the past. If it is roughly in the same family of results, that is a good sign - not a proof.

Your action: split the history in two. Tune on the first, judge on the second. Never go back and re-tune because the second looked bad.

6. Shake the settings

Take the main inputs (stop loss, entry time, filter values) and change each one by 10-20% up and down. A robust EA changes its results gradually. A fragile one has a single magic value that works and collapses next to it: that is the signature of curve fitting. A map of results for neighbouring values (a plateau, not a spike) is a much better sign than one spectacular optimum.

Your action: if a tiny change in one input flips the result from good to bad, do not trust the good result.

7. Look at the drawdown before you look at the profit

Ask a different question: "How much can I lose, for how long, and could I keep going?" Read the maximum drawdown (in % of the account) and the longest losing streak. A strategy with a profit you like and a drawdown you cannot stomach will be switched off at the worst moment, turning a temporary loss into a permanent one. Remember that the worst drawdown of the past is not a limit for the future. The next one can be larger than anything in the test.

Your action: decide your maximum acceptable loss in advance. Size the risk per trade so the tested worst case stays below it, with a margin.

8. Change symbol, period and broker

If the idea is real, it should not live only on one chart. Test neighbouring symbols that share the logic, and other time periods. A time-based EA is especially sensitive to the broker's server time: check the broker's GMT offset and daylight saving rules, because an entry that is one hour off is a different strategy. Run the test on a second broker's data if you can. Large differences point to data quality, not to the market.

Your action: check the server time of your broker against the time the strategy needs, in summer and in winter.

9. Forward test on demo, then small on live

The tester shows the past. The only test that cannot be fitted is the future. Run the EA on a demo account for several weeks (longer if it trades rarely) and compare the real behaviour with what the backtest said for the same dates: same trades? same times? similar costs? When you go live, start with the smallest size you can. The goal of this phase is to discover surprises about execution while they are cheap.

Your action: keep a simple log: date, what the backtest expected, what happened. Differences are what you are looking for.

10. Build the safety net before you need it

Every serious EA, however good the idea, should run inside risk limits that do not depend on the EA being right: a maximum risk per trade, a maximum loss per day, a maximum drawdown at which everything stops, and a way to stop trading automatically when the limit is hit. Decide these numbers on a quiet day, not in the middle of a losing streak. If a limit is reached, the right action is to stop and review, not to increase the size to "win it back".

Your action: write down your three limits (per trade, per day, total) and use a tool or a rule that enforces them.

The one-page checklist

  1. I can explain the idea in one sentence
  2. Tested with real ticks over a long period
  3. Realistic spread, commission, delay and slippage
  4. Enough trades; result without the 3 best trades
  5. Second period tested without re-tuning
  6. Neighbouring settings give similar results
  7. Maximum drawdown and losing streak are acceptable to me
  8. Other symbols / periods / server time checked
  9. Demo forward test compared with the backtest
  10. Risk limits per trade, per day and total are set

If you cannot tick at least eight of the ten, you are not testing the EA yet - you are hoping. Hoping is allowed, but it should be done with a size you can afford to lose.

Words you will meet

Drawdown - the fall from a previous peak of the account, usually in %. Maximum drawdown is the worst fall in the test.
Out-of-sample - a period of history that was not used to choose the settings.
Curve fitting - tuning settings until they fit the past perfectly, which usually says nothing about the future.
Slippage - the difference between the price you asked for and the price you got.
Magic number - a number that identifies which EA opened a trade, so that EAs and tools do not mix their trades.

Free tools that help with checks 8 and 10

These are free tools I built for MetaTrader 5, available in the MQL5 Market. They never open trades by themselves.

  • Account Guardian Equity Lock - watches the equity of the whole account. At the daily loss limit (or a maximum drawdown) you choose, it closes the positions, deletes the pending orders and keeps the account locked against new trades until the next day. It works with any EA and with manual trades.
  • Stair Stop Manager R Steps - moves the stop loss of your open positions in steps measured in R (the initial risk of each trade): break-even first, then locked profit, with an optional trailing stop. The stop loss only moves in your favour.
  • Gotobi Calendar Tokyo Fixing - an indicator for traders who study the Tokyo fixing: it shows if today is a Gotobi day in Japan, a live countdown to the 09:55 JST fixing, and that time in your broker's server time.

A word about my own EAs

I publish EAs in the MQL5 Market too, and everything in this guide applies to them. Please run these ten checks on them before you buy. If you have questions about how one of them works, ask me in the comments or on my profile - I would rather you understand an EA than just run it.

Risk warning: trading leveraged products such as forex, CFDs and futures involves a high risk of loss and is not suitable for everyone. You can lose more than your initial deposit on some products. Past performance, including any backtest, does not guarantee future results. Automated trading does not remove risk. This post is educational material only; it is not financial advice or a recommendation to buy or sell anything. Never trade with money you cannot afford to lose.