Стратегия многофакторного отслеживания реверсии генерирует торговые сигналы путем включения моделей реверсии цен и показателей перекупленности и перепроданности. Она синтезирует несколько факторов для определения максимумов и минимумов рынка и производит торговые сигналы в точках реверсии для захвата средне-короткосрочных перемен цен.
Стратегия состоит из двух модулей:
Пройдите короткий, когда вы увидите 2-дневный новый максимум, но снижение на 3-й день, что указывает на потенциальный краткосрочный максимум.
Продолжайте, когда увидите 2-дневный новый минимум, но отскочите на 3-й день, что указывает на потенциальный краткосрочный минимум.
Определить точки перелома путем динамической корректировки показателя RSI линий перекупленных и перепроданных.
Пройдите короткий, когда RSI выше скорректированной линии перекупленности, пройдите длинный, когда RSI ниже скорректированной линии перепроданности.
Торговые сигналы генерируются только при выравнивании обоих модулей.
Самое большое преимущество заключается в том, что для определения структурных максимумов и минимумов используются несколько факторов, фильтруются некоторые ложные сигналы от отдельных факторов и улучшается фактический уровень выигрыша торговли.
Многофакторный синтез для всеобъемлющей идентификации высокой/низкой
Сочетает в себе тенденции реверсии и показатели перекупа/перепродажи
Фильтрует ложные перевороты, улучшает точность
Оптимизируемые параметры обратных испытаний, адаптируемые к различным рынкам
Легко внедряется для быстрой репликации
Сигналы обратного движения могут задерживаться, требуется обновление параметров
Предотвратить переоценку, чтобы избежать большей комиссии
Необходимо еще рассмотреть основные показатели отдельных запасов.
Стратегии реверсии, более подходящие для индексов и горячих акций
Стратегия многофакторного отслеживания обратного движения идеально сочетает в себе сильные стороны квантовых инструментов и опыта ручного анализа, учитывая несколько перспектив для торговых сигналов. По сравнению со стратегиями с одним индикатором она значительно повышает фактическую стабильность торговли и показатель выигрыша. Стратегия стоит проверить и оптимизировать сначала в бэктестах, а затем постепенно внедрять в живую торговлю, с очень выраженной практической ценностью.
/*backtest start: 2023-08-15 00:00:00 end: 2023-09-14 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 15/06/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 related article is copyrighted material from // Stocks & Commodities. // // 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 RE_RSI(Value,WildPer) => pos = 0.0 AUC = 0.0 ADC = 0.0 ExpPer = 2 * WildPer - 1 K = 2 / (ExpPer + 1) AUC := iff(close > close[1], K * (close - close[1]) + (1 - K) * nz(AUC[1], 1), (1-K) * nz(AUC[1], 1)) ADC := iff(close > close[1], (1-K) * nz(ADC[1], 1), K * (close[1] - close) + (1 - K) * nz(ADC[1], 1)) nVal = (WildPer - 1) * (ADC * Value / (100 - Value) - AUC) nRes = iff(nVal >= 0, close + nVal, close + nVal * (100 - Value) / Value) pos:= iff(nRes > close, -1, iff(nRes < close, 1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & Reverse Engineering RSI, by Giorgos Siligardos", 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, "---- Reverse Engineering RSI ----") Value = input(50, minval=1) WildPer = input(14,minval=1) reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posRE_RSI = RE_RSI(Value,WildPer) pos = iff(posReversal123 == 1 and posRE_RSI == 1 , 1, iff(posReversal123 == -1 and posRE_RSI == -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 )