Exp_ColorJ2JMAStDev
This EA trades based on signals from the custom ColorJ2JMAStDev indicator, which combines a J2JMA smoothing filter with standard deviation bands. It supports three signal modes (point, direct, without) for both entry and exit, and uses configurable money management with multiple margin modes to size positions.
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 is based on the ColorJ2JMAStDev indicator, which combines a J2JMA dual-smoothed moving average with standard deviation bands. Entry conditions come in three modes: POINT mode checks for signal dots in indicator buffers (non-EMPTY_VALUE values), DIRECT mode detects turning points in the J2JMA line (valley for buy, peak for sell), and WITHOUT mode disables signals entirely. Exit conditions also support three modes — buy positions can close on sell signal dots or a declining J2JMA line, while sell positions can close on buy signal dots or a rising J2JMA line. Position sizing is controlled by the MM parameter as a risk fraction, with MMMode offering four modes: free margin-based, balance-based, loss-adjusted margin/balance, or fixed lot size. Money management is delegated to TradeAlgorithms.mqh library functions (BuyPositionOpen/SellPositionOpen) which handle stop-loss and take-profit placement. The EA calculates signals only on new bar formation or when SignalBar is zero, avoiding redundant per-tick calculations for efficiency.
Strengths
- Supports multiple entry and exit signal modes (POINT, DIRECT, WITHOUT) providing high flexibility for different market conditions
- J2JMA dual-smoothed filter reduces false signals while standard deviation bands offer dynamic volatility reference
- New bar detection mechanism prevents redundant per-tick calculations, improving execution efficiency
- Four margin management modes provide flexible money management options
- Complete stop-loss and take-profit parameters form a solid basic risk control framework
Weaknesses
- Depends on external TradeAlgorithms.mqh library and ColorJ2JMAStDev custom indicator — without them the EA cannot compile or run
- No spread filter mechanism, potentially leading to unfavorable fills in high-spread environments
- Default SL=1000 and TP=2000 points are excessively large and likely unsuitable for most instruments without optimization
- Lacks explicit position existence checks before opening new trades, risking duplicate positions
- Indicator parameters (Length, Phase, dK) lack adaptive mechanisms and require manual optimization
Possible improvements
- Add spread filtering and maximum position checks to prevent high-spread slippage and duplicate position opening
- Implement parameter adaptation or dynamic SL/TP based on ATR or volatility for automatic parameter adjustment
Risk assessment
Overall risk: Medium
- Dependency on external library and custom indicator — missing any component causes EA initialization failure
- No explicit position existence check before opening trades, risking duplicate positions on the same signal
- Default SL/TP values are extremely large (1000/2000 points), creating excessive risk exposure without optimization
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 slippage deviation |
BuyPosOpen | POINT | Buy entry signal mode |
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 |
Length1 | 5 | First J2JMA smoothing period |
Length2 | 5 | Second J2JMA smoothing period |
Phase1 | 100 | First J2JMA phase parameter (-100 to +100) |
Phase2 | 100 | Second J2JMA phase parameter (-100 to +100) |
IPC | PRICE_CLOSE_ | Indicator applied price type |
dK1 | 1.5 | Standard deviation multiplier 1 |
dK2 | 2.5 | Standard deviation multiplier 2 |
std_period | 9 | Standard deviation period |
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.