EA-16947 · Mean Reversion

Exp_FisherTransform_X2

This EA uses the Fisher Transform indicator on two different timeframes to generate trading signals. It enters long positions when the Fisher Transform crosses upward on both timeframes and short positions when it crosses downward. Exits are triggered by opposing crossover signals from the faster timeframe Fisher Transform.

Open the interactive view (equity curve, symbol switch)

Key facts

RiskMedium
Blow-up riskLow
Rating★★★☆☆
TypeTrading EA
TimeframesM15, H1, H4
IndicatorsFisher Transform
Author—

Backtest results (H1, about 1 year)

SymbolP&LAnnualMax DDTradesWin rateSharpeRecoveryLosing streakPer tradeStatus
EURUSD0.00%0.00%0.00%0—————Not convertible yet
GBPUSD0.00%0.00%0.00%0—————Not convertible yet
USDJPY0.00%0.00%0.00%0—————Not convertible yet
XAUUSD0.00%0.00%0.00%0—————Not convertible yet

Why this EA never traded: no entry rule survived the conversion.

Converted from MQL5 to Python and run with the same rules for every EA. Positions use MT5 lot sizes (100,000 units per FX lot, 100 oz per gold lot) with 1:100 leverage, one order at a time, and a stop-out below 10% of the starting balance. Sharpe is computed from the equity curve. Results marked as unreliable are shown for completeness only.

Blow-up risk: No blow-up pattern found

None of the usual blow-up patterns were found in the code, and the account was not stopped out in our backtests. That is not a guarantee: any EA can lose money.

High: stopped out in our backtest, or martingale/grid sizing without a stop loss. Elevated: martingale or grid sizing with a stop loss, or several positions at once without a stop loss. What the label means and what we found →

Strategy analysis

The core strategy of this EA is based on a dual-timeframe confirmation signal system using the Fisher Transform indicator. The Fisher Transform converts price probability distributions into approximately Gaussian distributions, producing sharp crossover signals with fewer false triggers compared to traditional oscillators. Entry conditions require concurrent confirmation from both a fast and slow timeframe Fisher Transform — a long position is opened when both timeframes show an upward crossover, and a short position when both show a downward crossover. This multi-timeframe filtering mechanism significantly reduces erroneous trades caused by single-timeframe false signals. Exit conditions rely on the faster timeframe Fisher Transform generating an opposing crossover signal, closing positions when the fast-period signal reverses against the held position. Position sizing uses a fixed lot size specified by the user via input parameter, without any dynamic adjustment mechanism based on account equity or volatility. Money management provides stop-loss and take-profit parameters, but these depend on user experience rather than an adaptive algorithm. The overall strategy falls under mean reversion, as the Fisher Transform crossovers at extreme values inherently capture price movements returning from overbought or oversold states toward the mean.

Strengths

  • Dual-timeframe confirmation effectively filters false signals and improves entry quality
  • Fisher Transform produces sharp and clear crossover signals, reducing ambiguous judgment
  • Simple and transparent strategy logic with few parameters, easy to understand and optimize
  • Multi-timeframe trend filtering avoids the risk of counter-trend trading
  • Provides both stop-loss and take-profit mechanisms, establishing a basic risk control framework

Weaknesses

  • Fixed lot sizing cannot dynamically adjust based on market volatility or account equity, leading to inefficient capital utilization
  • Stop-loss and take-profit rely on manual configuration without adaptive mechanisms, potentially inflexible during volatile markets
  • Lacks spread filter and trading session filter, which may result in unfavorable fills during high-spread or low-liquidity periods
  • Fisher Transform tends to generate frequent false signals in ranging markets, leading to consecutive losses
  • No position check or duplicate order protection mechanism, creating risk of repeated order placement

Possible improvements

  • Add dynamic position sizing module that automatically adjusts lot size based on ATR or account risk percentage
  • Implement spread filter, trading session restrictions, and new bar check to reduce trading under unfavorable conditions
  • Introduce trailing stop or breakeven mechanism to lock in partial profits when trades move favorably
  • Add extra confirmation conditions for Fisher Transform extreme value zones to reduce false signals in ranging markets

Risk assessment

Overall risk: Medium

  • Lacks new bar check mechanism, potentially opening duplicate positions within the same candle
  • Fixed lot size leads to uncontrolled risk exposure during high volatility market conditions
  • No spread or slippage filter protection implemented

Evaluation scores

Code quality3.0
Strategy logic3.0
Risk management2.0
Robustness2.0
Innovation2.0
Documentation2.0
Overall2.3

Parameters

ParameterDefaultDescription
StopLoss未确定Stop loss in points
TakeProfit未确定Take profit points (10 points)
Lots0.1Fixed trading lot size
Timeframe1当前周期First Fisher Transform timeframe
Timeframe2更高周期Second Fisher Transform timeframe
FisherPeriod10Fisher Transformcalculation period

Similar Mean Reversion EAs

Backtests are historical simulations and do not guarantee future results. Not financial advice.

Get the weekly Arena report

One email a week: ranking changes, new signals and new research. No spam; unsubscribe any time.