EA-1315 · Trend Following

Exp_ColorJVariation

This EA trades based on the ColorJVariation custom indicator, which is a JMA-smoothed variation oscillator. It opens buy positions when the indicator value rises consecutively (Value[0]>Value[1]>Value[2] pattern) and sell positions when it falls consecutively, with separate permissions for entry and exit.

Open the interactive view (equity curve, symbol switch)

Key facts

RiskMedium
Blow-up riskLow
Rating★★★☆☆
TypeTrading EA
TimeframesH1, H4, D1
IndicatorsColorJVariation, JMA
AuthorCopyright © 2012, Nikolay Kositsin

Backtest results (H1, about 1 year)

SymbolP&LAnnualMax DDTradesWin rateSharpeRecoveryLosing streakPer tradeStatus
EURUSD0.00%0.00%0.00%0—————Not convertible yet
GBPUSD0.00%0.00%0.00%0—————Not convertible yet
USDJPY0.00%0.00%0.00%0—————Not convertible yet
XAUUSD0.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 momentum changes in the ColorJVariation indicator to determine trend direction. Entry conditions: a buy signal triggers when Value[1]<Value[2] (prior decline) and Value[0]>Value[1] (current recovery), indicating weakening downward momentum and potential upward reversal; a sell signal triggers when Value[1]>Value[2] (prior rise) and Value[0]<Value[1] (current decline), indicating weakening upward momentum. Exit conditions: the buy signal simultaneously triggers closing of short positions, and the sell signal triggers closing of long positions, enabling automatic position reversal on trend changes. Position sizing is controlled by the MM parameter where negative values represent fixed lot sizes and positive values represent deposit share percentage. Money management uses fixed stop loss and take profit in points (StopLoss=1000, TakeProfit=2000), yielding a risk-reward ratio of 1:2. The strategy employs an IsNewBar mechanism to calculate signals only on new bar formation, avoiding redundant per-tick calculations.

Strengths

  • Uses JMA-smoothed custom indicator for higher signal quality compared to simple moving averages
  • Independent entry and exit permission controls offer high flexibility to disable buy or sell independently
  • Employs IsNewBar mechanism to avoid redundant per-tick calculations, improving efficiency
  • Risk-reward ratio of 1:2 with take profit exceeding stop loss, positive long-term expectancy
  • Signal logic based on momentum reversal can capture trend turning points

Weaknesses

  • Lacks spread filter, which may lead to unfavorable fills during high-spread conditions
  • No position check before opening, risking duplicate positions and oversized exposure
  • Depends on custom ColorJVariation indicator file; EA fails if indicator is missing
  • Stop loss of 1000 points is relatively large, potentially causing significant single-trade losses
  • SignalBar=0 triggers per-tick recalculation while SignalBar=1 uses new-bar logic, creating inconsistent behavior

Possible improvements

  • Add spread filter and open position count check to avoid high-slippage entries and duplicate positions
  • Add trailing stop functionality to lock in partial profits during extended trends

Risk assessment

Overall risk: Medium

  • No position check may lead to duplicate position opening and uncontrolled exposure
  • Stop loss of 1000 points is large and can cause significant losses on leveraged accounts
  • Depends on external indicator file; missing indicator yields no signals but EA does not safely exit

Evaluation scores

Code quality3.0
Strategy logic3.0
Risk management2.0
Robustness2.0
Innovation3.0
Documentation2.0
Overall2.5

Parameters

ParameterDefaultDescription
MM-0.1Funding ratio or fixed lots; negative = lots, positive = deposit ratio
StopLoss_1000Stop loss in points
TakeProfit_2000Take profit in points
Deviation_10Maximum price slippage
BuyPosOpentrueAllow buy position open
SellPosOpentrueAllow sell position open
BuyPosClosetrueAllow close long position
SellPosClosetrueAllow close short position
InpInd_TimeframePERIOD_D1Indicator timeframe
Period_12Averaging period
MA_Method_MODE_SMAAveraging method
JLength_3JMA smoothing depth
JPhase_100JMA smoothing parameter (-100 to +100)
Shift0Indicator horizontal shift
SignalBar1K-line index for entry signal

Similar Trend Following 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.