Our Forex EA Testing Methodology
Friends, hello everyone!
I have been trading Forex with automated trading systems and Expert Advisors for MetaTrader 4 and MetaTrader 5 for many years. Over time, this practical experience became the basis of the Forex EA testing methodology we use at EA ForexLab today.
Over the years, I have seen many interesting Expert Advisors available online that may deserve closer attention. The problem is finding them. Searching for a genuinely interesting algorithm among thousands of systems is often like sifting through sand looking for gold.
Many resources publish large collections of Expert Advisors without meaningful verification. Testing them properly takes time, historical data and the right tools.
This is why my friends and I originally created the EA ForexLab Telegram channel: a place where we could share interesting Expert Advisors for MetaTrader 4 and MetaTrader 5, test them independently and discuss the results with other traders.
We use tools such as Tick Data Suite (TDS) and QuantAnalyzer to examine how Expert Advisors behave on historical data under defined testing conditions. Depending on the test, this can include tick data, historical variable spread, broker-style commission and additional execution assumptions.
Our role is not to declare that an Expert Advisor is profitable, safe or suitable for every trader. We see EA ForexLab as an initial research filter: we test systems, publish the results and highlight characteristics that deserve attention. Members of the community can then examine the evidence, discuss the strategy and make their own conclusions.
The idea behind the project has always been to build a community of both experienced and newer algorithmic traders who can exchange Expert Advisors, testing results and practical observations. Community members can also send us Expert Advisors they have found online for analysis and testing.
Over time, this approach has developed into a more structured testing methodology. The principles below describe how we currently test and evaluate Expert Advisors at EA ForexLab.
Where the Expert Advisors Come From
EA ForexLab does not crack, reverse-engineer or bypass the licensing or protection systems of commercial Expert Advisors. We test Expert Advisors as black-box trading systems: we study their observable trading behaviour, not their protected source code.
The EAs we test come from publicly accessible sources and from submissions by members of our community.
For reviews published under our current methodology, we state the EA version tested and the source of the tested copy whenever this information can be reliably established. If we cannot confirm that a tested copy matches the version currently distributed by the developer, we state this in the review.
A test result should always be interpreted in the context of the exact version that produced it.
How We Test Forex Expert Advisors
A good-looking backtest proves very little on its own.
At EA ForexLab, our job is to reproduce an Expert Advisor’s historical behaviour under realistic conditions and then examine what sits behind the final profit figure: drawdown, stagnation, stability, trade distribution, position sizing and other risk characteristics that may not be obvious from headline statistics.
One principle defines everything we publish: we test and we describe — we do not conclude for you.
A backtest cannot predict future performance, and a decision to trade an EA carries responsibility that only the trader can take. EA ForexLab provides the test results, the conditions they were produced under, and our observations. What you do with them is your decision, based on your own experience, objectives and tolerance for risk.
Our primary testing environment is Tick Data Suite (TDS) with MetaTrader.

Our standard test aims to approximate realistic historical trading conditions using tick data, variable spread, broker-style commission and the relevant symbol specifications. Additional assumptions or execution modelling are stated explicitly in the individual review, and anything that was not tested or modelled is not presented as if it had been.
This page describes the current Forex EA testing methodology used by EA ForexLab. Reviews published before its adoption are being brought in line with it progressively, and each review reflects the analyses actually performed for that test.
Tick Data Source
The historical data source is selected according to the instrument and testing period.

Available history, tick density, spread behaviour, gaps and abnormal price spikes can all affect the quality of a simulation. For this reason, each review identifies the data source used for the published test where that information is available.
Tick Quality
We test at tick level rather than relying only on generated bar data.
For MT4 tests with Tick Data Suite, we verify the modelling quality reported by the tester. For MT5 tests, we confirm that the test used the intended historical tick series.
High-quality tick data improves the accuracy of the simulation. It does not, by itself, demonstrate that a strategy is robust.
Spread, Commission and Swap
Trading costs are included in our standard test where they can be reproduced reliably:
- historical variable spread;
- broker-style commission;
- contract and symbol specifications relevant to the instrument.



Swap charges are added where the strategy’s holding period makes them relevant and where the required conditions can be modelled reliably.
Trading costs matter most for scalpers, high-frequency systems and strategies with a small average profit per trade, where relatively small differences in execution costs can materially affect the result.
For traders who use rebate programs, part of the broker commission may be returned after the trade. This does not change the underlying strategy or make a weak system profitable, but it can reduce effective trading costs. More details are available through our Forex Rebate service.
Execution Modelling
Where execution sensitivity is relevant to the strategy or research question, we may additionally test the effect of slippage or execution delay using the capabilities available in Tick Data Suite.
This is particularly useful for strategies whose results depend heavily on precise entry or exit prices.
If execution effects were not modelled in a particular test, the review does not imply that they were.
Reproducibility
For reviews published under our current methodology, we publish the parameters needed to understand how the result was produced wherever the information is available:
- EA version;
- trading platform;
- symbol;
- timeframe;
- testing period;
- initial deposit;
- EA settings;
- tick data source;
- spread and commission model;
- additional execution assumptions, where used.
The objective is straightforward: another trader should be able to understand the conditions under which the published result was produced.
The 28-Year Date-Shift Check
Even a high-quality tick backtest cannot reveal everything.
An Expert Advisor can contain hidden calendar logic or restrictions tied to particular dates or historical periods. Such logic can cause the EA to behave differently when tested outside the calendar structure for which it was designed.
For this reason, the date-shift check is a standard step of our current testing protocol for new tests: we repeat the test after shifting the historical dates by 28 years while preserving the underlying price sequence as closely as possible.
The 28-year shift is designed to preserve the price sequence and much of the original calendar structure while changing the calendar years. This helps expose behaviour that may depend on specific dates rather than on the underlying market movement itself.
We then compare the EA’s behaviour with the original test.
A major divergence does not by itself prove manipulation. It indicates that the EA may be sensitive to calendar dates or other time-dependent conditions and gives us a reason to investigate the result more closely.
The full method, its reasoning and its limitations are described in our article How to Detect Hardcoded Dates in Forex Expert Advisors Using the 28-Year Shift Test.
How We Evaluate a Backtest
Net profit alone is not enough to evaluate an Expert Advisor.
When the test report contains sufficient information, we analyse the results in QuantAnalyzer across several dimensions. The depth of the analysis depends on the data available for a particular test.

If a report does not support a particular type of analysis, we do not present that analysis as if it had been performed.
Profitability
We examine net profit together with Profit Factor, average trade, win/loss characteristics and expectancy.
Where the data supports it, we also calculate risk-adjusted metrics such as the Calmar Ratio and Sortino Ratio. These measures help put historical return into the context of drawdown and downside risk.
Drawdown and Stagnation
Maximum drawdown shows only one dimension of risk.
We also examine stagnation — how long the strategy remains below its previous equity high. A strategy can have a seemingly acceptable maximum drawdown while still experiencing prolonged periods without reaching a new high.
Stability Over Time
We examine whether performance is distributed across the testing period or concentrated in a limited number of months or years.
If most of the historical result comes from a relatively short period, this may indicate dependence on particular market conditions rather than stable behaviour throughout the test.
Long/Short Dependency
Long and short trades can be analysed separately.
If most historical profit comes from only one market direction, this provides useful information about the structure of the strategy and its possible dependence on a particular market regime.
Trade-Duration Dependency
We examine how profits and losses are distributed across trades of different duration.
This can show whether the historical result depends mainly on very short trades, prolonged exposure or a relatively small subset of positions.
Profit Concentration
A profitable backtest can sometimes depend heavily on a small number of exceptional trades or short periods.
We therefore examine whether profit is broadly distributed across the trading history or concentrated in a limited part of it.
Position Sizing
Position-size behaviour is an important part of our analysis.
We examine whether the strategy uses relatively stable exposure, changes position size after wins or losses, or displays behaviour consistent with martingale, averaging or other dynamic money-management techniques.
Concurrent Positions and Layering
The number and structure of simultaneous positions can reveal risks that are not obvious from headline performance statistics.
Where relevant, we examine repeated entries in the same direction, grids, averaging and increasing exposure while price moves against existing positions.
Trading-Cost Sensitivity
For strategies that appear particularly sensitive to execution costs, we may compare results under different spread, commission or execution assumptions.
We report trading-cost sensitivity only when such a comparison has actually been performed.
What Our Results Mean
Our tests describe how an Expert Advisor behaved on historical data under the stated conditions.
They are not a prediction of future performance, a recommendation to trade the EA, or a substitute for forward testing and independent risk assessment.
We deliberately separate what the test shows from what a trader should do.
EA ForexLab provides the data, testing conditions and analysis. The final assessment of the strategy belongs to the trader.
Last updated: July 2026. Questions about our testing, or an EA you’d like us to look at? Contact us.
