Exp_ColorSchaffJJRSXTrendCycle
This EA trades based on the ColorSchaffJJRSXTrendCycle custom indicator, which combines JJRSX (Jurik Relative Strength Index) with Schaff Trend Cycle logic. It opens buy positions when the indicator signals an uptrend and sell positions on downtrend signals, with configurable money management and stop loss/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 based on the ColorSchaffJJRSXTrendCycle indicator, which combines JJRSX (a smoothed variant of the Jurik Relative Strength Index) with Schaff Trend Cycle oscillator logic to identify directional shifts in market momentum. Entry conditions are: a buy position opens when the indicator color value exceeds 5 and the previous value was below 6, while a sell position opens when the color value drops below 2 and the previous value was above 1, essentially capturing turning points in the trend cycle. Exit conditions include both active and passive exits: active exits close positions based on opposing indicator signals (BuyPosClose/SellPosClose flags), while passive exits rely on fixed stop loss and take profit parameters. Position sizing leverages multiple modes from the TradeAlgorithms.mqh library, including calculation based on free margin, balance, post-loss margin percentage, or fixed lot size, with the default using fixed lot mode (LOT). Money management is controlled by the MM parameter at a default risk ratio of 0.1, but it lacks dynamic position adjustment mechanisms based on volatility or ATR. The strategy incorporates a new bar detection mechanism to prevent duplicate trades and uses the SignalBar parameter to evaluate signals on a specified bar to reduce latency.
Strengths
- Uses dual smoothing with Schaff Trend Cycle and JJRSX, providing stable signals that effectively filter market noise
- Offers multiple money management modes with high flexibility to accommodate different risk preferences
- Incorporates new bar detection to prevent duplicate trades within the same bar, reducing unnecessary trading costs
- Buy/sell open and close controls can be independently toggled, providing flexible strategy configuration
- Configurable stop loss and take profit parameters provide a basic risk control framework
Weaknesses
- Depends on the custom ColorSchaffJJRSXTrendCycle indicator which must be installed separately and its internal logic cannot be directly verified
- Default stop loss of 1000 points and take profit of 2000 points are large values that may result in excessive risk exposure on certain instruments
- Lacks a spread filter mechanism, which may lead to unfavorable fills on instruments with wide spreads
- No position count limit, potentially allowing multiple entries on consecutive signals leading to over-concentration risk
- Indicator thresholds (color value >5 or <2) are hardcoded magic numbers lacking configurability and logical transparency
Possible improvements
- Add a spread filter mechanism to pause trading when spread exceeds a threshold, avoiding unfavorable fills
- Add a maximum position count limit to prevent over-concentration risk in a single direction
- Parameterize the indicator color thresholds (currently hardcoded 5, 6, 2, 1) to improve strategy adjustability and transparency
- Add ATR-based dynamic stop loss and take profit calculation to replace fixed point values for better adaptation to varying market volatility
Risk assessment
Overall risk: Medium
- Depends on an external custom indicator; if the indicator file is missing or updated incompatibly, the EA will fail to run
- Fixed point stop loss/take profit may be inappropriate across different volatility environments - too far for low-volatility instruments and too close for high-volatility ones
- No maximum position limit; consecutive same-direction signals may lead to excessive position accumulation
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
MM | 0.1 | Money management parameter controlling position size |
MMMode | LOT | Lot calculation mode (fixed lot or margin ratio) |
StopLoss_ | 1000 | Stop loss in points |
TakeProfit_ | 2000 | Take profit in points |
Deviation_ | 10 | Maximum allowed slippage |
BuyPosOpen | true | Allow opening long positions |
SellPosOpen | true | Allow opening short positions |
BuyPosClose | true | Allow closing long positions |
SellPosClose | true | Allow closing short positions |
InpInd_Timeframe | PERIOD_H4 | Indicator calculation timeframe |
Fast_JJRSX | 23 | JJRSX fast period parameter |
Slow_JJRSX | 50 | JJRSX slow period parameter |
Smooth | 8 | JJMA smoothing period |
JPhase | 100 | JJMA phase parameter |
IPC | PRICE_CLOSE_ | Applied price type |
Shift | 0 | Indicator horizontal shift |
Cycle | 10 | Trend cycle period |
HighLevel | +60 | High threshold level |
MiddleLevel | 0 | Middle threshold level |
LowLevel | -60 | Low threshold level |
SignalBar | 1 | Bar index for signal detection |
Similar Momentum EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.