Exp_ColorSchaffRVITrendCycle
This EA trades based on the ColorSchaffRVITrendCycle custom indicator, which combines fast and slow RVI (Relative Vigor Index) with a cycle-based trend detection algorithm. It opens buy positions when the indicator signals bullish momentum (color buffer >5 crossing from neutral) and sell positions on bearish momentum (color buffer <2 crossing from neutral), with configurable stop loss and 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 is based on the Schaff RVI Trend Cycle indicator, which fuses a fast RVI (period 23) and a slow RVI (period 50) through a cyclical algorithm (cycle period 10) to generate trend direction signals. Entry conditions are: a buy position opens when the indicator color buffer value exceeds 5 and the previous value was below 6, while a sell position opens when the color buffer value drops below 2 and the previous value was above 1. Exit conditions rely on fixed stop loss (1000 points) and take profit (2000 points) levels, with optional closing on opposing signals via BuyPosClose and SellPosClose parameters. Position sizing supports multiple modes including fixed lot, balance-based, free margin-based, and loss-adjusted margin calculations. Money management is flexibly configured through the MarginMode enum, defaulting to fixed lot mode (LOT). The strategy employs a new bar detection mechanism to prevent duplicate signals, but recalculates only under specific conditions which may introduce signal latency.
Strengths
- Dual-period RVI with cycle fusion algorithm effectively captures trend reversal points and reduces false signals
- Flexible money management supporting fixed lot, balance-based, margin-based and other sizing modes
- Well-configured stop loss and take profit with a default 2:1 reward-to-risk ratio favoring long-term positive expectancy
- New bar detection mechanism prevents duplicate entries within the same bar, reducing overtrading
- Independent control over buy/sell opening and closing provides high configuration flexibility
Weaknesses
- Depends on custom indicator ColorSchaffRVITrendCycle which must be installed separately and is not in the standard library, increasing deployment complexity
- Default stop loss of 1000 points and take profit of 2000 points are large and may be unsuitable for lower timeframes or highly volatile instruments
- Lacks spread filter and trading session filter, potentially leading to unfavorable fills during low-liquidity or high-spread periods
- Magic numbers in color buffer thresholds (5, 6, 1, 2) are unclear with no explanatory comments
- No position count check, potentially opening duplicate positions in the same direction
Possible improvements
- Add spread filter and trading session controls to avoid trading during high-spread and low-liquidity periods
- Add position checking logic to prevent duplicate same-direction entries, and consider implementing a maximum position count limit
- Replace hardcoded color buffer threshold magic numbers with configurable input parameters to improve strategy adaptability
Risk assessment
Overall risk: Medium
- No position count check may lead to duplicate same-direction entries causing excessive exposure
- No spread filter or session control may result in trades during unfavorable market conditions
- Dependency on external custom indicator means initialization failure if indicator file is missing or version-mismatched
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
MM | 0.1 | Lot size or money management ratio |
MMMode | LOT | Position sizing mode (margin/balance/fixed lot, etc.) |
StopLoss_ | 1000 | Stop loss in points |
TakeProfit_ | 2000 | Take profit in points |
Deviation_ | 10 | Maximum allowed slippage |
BuyPosOpen | true | Allow opening buy positions |
SellPosOpen | true | Allow opening sell positions |
BuyPosClose | true | Allow closing long positions |
SellPosClose | true | Allow closing short positions |
InpInd_Timeframe | PERIOD_H4 | Indicator calculation timeframe |
Fast_RVI | 23 | Fast RVI period |
Slow_RVI | 50 | Slow RVI period |
Cycle | 10 | Schaff Trend Cycle period |
HighLevel | +60 | Overbought threshold level |
LowLevel | -60 | Oversold threshold level |
SignalBar | 1 | Bar index for signal retrieval |
Similar Momentum EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.