Exp_ColorMETRO_DeMarker
This EA trades based on crossover signals from the ColorMETRO_DeMarker custom indicator, which applies a step-filtered DeMarker oscillator. It opens buy positions when the fast step line crosses above the slow step line and sell positions on the opposite crossover, with configurable stop-loss and take-profit levels.
Open the interactive view (equity curve, symbol switch)Key facts
Backtest results (H1, about 1 year)
Not backtested yet — this EA could not be converted automatically.
Strategy analysis
The core strategy of this EA is momentum trading based on dual-line crossover signals from the ColorMETRO_DeMarker indicator, which applies fast and slow step filters (StepSize) to the DeMarker oscillator, generating two step lines (MPlus and MMinus). Entry conditions: a buy signal is generated when MPlus[1]>MMinus[1] and MPlus[0]<=MMinus[0], indicating the fast line crossed above the slow line; a sell signal is generated when MPlus[1]<MMinus[1] and MPlus[0]>=MMinus[0], indicating the fast line crossed below the slow line. Exit conditions rely on reverse crossover signals triggering position closure, combined with fixed stop-loss (1000 points) and take-profit (2000 points) levels. Position sizing supports multiple modes via the MM parameter and MMMode enumeration, including percentage of free margin, percentage of balance, percentage after loss, and fixed lot size. Money management is delegated to the TradeAlgorithms.mqh library functions, supporting 5 different money management modes. The strategy detects signals on new bar formation to avoid repeated trading, but lacks spread filtering and position accumulation protection mechanisms.
Strengths
- The step filter mechanism effectively reduces noise from the DeMarker oscillator, avoiding frequent trading
- Supports multiple money management modes with high flexibility for different risk preferences
- New bar detection prevents repeated trading within the same bar, reducing invalid signals
- Buy/sell open and close can be independently toggled, enabling partial strategy activation or optimization
- Uses custom indicator handles and CopyBuffer for data retrieval, following proper MQL5 architecture
Weaknesses
- Lacks spread filtering, which may lead to unfavorable entries in high-spread environments
- Stop-loss and take-profit use fixed point values without ATR-based dynamic adjustment for volatility
- No position check mechanism, potentially opening duplicate positions in the same direction
- Signals are only detected on bar close, potentially missing entry opportunities in fast-moving markets
- Depends on external custom indicator ColorMETRO_DeMarker; if missing, EA runs with invalid handle and only prints a warning without stopping initialization
Possible improvements
- Add spread filtering to skip trade signals when current spread exceeds a threshold
- Check existing same-direction positions before opening new ones to avoid excessive risk exposure from duplicate entries
- Return INIT_FAILED in OnInit when indicator handle creation fails instead of continuing to run
- Consider implementing ATR-based dynamic stop-loss and take-profit for volatility-adaptive adjustment
Risk assessment
Overall risk: Medium
- EA does not stop initialization when indicator handle creation fails, potentially causing all CopyBuffer calls to fail and repeatedly trigger Recount
- No position count check, potentially opening duplicate same-direction positions leading to uncontrolled risk exposure
- Fixed 1000-point stop-loss and 2000-point take-profit may be inappropriate for small timeframes or high-volatility instruments
- Default H8 timeframe combined with mismatched stop/take-profit points creates significant risk
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
MM | 0.1 | Money management ratio, risk per trade |
MMMode | LOT | MM mode: free margin/balance/loss margin/fixed lot |
StopLoss_ | 1000 | Stop loss in points |
TakeProfit_ | 2000 | Take profit in points |
Deviation_ | 10 | Maximum slippage deviation |
BuyPosOpen | true | Allow long position opening |
SellPosOpen | true | Allow short position opening |
BuyPosClose | true | Allow long position closing |
SellPosClose | true | Allow short position closing |
InpInd_Timeframe | PERIOD_H8 | Indicator calculation timeframe |
PeriodDeMarker | 7 | DeMarker indicator period |
StepSizeFast | 5 | Fast step filter step size |
StepSizeSlow | 15 | Slow step filter step size |
SignalBar | 1 | Bar index for signal detection |
Similar Momentum EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.