Exp_ColorHMA_StDev
This EA trades based on the ColorHMA_StDev indicator, which is a Hull Moving Average enhanced with standard deviation bands. It opens and closes buy/sell positions using three signal modes: point signals from colored dots, direct trend direction from the HMA line, or disabled signals entirely.
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: 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
The strategy concept is based on a Hull Moving Average (HMA) combined with standard deviation channels, classifying it as a trend-following system. Entry conditions support two modes: the POINT mode checks if indicator buffers 3/5 (buy) or 2/4 (sell) contain non-empty values to confirm signal dots; the DIRECT mode detects trend reversals via HMA line direction changes — a V-shaped bottom for buy entries and an inverted V-shaped top for sell entries. Exit conditions also support both modes: in DIRECT mode, a buy position closes when the HMA line declines, and a sell position closes when it rises. Position sizing is managed through the MM parameter and MMMode enumeration, supporting multiple money management approaches including free margin-based, balance-based, loss-adjusted margin/balance, or fixed lot sizing. Risk control relies on fixed stop loss (default 1000 points) and take profit (default 2000 points) parameters, with a slippage tolerance parameter (Deviation_). The EA uses a new bar detection mechanism to avoid processing signals on every tick, and employs a Recount flag for error recovery when indicator data is unavailable.
Strengths
- Flexible signal modes allow independent configuration of entry and exit logic (point signals vs. trend direction), adapting to different trading styles
- Uses Hull Moving Average which has lower latency and better smoothing compared to standard moving averages
- Built-in new bar detection mechanism avoids per-tick signal recalculation, reducing unnecessary trading operations
- Supports multiple money management modes, providing flexible position sizing options
- Standard deviation channels provide additional volatility context for market state assessment
Weaknesses
- Fixed stop loss and take profit in points do not adapt to market volatility (no ATR-based adjustment), which may be inappropriate under varying market conditions
- No spread filter — high spread environments can lead to unfavorable fills, especially on lower timeframes
- No position count limit — consecutive entries in strong trends may lead to excessive exposure
- Depends on the custom ColorHMA_StDev indicator — the EA fails to initialize if the indicator file is missing
- Code comments are garbled (encoding issue), reducing code readability and maintainability
Possible improvements
- Introduce ATR-based dynamic stop loss/take profit to adapt stop distances to current market volatility
- Add spread filtering and maximum open position limits to improve risk control
- Implement a trailing stop feature to lock in floating profits during trending markets
- Fix source file encoding issues to restore garbled comments to readable Russian or translate to English
Risk assessment
Overall risk: Medium
- Fixed 1000-point stop loss may be too wide in low volatility markets and too narrow in high volatility markets
- No position count limit may lead to consecutive overlapping entries during strong trends
- Default SignalBar=1 uses the previous completed bar, introducing signal delay but improving reliability
- Depends on external custom indicator — failure to load only prints a log without user-friendly error notification
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
MM | 0.1 | Money management parameter, lots or ratio |
MMMode | LOT | Margin calculation mode (fixed lots, balance percentage, etc.) |
StopLoss_ | 1000 | Stop loss in points |
TakeProfit_ | 2000 | Take profit in points |
Deviation_ | 10 | Maximum allowed slippage |
BuyPosOpen | POINT | Buy entry signal mode (dot signal/direct direction/disabled) |
SellPosOpen | POINT | Sell entry signal mode |
BuyPosClose | DIRECT | Close long positions on reverse signal |
SellPosClose | DIRECT | Allow closing short positions on signal reversal |
InpInd_Timeframe | PERIOD_H4 | trend_arrows indicator timeframe |
HMA_Period | 13 | Hull moving average period |
dK1 | 1.5 | Standard deviation multiplier 1 |
dK2 | 2.5 | Standard deviation multiplier 2 |
std_period | 9 | Standard deviation period |
IPC | PRICE_CLOSE | Indicator applied price type |
SignalBar | 1 | Signal bar index (0 for current bar) |
Similar Trend Following EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.