Tags:

This strategy is a combo reversal trading strategy based on a dual-factor model. It integrates the 123 reversal pattern and the Mass Index factors to achieve a cumulative effect for the strategy signals. It will only go long or short when both factors emit a buy or sell signal simultaneously.

This factor operates based on the 123 price pattern. When the closing price relationship over the past two days is “low-high” and the Stoch indicator is below 50, it signals a bottom reversal and goes long. When the closing price relationship is “high-low” and Stoch is above 50, it signals a top reversal and goes short.

This factor judges trend reversals based on the expansion or contraction of the price fluctuation range. As the range expands, the index rises and as the range narrows, the index falls. It generates a sell signal when the index crosses above a threshold and a buy signal when crossing below a threshold.

The strategy only opens positions when the two factors emit signals in the same direction, achieving profitable trades while avoiding false signals from a single factor.

- Dual-factor model combines price pattern and volatility indicator for better signal accuracy
- 123 pattern catches local extremums, Mass Index captures global trend reversal points, complementary strengths
- Only taking signals when two factors agree avoids false signals and enhances stability

- Probability exists for both factors to emit wrong signals concurrently, causing losses
- Failure rate of reversals exists, need to set stop loss to control downside
- Improper parameter tuning may lead to overfitting

Risks can be reduced via expanding training set, strict stop loss, multi-factor filtering etc.

- Test more price and volatility indicator combinations
- Add ML model to judge signal quality and dynamically size positions
- Incorporate volume, Bollinger Bands etc. to discover more alpha
- Employ walk forward optimization for robustness

This strategy combines two factors, price pattern and volatility indicator, to only take signals when they agree, avoiding false signals from a single factor and improving stability. But risks remain for concurrent wrong signals. We can further enhance performance and risk-adjusted returns by expanding dataset, setting stop loss, optimizing factor combinations and more.

/*backtest start: 2023-11-25 00:00:00 end: 2023-12-25 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 22/02/2021 // This is combo strategies for get a cumulative signal. // // First strategy // This System was created from the Book "How I Tripled My Money In The // Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies. // The strategy buys at market, if close price is higher than the previous close // during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. // The strategy sells at market, if close price is lower than the previous close price // during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50. // // Second strategy // The Mass Index was designed to identify trend reversals by measuring // the narrowing and widening of the range between the high and low prices. // As this range widens, the Mass Index increases; as the range narrows // the Mass Index decreases. // The Mass Index was developed by Donald Dorsey. // // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// Reversal123(Length, KSmoothing, DLength, Level) => vFast = sma(stoch(close, high, low, Length), KSmoothing) vSlow = sma(vFast, DLength) pos = 0.0 pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1, iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) pos MASS(Length1,Length2,Trigger) => pos = 0.0 xPrice = high - low xEMA = ema(xPrice, Length1) xSmoothXAvg = ema(xEMA, Length1) nRes = sum(iff(xSmoothXAvg != 0, xEMA / xSmoothXAvg, 0), Length2) pos := iff(nRes > Trigger, -1, iff(nRes < Trigger, 1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & MASS Index", shorttitle="Combo", overlay = true) line1 = input(true, "---- 123 Reversal ----") Length = input(14, minval=1) KSmoothing = input(1, minval=1) DLength = input(3, minval=1) Level = input(50, minval=1) //------------------------- line2 = input(true, "---- MASS Index ----") Length1 = input(9, minval=1) Length2 = input(25, minval=1) Trigger = input(26.5, step = 0.01) reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posMASS = MASS(Length1,Length2,Trigger) pos = iff(posReversal123 == 1 and posMASS == 1 , 1, iff(posReversal123 == -1 and posMASS == -1, -1, 0)) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1 , 1, pos)) if (possig == 1 ) strategy.entry("Long", strategy.long) if (possig == -1 ) strategy.entry("Short", strategy.short) if (possig == 0) strategy.close_all() barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )

- Moving Average Envelopes Trading Strategy
- Dual Moving Average Golden Cross Quantitative Strategy
- Quantitative Reversal Index Strategy Integrating Dual Trend Signals
- Inertia Indicator Trading Strategy
- Bollinger Band RSI Dual Line Strategy
- Dynamic Support Resistance Breakout Trend Strategy
- Rainbow Oscillator Backtesting Strategy
- Larry Williams' Moving Average Crossover Strategy
- Oscillator Differential Moving Average Timing Strategy
- A DMI & Stochastic Trading Strategy with Dynamic Stop-loss
- Quantitative Trading Strategy Based on Double Trend Filter
- Stochastic RSI Momentum Oscillation Trading Strategy
- Trading Strategy of Short Selling When Bollinger Band Crosses Below Price with RSI Callback
- Moving Average Crossover Strategy
- Trend Tracking Strategy Based on Dynamic Pivot Bands
- Bollinger Bands Momentum Trend Following Strategy
- Dynamic Buying Selling Volume Breakout Strategy
- Supertrend MACD Quantitative Strategy
- 4 EMA Trend Strategy
- Bitcoin Trading Strategy Based on Quantitative Indicators