EA-16937 · Mean Reversion

Exp_AdaptiveCGOscillator_X2

This EA trades based on crossover signals from two Adaptive Center of Gravity Oscillators with different periods. It enters long when the faster CG oscillator crosses above the slower one and the signal line, and enters short on the opposite crossover. The adaptive component adjusts the oscillator period based on market cycle frequency, making it responsive to changing volatility regimes.

Open the interactive view (equity curve, symbol switch)

Key facts

RiskMedium
Blow-up riskLow
Rating★★★☆☆
TypeTrading EA
TimeframesM15, M30, H1, H4
IndicatorsAdaptive Center of Gravity Oscillator, Signal Line
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

This EA employs John Ehlers' Adaptive Center of Gravity Oscillator as its core strategic indicator. The strategy concept is based on a dual-period CG oscillator crossover system: the fast CG oscillator crossing the slow CG oscillator generates trade signals, analogous to a dual moving average crossover but operating in the frequency domain rather than the time domain. Entry conditions trigger a long position when the fast CG line crosses above the slow CG line, and a short position on the opposite crossover, with additional filtering based on the signal line position. Exit conditions include closing on reverse crossover signals, fixed stop-loss and take-profit levels, and a trailing stop mechanism to protect accumulated profits. Position sizing supports both fixed lot size and dynamic calculation based on account balance percentage. Money management features include configurable stop-loss in points and trailing stop functionality to control per-trade risk, though it lacks portfolio-level risk controls and maximum drawdown limits. The adaptive mechanism uses Ehlers' cycle measurement algorithm to dynamically adjust the CG oscillator period, allowing the strategy to maintain sensitivity across different market volatility regimes.

Strengths

  • The adaptive period adjustment mechanism allows the oscillator to adapt to different market volatility regimes, making it more robust than fixed-period oscillators
  • The dual-period CG oscillator crossover system provides relatively smooth trade signals, reducing frequent trading and false signals
  • Built-in stop-loss, take-profit, and trailing stop functionality provides a basic risk control framework
  • The indicator based on Ehlers' digital signal processing theory has a solid mathematical foundation

Weaknesses

  • Mean reversion strategies are prone to consecutive losses in strong trending markets, as the CG oscillator repeatedly generates false signals during extended directional moves
  • Lacks trading session filters and news event filters, potentially generating unfavorable trades during low-liquidity periods or major news releases
  • No maximum drawdown limit or account equity protection mechanism, which could lead to significant losses during extreme market conditions
  • The adaptive period calculation increases computational complexity, potentially causing signal latency in real-time trading

Possible improvements

  • Add a trend filter (such as ADX or long-period moving average) to suppress mean reversion signals during strong trending markets, reducing counter-trend trades
  • Add trading session controls and major news event filters to avoid opening positions during unfavorable periods
  • Add maximum drawdown limits and position reduction mechanisms after consecutive losses to enhance overall money management safety

Risk assessment

Overall risk: Medium

  • Mean reversion strategy carries consecutive loss risk during trending markets, lacking a trend filter mechanism
  • No maximum drawdown protection or automatic position reduction after consecutive losses
  • Latency from adaptive period calculation may cause delayed entries during fast market moves

Evaluation scores

Code quality3.0
Strategy logic3.0
Risk management2.0
Robustness3.0
Innovation4.0
Documentation2.0
Overall2.8

Parameters

ParameterDefaultDescription
Signal_Period8Fast CG oscillator period parameter
Signal_Period_MM32Slow CG oscillator period parameter
StopLoss1000Stop loss amount, 0 disables overall stop loss
TakeProfit2000Hedge pair net profit target in points
TrailingStop0Trailing stop in points, 0 to disable
TrailingStep0Trailing stop step
Lots0.1Hedge order lot size
MoneyFixLot0.1Fixed lot size value
MoneyRisk0.0Money management risk percentage
Volume0Volume mode selection
MaximumSlippage0Maximum slippage
MagicNumber0EA magic number for order identification

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.