Exp_GG-RSI-CCI
This EA trades based on signals from the GG-RSI-CCI custom indicator, which combines RSI and CCI with multi-layer smoothing. It opens buy positions when the indicator signals an uptrend (value=2), sell positions on a downtrend signal (value=0), and optionally closes positions on a flat signal (value=1). Position sizing uses a deposit share model with configurable stop loss and take profit.
Open the interactive view (equity curve, symbol switch)Key facts
Backtest results (H1, about 1 year)
| Symbol | P&L | Annual | Max DD | Trades | Win rate | Sharpe | Recovery | Losing streak | Per trade | Status |
|---|---|---|---|---|---|---|---|---|---|---|
| EURUSD | -2.12% | -1.84% | 6.49% | 143 | 47.90% | -0.40 | -0.33 | 5 | −$1.73 | Reliable |
| GBPUSD | -15.90% | -13.97% | 16.23% | 144 | 40.60% | -2.55 | -0.98 | 6 | −$11.28 | Reliable |
| USDJPY | -4.22% | -3.68% | 6.06% | 142 | 46.10% | -0.76 | -0.70 | 8 | −$2.88 | Reliable |
| XAUUSD | -100.00% | -100.00% | 100.00% | 38 | 52.60% | -1.55 | -1.00 | 4 | −$278.32 | Account stopped out |
Profitable on 0 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 35% of 68 · GBPUSD: better than 2% of 66 · USDJPY: better than 19% of 68 · XAUUSD: better than 0% of 75
Month by month
| Market | Months with a gain | Best month | Worst month |
|---|---|---|---|
| EURUSD | 46% | +2.01% 2026-08 | -2.98% 2026-02 |
| GBPUSD | 15% | +1.76% 2026-03 | -3.50% 2026-05 |
| USDJPY | 31% | +2.17% 2026-08 | -2.79% 2026-09 |
| XAUUSD | 50% | +15.52% 2025-12 | -100.00% 2026-02 |
From the backtest equity curve, sampled about every two days; only reliable results.
Blow-up risk: High
- Hit a stop-out in our backtest (equity below 10%) on XAUUSD
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 strategy concept is based on the GG-RSI-CCI indicator, which combines two momentum oscillators (RSI and CCI) and applies double smoothing using a user-selectable algorithm from ten available methods (SMA, EMA, SMMA, JJMA, JurX, ParMA, T3, VIDYA, AMA). Entry conditions are: a buy signal is generated when indicator buffer 1 value equals 2, a sell signal when it equals 0, and positions are only opened when the current signal differs from the previous bar's signal to prevent duplicate entries. Exit conditions operate in two modes: MODE_FLAT closes both long and short positions when the indicator value is 1 (flat/neutral), while MODE_TREND only closes positions on opposing trend signals (buy signal closes shorts, sell signal closes longs). Position sizing uses the MM parameter where negative values represent fixed lot sizes and positive values represent a share of the deposit. Money management is implemented through fixed-point StopLoss and TakeProfit parameters, with a price deviation limit (Deviation_) to prevent excessive slippage. The strategy supports multi-timeframe operation, allowing the indicator to run on a timeframe different from the chart, enhancing flexibility in signal generation.
Strengths
- Combines RSI and CCI momentum indicators with multi-layer smoothing, reducing false signals
- Supports ten smoothing algorithms with flexible parameters, adaptable to different market conditions
- Provides two exit modes (trend and flat) with clear trading logic and signal deduplication to prevent duplicate entries
- Multi-timeframe support allows the indicator to run on higher timeframes while the chart is on lower ones, reducing noise
- Includes permission switches for opening and closing positions separately, facilitating stepwise testing and risk control
Weaknesses
- Stop loss and take profit use fixed points without considering ATR or volatility measures, potentially inappropriate under varying market volatility
- Lacks advanced position management features such as scaling in/out, trailing stops, or break-even functionality
- Depends on custom indicator GG-RSI-CCI and external include files SmoothAlgorithms.mqh and TradeAlgorithms.mqh, which if missing prevent compilation
- The MM parameter design where negative values represent fixed lots is unintuitive and prone to user misunderstanding
- No spread filter or trading session restrictions, which may lead to unfavorable fills during high-spread or low-liquidity periods
Possible improvements
- Replace fixed-point SL/TP with ATR-based dynamic calculation for self-adaptation to market volatility
- Add spread filtering and trading session restrictions to avoid trading during high-cost and low-liquidity periods
Risk assessment
Overall risk: Medium
- Fixed-point SL/TP does not account for changing market volatility, potentially insufficient to protect capital in extreme conditions
- No spread filter may lead to unnecessary slippage losses in low-liquidity market conditions
- Dependency on external custom indicators and include files may cause runtime anomalies if files are incomplete or version-mismatched
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
MM | -0.1 | Money management ratio controlling margin per trade |
StopLoss_ | 1000 | Stop loss in points |
TakeProfit_ | 2000 | Take profit in points |
Deviation_ | 10 | Maximum allowed slippage |
BuyPosOpen | true | Allow opening long position on bullish signal |
SellPosOpen | true | Allow opening short position on bearish signal |
BuyPosClose | true | Allow closing long position on reverse signal |
SellPosClose | true | Allow closing short position on reverse signal |
SignalMode | MODE_FLAT | Close mode: trend signal or any signal |
InpInd_Timeframe | PERIOD_H4 | Ozymandias indicator timeframe |
IndPeriod | 8 | RSI and CCI indicator period |
Applied_Price | PRICE_CLOSE | Applied price type |
SmoothMethod | MODE_SMMA | Smoothing method |
Period1 | 14 | Coarse smoothing period |
Period2 | 20 | Fine smoothing period |
Smooth_Phase | 100 | Smoothing parameter (JJMA: -100~+100, VIDYA: CMO period, AMA: slow MA period) |
SignalBar | 1 | Trend bar index for signal judgment |
Similar Momentum EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.