EA-283 · Mean Reversion

Expert_ABC_WS_Stoch

This EA uses a Stochastic oscillator combined with a moving average filter (CBC_WS_Stoch) to generate trading signals within the MQL5 Standard Library Expert Advisor framework. It employs fixed lot sizing for money management and no trailing stop, relying on the signal thresholds to open and close positions based on overbought/oversold mean reversion logic.

Open the interactive view (equity curve, symbol switch)

Key facts

RiskHigh risk
Blow-up riskLow
Rating★★☆☆☆
TypeTrading EA
TimeframesM15, H1, H4
IndicatorsStochastic, MA
AuthorMetaQuotes Software Corp.

Backtest results (H1, about 1 year)

SymbolP&LAnnualMax DDTradesWin rateSharpeRecoveryLosing streakPer tradeStatus
EURUSD-2.65%-2.31%7.06%10544.20%————Same as other EAs
GBPUSD-5.70%-4.97%7.42%10335.30%————Same as other EAs
USDJPY-1.20%-1.05%5.76%7739.50%————Same as other EAs
XAUUSD-84.10%-78.11%93.81%9742.30%————Same as other EAs

On every market this backtest is identical to EA-297, EA-310. The automatic conversion almost certainly lost what makes this EA different (a custom indicator, a filter or the money management), so these results are not ranked or counted.

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

  • Has no stop loss or trailing stop

On its own this is not a typical blow-up pattern, 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 CBC_WS_Stoch signal filter, which combines the Stochastic oscillator with a short-period moving average (MA period=5). Entry conditions rely on the Stochastic indicator's overbought/oversold zones, with the MA serving as an auxiliary filter; a trade is opened when the composite signal strength exceeds the open threshold (default 40) and closed when it falls below the close threshold (default 20). Position sizing uses a fixed lot model (MoneyFixedLot) with a default of 0.1 lots, which does not dynamically adjust based on account balance or equity. Money management sets a 10% percent parameter but effectively uses fixed lots, making risk control relatively simplistic. Notably, there is no stop loss (Signal_StopLevel=0) and no take profit (Signal_TakeLevel=0), meaning the EA relies entirely on signal reversal for exits, which can lead to significant losses if signals fail to reverse in time. No trailing stop is used (TrailingNone), and exits are triggered solely by signal changes or pending order expiration (4 bars), reflecting a mean reversion philosophy overall.

Strengths

  • Built on the MQL5 Standard Library Expert framework with clean, modular code structure that is easy to extend
  • Stochastic + MA combination filter reduces false signals; the non-standard K period (47) avoids common parameter congestion
  • Signal threshold mechanism (open=40/close=20) provides flexible signal sensitivity control adaptable to different market conditions

Weaknesses

  • No stop loss or take profit configured (both set to 0), exposing each trade to unlimited risk
  • Fixed lot money management does not dynamically adjust with account growth, preventing compounding and not adapting to different account sizes
  • No trailing stop and pending order expiration of only 4 bars may cause missed exit opportunities in volatile markets or frequent order expirations

Possible improvements

  • Add stop loss and take profit parameter settings with reasonable default values to control maximum per-trade loss
  • Replace fixed lot money management with dynamic proportional position sizing (e.g., MoneyFixedMargin or MoneyFixedPercent) so lot sizes auto-adjust with account equity

Risk assessment

Overall risk: High risk

  • Stop loss and take profit are both 0, relying entirely on signal reversal for exits, facing huge loss risk in extreme market conditions
  • No new bar check mechanism (Expert_EveryTick=false but not based on new bar logic), which may cause repeated signals within the same bar leading to anomalous behavior

Evaluation scores

Code quality4.0
Strategy logic3.0
Risk management1.0
Robustness2.0
Innovation2.0
Documentation2.0
Overall2.3

Parameters

ParameterDefaultDescription
Signal_ThresholdOpen40Entry signal threshold [0...100]
Signal_ThresholdClose20Exit signal threshold [0...100]
Signal_PriceLevel0.0Trade execution price level
Signal_StopLevel0.0Stop loss level (in points)
Signal_TakeLevel0.0Take profit level (in points)
Signal_Expiration4Pending order expiration (in bars)
Signal__StochPeriodK47Stochastic bar period
Signal__StochPeriodD9Stochastic D-line period
Signal__StochPeriodSlow13Stochasticslowsmoothing period
Signal__StochAppliedSTO_LOWHIGHStochastic price application method
Signal__MAPeriod5Additional moving average period
Signal__Weight1.0Signal weight [0...1.0]
Money_FixLot_Percent10.0Capital percentage
Money_FixLot_Lots0.1Fixed trading lot size

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.