EA-19233 · Momentum

MACD Stochastic

This EA combines MACD and Stochastic oscillator signals to generate trade entries, requiring both indicators to confirm momentum direction before opening positions. It uses MACD for trend/momentum direction and Stochastic for overbought/oversold timing, creating a dual-confirmation trading system. The EA opens buy trades when MACD is bullish and Stochastic is oversold, and sell trades when MACD is bearish and Stochastic is overbought.

Open the interactive view (equity curve, symbol switch)

Key facts

CategoryMomentum
RiskMedium
Blow-up riskLow
Rating★★☆☆☆
TypeTrading EA
TimeframesM15, M30, H1, H4
IndicatorsMACD, Stochastic Oscillator
AuthorMikhail

Backtest results (H1, about 1 year)

SymbolP&LAnnualMax DDTradesWin rateSharpeRecoveryLosing streakPer tradeStatus
EURUSD+4.77%+4.13%3.31%8142.50%0.961.449+$5.49Reliable
GBPUSD+0.71%+0.62%5.95%10144.00%0.150.125+$0.95Reliable
USDJPY+8.01%+6.92%2.29%9653.10%1.423.504+$8.34Reliable
XAUUSD-9.67%-8.06%63.49%13248.10%0.32-0.156−$5.49Reliable

Profitable on 3 of 4 markets with reliable results.

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.

Against the other Momentum EAs with a reliable result on the same market: EURUSD: better than 84% of 68 · GBPUSD: better than 70% of 66 · USDJPY: better than 93% of 68 · XAUUSD: better than 51% of 75

Month by month

MarketMonths with a gainBest monthWorst month
EURUSD54%+2.55% 2026-06-2.28% 2026-07
GBPUSD62%+1.38% 2025-12-2.12% 2026-03
USDJPY85%+2.23% 2025-12-1.73% 2025-11
XAUUSD38%+58.54% 2026-07-38.99% 2026-01

From the backtest equity curve, sampled about every two days; only reliable results.

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 a dual-indicator momentum confirmation strategy combining MACD and Stochastic oscillator, where the core concept uses MACD to identify medium-term trend direction and Stochastic to find entry timing in overbought/oversold zones. Entry conditions require: for buy signals, MACD main line above signal line (or positive histogram) combined with Stochastic crossing up from oversold territory; for sell signals, MACD main line below signal line (or negative histogram) combined with Stochastic crossing down from overbought territory. Exit conditions may include fixed take-profit and stop-loss levels or indicator reversal-based exits. Position sizing typically relies on a user-configured lot size parameter, with some versions potentially including simple account-balance-based dynamic lot calculation. Money management is relatively basic, depending on fixed lot sizes or simple proportional sizing without advanced mechanisms like Kelly criterion or risk-percentage position control. The overall strategy logic is clear, but dual-indicator confirmation may result in fewer entry signals, and the system can generate frequent false signals in choppy, range-bound markets.

Strengths

  • Dual-indicator confirmation reduces false signals and improves entry quality
  • MACD and Stochastic complement each other well — one identifies trend, the other identifies timing
  • Highly configurable parameters allow users to optimize indicator settings for different instruments and timeframes
  • Strategy logic is simple and intuitive, making it easy to understand and backtest

Weaknesses

  • Dual-indicator confirmation may result in scarce entry signals, missing some market opportunities
  • MACD can frequently flip in choppy markets, generating false trend judgments
  • Lacks advanced money management — fixed lot sizing cannot adapt to varying risk environments
  • Stochastic may stay in overbought/oversold zones for extended periods during strong trends, causing delayed signals

Possible improvements

  • Add a trend filter (e.g., ADX or higher-timeframe moving average) to reduce false signals in choppy markets
  • Implement dynamic position sizing based on account risk percentage instead of fixed lot sizes
  • Add spread filtering and session control to avoid trading during high-cost and low-liquidity periods

Risk assessment

Overall risk: Medium

  • Stop-loss parameter defaults to 0 — if not set by user, positions have no protection and face unlimited loss risk
  • No spread filter mechanism — entries may occur under unfavorable high-spread conditions
  • No explicit new bar check logic — may open multiple positions within the same bar

Evaluation scores

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

Parameters

ParameterDefaultDescription
MACD_fast_ema12MACD fast EMA period
MACD_slow_ema26MACD slow EMA period
MACD_signal_sma9MACD signal SMA period
Stoch_K_period14Stochastic K period
Stoch_D_period3Stochastic D period
Stoch_slowing3Stochastic smoothing factor
Stoch_overbought80stochasticindicatoroverbought level
Stoch_oversold20stochasticindicatoroversold level
LotSize0.1Fixed lot size (0 = dynamic calculation)
StopLoss0Stop loss in points, 0 means no stop
TakeProfit0Overall take profit target (points)

Similar Momentum 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.