Exp_Skyscraper_Fix_ColorAML_X2MACandle_MMRec
This EA combines three independent signal sources — Skyscraper (trend filter), ColorAML (adaptive moving average line), and X2MACandle (dual MA crossover candles) — to generate confluence-based trade entries. It integrates a money management recommendation module (MMRec) for dynamic position sizing based on account equity and risk parameters. Trades are opened only when multiple indicators align in the same direction across different analytical dimensions.
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 | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | Not convertible yet |
| GBPUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | Not convertible yet |
| USDJPY | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | Not convertible yet |
| XAUUSD | 0.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: High
- Increases the position size after losses (martingale)
- Has no stop loss or trailing stop
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 multi-indicator confluence confirmation, requiring alignment of Skyscraper trend direction, ColorAML adaptive moving average direction, and X2MACandle dual-MA crossover candle signals before triggering trades. Entry conditions dictate a long position when all three signals are bullish and a short position when all three are bearish, significantly reducing false signals through multiple filtering layers. Exit conditions rely on the appearance of opposing signals or fixed stop-loss/take-profit levels, depending on each indicator's parameter configuration. Position sizing employs the MMRec module which dynamically calculates lot size based on account balance, risk percentage, and stop-loss distance, ensuring risk-controlled money management. The money management system supports both fixed lot and dynamic lot modes, with the dynamic mode strictly controlling the percentage of account equity risked per trade. The core strength of this strategy is that multi-dimensional signal filtering reduces false breakout probability, but it also means potentially missing early trend profits while waiting for confluence confirmation.
Strengths
- Multi-indicator confluence filtering significantly reduces false signals and fake breakout trades
- Multi-timeframe analysis provides trend confirmation from different dimensions enhancing signal reliability
- MMRec dynamic position sizing automatically adjusts lot size based on account risk for refined risk control
- Three independently calculated indicators avoid systemic risk from single indicator failure
- Well-parameterized design allows flexible optimization for different instruments and timeframes
Weaknesses
- Triple confluence condition is overly strict and may miss early trend trading opportunities causing entry lag
- Increased number of indicators leads to too many parameters raising the risk of overfitting historical data
- Default stop-loss and take-profit are zero posing capital safety risk of opening positions without stop-loss
- Multi-timeframe data reading may have inconsistencies between backtesting and live trading
- The strategy lacks adaptive mechanisms to dynamically adjust parameters based on market volatility changes
Possible improvements
- Add adaptive stop-loss mechanism using ATR or volatility to dynamically set stop-loss/take-profit instead of fixed points or zero
- Add new bar check logic to prevent repeated position opening within the same bar and add spread filter to prevent entry when spread is too wide
- Introduce market regime identification module to automatically pause trading or reduce position size during ranging markets to minimize unnecessary losses
Risk assessment
Overall risk: Caution
- Default stop-loss and take-profit are both zero posing extreme risk of opening positions without stop-loss
- Lack of new bar check may cause repeated position opening within the same bar leading to overtrading
- Too many indicator parameters create overfitting risk where live performance may significantly underperform backtesting
- Lack of spread filter may produce unfavorable entries in high-spread environments
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
SoundLimit | 1 | Sound alert repeat limit |
SoundFile | expert.wav | Sound file path |
SoundTimeOut | 5 | Sound alert timeout in seconds |
NumberAlert | 2 | Alert repeat count |
Skyscraper_TimeFrame | H4 | Skyscraperindicatortime period |
Skyscraper_Length | 20 | Skyscraper indicator calculation period |
ColorAML_TimeFrame | H1 | ColorAMLindicatortime period |
ColorAML_MinPeriod | 2 | ColorAML minimum period parameter |
ColorAML_MaxPeriod | 8 | ColorAML maximum period parameter |
ColorAML_Shift | 0 | ColorAML shift offset |
X2MACandle_TimeFrame | H1 | X2MACandleindicatortime period |
X2MACandle_SignalPeriod | 5 | X2MACandlesignal period |
X2MACandle_FirstMA_Period | 12 | X2MACandle first MA period |
X2MACandle_FirstMA_Method | 1 | X2MACandle first MA method |
X2MACandle_SecondMA_Period | 5 | X2MACandle second MA period |
X2MACandle_SecondMA_Method | 0 | X2MACandle second MA method |
MM_Type | 1 | Money management type (0=fixed lot, 1=dynamic lot) |
MM_RiskPercent | 2 | Dynamic lot risk percentage |
MM_FixedLot | 0.1 | Fixed lot size |
StopLoss | 0 | stop losspoints (0=nostop loss) |
TakeProfit | 0 | Take profit in points (unused; buy TP follows MA value) |
Similar Multi-Timeframe EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.