EA-1426 · Momentum

Exp_ColorSchaffTrendCycle

This EA trades based on the ColorSchaffTrendCycle indicator, a momentum-based oscillator that combines moving average convergence/divergence with stochastic smoothing. It opens buy positions when the indicator crosses above the upper threshold and sell positions when it crosses below the lower threshold, with configurable stop loss and take profit levels.

Open the interactive view (equity curve, symbol switch)

Key facts

CategoryMomentum
RiskMedium
Rating★★☆☆☆
TypeTrading EA
TimeframesH1, H4, D1
IndicatorsSchaff Trend Cycle, EMA, Stochastic Oscillator
AuthorCopyright © 2012, Nikolay Kositsin

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 Schaff Trend Cycle indicator, which essentially combines the convergence/divergence characteristics of MACD with the smoothing technique of a stochastic oscillator, making it a momentum-type indicator. Entry conditions: when buffer 1 of the indicator exceeds 6, a buy signal is generated; if the previous bar's value is also >= 6 and buying is permitted, a long position is opened. When buffer 1 falls below 2, a sell signal is generated; similarly, if conditions are met, a short position is opened. Exit conditions rely on stop loss and take profit parameters, as well as counter-signal exits — closing short positions on buy signals and closing long positions on sell signals. Position sizing uses either a fixed lot size or a deposit-proportion-based dynamic lot (negative MM value means fixed lot size, positive value means deposit share). Money management is controlled via the MM parameter supporting two modes: negative values as fixed lot sizes and positive values as deposit percentage shares. The EA only checks signals on new bar formation (when SignalBar=0), avoiding repeated trades within the same bar, and uses a Recount mechanism to ensure recalculation when data retrieval fails.

Strengths

  • Clear strategy logic based on the mature Schaff Trend Cycle indicator, combining momentum and trend-following dual characteristics
  • Provides complete trading permission controls (independent buy/sell open and close switches), offering high flexibility
  • Uses new bar detection mechanism to avoid repeated trades within the same bar, reducing overtrading risk
  • Well-configured stop loss and take profit with default SL of 1000 points and TP of 2000 points, providing a reasonable 2:1 reward-risk ratio
  • Supports multiple smoothing algorithms and price types, offering strong parameter adjustability

Weaknesses

  • Stop loss of 1000 points and take profit of 2000 points are excessively large, potentially causing significant drawdown on most currency pairs
  • Lacks spread filtering mechanism, which may lead to unfavorable entries during high-spread conditions
  • No trailing stop functionality, meaning profitable positions may experience significant retracements before hitting take profit
  • Indicator buffer threshold checks (>6 and <2) use hardcoded magic numbers, resulting in poor readability and adjustability
  • Does not check for existing same-direction positions, potentially leading to duplicate openings and overconcentration

Possible improvements

  • Make indicator buffer thresholds (6 and 2) configurable input parameters to improve strategy flexibility and code readability
  • Add position checking logic to avoid duplicate same-direction openings that lead to overconcentration
  • Add trailing stop functionality to protect existing profits

Risk assessment

Overall risk: Medium

  • Large stop loss in points (1000) — if point value is high, a single loss could represent a significant portion of the account
  • Lack of position checking may lead to duplicate same-direction openings, resulting in excessive risk exposure
  • Indicator thresholds use hardcoded magic numbers, making it difficult to optimize for different market conditions

Evaluation scores

Code quality3.0
Strategy logic3.0
Risk management2.0
Robustness3.0
Innovation2.0
Documentation2.0
Overall2.5

Parameters

ParameterDefaultDescription
MM-0.1Money management ratio controlling risk per trade
StopLoss_1000Stop loss in points
TakeProfit_2000Take profit in points
Deviation_10Maximum allowed slippage in points
BuyPosOpentrueAllow opening long positions
SellPosOpentrueAllow opening short positions
BuyPosClosetrueAllow closing long positions
SellPosClosetrueAllow closing short positions
InpInd_TimeframePERIOD_H4Indicator timeframe
XMA_MethodMODE_EMAHistogram smoothing method
Fast_XMA23Fast moving average period
Slow_XMA50Slow moving average period
XPhase100MA smoothing parameter (-100 to +100)
AppliedPricePRICE_CLOSE_Price constant for indicator calculation
Cycle10Stochastic oscillator period
HighLevel+60Overbought level
LowLevel-60Oversold level
SignalBar1Bar index for entry signal

Similar Momentum EAs

Backtests are historical simulations and do not guarantee future results. Not financial advice.

Get the weekly Arena report

One email a week: ranking changes, new signals and new research. No spam; unsubscribe any time.