EA-12528 · Mean Reversion

Exp_FisherCyberCycle

This EA trades based on the FisherCyberCycle custom indicator, generating buy signals when the indicator line crosses above the signal line and sell signals when it crosses below. It uses a configurable money management system with multiple margin modes and supports independent control of position opening and closing for both buy and sell directions.

Open the interactive view (equity curve, symbol switch)

Key facts

RiskMedium
Blow-up riskLow
Rating★★★☆☆
TypeTrading EA
TimeframesH1, H4, H8
IndicatorsFisherCyberCycle
AuthorCopyright © 2015, Nikolay Kositsin

Backtest results (H1, about 1 year)

SymbolP&LAnnualMax DDTradesWin rateSharpeRecoveryLosing streakPer tradeStatus
EURUSD0.00%0.00%0.00%0—————Custom indicator approximated
GBPUSD0.00%0.00%0.00%0—————Custom indicator approximated
USDJPY0.00%0.00%0.00%0—————Custom indicator approximated
XAUUSD0.00%0.00%0.00%0—————Custom indicator approximated

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 the FisherCyberCycle indicator, which applies the Fisher Transform to a CyberCycle oscillator to produce smoother and sharper turning point signals. Entry conditions are: a buy position opens when the indicator line (Ind) is above the signal line (Sign) and the previous bar's indicator line was at or below the signal line; a sell position opens when the indicator line is below the signal line and the previous bar's indicator line was at or above the signal line. Exit conditions are also based on indicator crossovers: long positions close when the bullish signal disappears, and short positions close when the bearish signal disappears, with fixed stop loss and take profit levels in points. Position sizing supports five margin modes: percentage of free margin, percentage of balance, percentage of free margin minus floating loss, percentage of balance minus floating loss, and fixed lot size. Money management is controlled via the MM parameter with a default of 0.1, combined with MMMode to select the calculation method. The EA also employs a new bar detection mechanism (IsNewBar) to prevent repeated trading within the same bar, recalculating signals only when SignalBar is 0 or a new bar appears.

Strengths

  • Fisher Transform produces sharper signals, reducing lag typical of traditional oscillators
  • Supports multiple money management modes, flexibly adapting to different risk preferences
  • Buy and sell direction opening and closing can be independently controlled, offering high configuration flexibility
  • New bar detection mechanism prevents repeated position opening within the same bar
  • Configurable stop loss and take profit parameters provide a basic risk control framework

Weaknesses

  • Depends on external custom indicator FisherCyberCycle; EA cannot run if the indicator file is missing
  • Stop loss and take profit are fixed points without dynamic adjustment based on market volatility (e.g., ATR)
  • Lacks position scaling mechanisms (add/reduce), unable to optimize positions during trends
  • No existing position check before opening new trades, potentially leading to duplicate positions in the same direction
  • Alpha and Length parameters lack self-adaptive mechanisms, performance may vary significantly across different market conditions

Possible improvements

  • Add position check logic to avoid duplicate opening in the same direction which leads to overexposure
  • Introduce ATR-based dynamic stop loss and take profit to automatically adjust distances based on market volatility
  • Add trading session filter and spread filter to prevent opening positions in unfavorable trading conditions

Risk assessment

Overall risk: Medium

  • No check for existing positions in the same direction, potentially leading to duplicate openings that increase risk exposure
  • Fixed stop loss and take profit do not account for market volatility; tight stops may be frequently triggered during volatile periods
  • Depends on external indicator file; abnormal indicator calculations could produce erroneous trading signals

Evaluation scores

Code quality3.0
Strategy logic3.0
Risk management2.0
Robustness2.0
Innovation3.0
Documentation1.0
Overall2.3

Parameters

ParameterDefaultDescription
MM0.1Money management parameter controlling trade ratio or lot size
MMModeLOTMM mode: free margin/balance/post-loss margin/post-loss balance/fixed lot
StopLoss_1000Stop loss in points
TakeProfit_2000Take profit in points
Deviation_10Maximum allowed slippage in points
BuyPosOpentrueAllow opening long positions
SellPosOpentrueAllow opening short positions
BuyPosClosetrueAllow closing long positions
SellPosClosetrueAllow closing short positions
InpInd_TimeframePERIOD_H8Indicator calculation timeframe
Alpha0.07CyberCycle indicator smoothing coefficient
Length8Indicator calculation period length
SignalBar1Bar index for signal (0=current, 1=previous)

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.