Exp_JMACandleSign
This EA trades based on signals from the custom JMACandleSign indicator, which generates buy/sell signals based on JMA-smoothed candlestick patterns. It opens buy positions on upward signals and sell positions on downward signals, with configurable position closing logic and money management options.
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 strategy concept is based on the JMACandleSign custom indicator, which uses the JMA (Jurik Moving Average) smoothing algorithm to process candlestick data and generate directional signals. Entry conditions are: a buy position opens when indicator buffer 1 (UpValue) shows a non-zero, non-EMPTY_VALUE on the specified signal bar, and a sell position opens when buffer 0 (DnValue) shows a non-zero, non-EMPTY_VALUE. Exit conditions fall into two categories: reverse-signal closing (e.g., closing sell positions when an up signal appears, closing buy positions when a down signal appears) and fixed stop-loss/take-profit closing. Position sizing supports five modes: by free margin percentage, by balance percentage, by free margin minus losses percentage, by balance minus losses percentage, and fixed lot mode. Money management is controlled via the MM parameter for risk ratio and the MMMode parameter for calculation mode, defaulting to fixed lot mode (LOT). The EA also includes a history data loading mechanism and new bar detection logic to prevent repeated trading within the same bar. When both opening and closing conditions are enabled but no closing signal is detected, the EA backtracks through historical bars to find the most recent reverse signal as a closing basis.
Strengths
- JMA smoothing algorithm reduces false signals, being more responsive and smoother than standard moving averages
- Flexible money management with five position sizing modes to suit different trading needs
- Opening and closing logic can be independently configured, allowing combinations like open-only or close-only
- New bar detection mechanism prevents repeated trading within the same bar
- Configurable stop-loss and take-profit parameters provide basic risk control
Weaknesses
- Depends on external custom indicator JMACandleSign; EA fails if the indicator file is missing
- Backtracking historical bars for closing signals is inefficient and may cause performance issues with many bars
- No spread filter mechanism, which may lead to unfavorable fills in high-spread environments
- Default stop-loss of 1000 points and take-profit of 2000 points are large and may not suit all instruments
- Many comments are garbled due to encoding issues, hurting readability and maintainability
Possible improvements
- Add spread filter and trading session filter to avoid opening positions during high spreads and off-hours
- Optimize the bar backtracking closing logic by limiting maximum backtrack bars or using a caching mechanism for efficiency
- Add position check and duplicate order protection logic to prevent repeated position opening in extreme cases
Risk assessment
Overall risk: Medium
- Default stop-loss and take-profit values are large, potentially creating unnecessary risk on low-volatility instruments
- No spread filter may result in unfavorable fill prices during low liquidity conditions
- The bar backtracking closing logic may fail to find appropriate closing signals in extreme market conditions, leading to delayed exits
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
MM | 0.1 | Money management ratio or fixed lot size |
MMMode | LOT | Position sizing mode (free margin/balance/loss-free margin/loss-balance/fixed lot) |
StopLoss_ | 1000 | Stop loss in points |
TakeProfit_ | 2000 | Take profit in points |
Deviation_ | 10 | Maximum allowed slippage in points |
BuyPosOpen | true | Enable buy position opening |
SellPosOpen | true | Enable sell position opening |
BuyPosClose | true | Enable buy position closing |
SellPosClose | true | Enable sell position closing |
InpInd_Timeframe | PERIOD_H4 | Timeframe for JMACandleSign indicator |
JLength | 7 | JMA smoothing length parameter |
JPhase | 100 | JMA phase parameter (-100 to +100) |
SignalBar | 1 | Bar index used for signal detection |
Similar Candlestick Pattern EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.