Эта стратегия сочетает в себе сильные стороны индикаторов двойного механизма с использованием модели 123 для определения сигналов реверсии и с помощью индекса объема цен для определения сигналов импульса, с тем чтобы зафиксировать краткосрочные тенденции реверсии.
123 схема для сигналов обратного движения
Построен с 9-дневной быстрой и медленной линией Стоха
Когда цена закрытия падает в течение 2 дней подряд и повышается на 3-й день, а быстрая линия Stoch ниже 50, генерируется сигнал покупки
Когда цена закрытия повышается в течение 2 дней подряд и падает на 3-й день, а быстрая линия Stoch выше 50, генерируется сигнал продажи
Индекс объема цены на сигнал импульса
PVI оценивает импульс путем сравнения изменения объема между предыдущим и текущим днем
Когда PVI пересекает пересечение передвижной средней за N дней, импульс усиливается и генерируется сигнал покупки.
Когда PVI переходит ниже скользящей средней за N дней, импульс снижается и генерируется сигнал продажи.
Сочетание двух сигналов
В целом, данная стратегия использует преимущества показателей двойного механизма для эффективного выявления краткосрочных возможностей для изменения ценовых показателей.
123 модели ловит ключевые краткосрочные точки переворота
PVI оценивает скоординированные действия между ценой и объемом для предотвращения ложных прорывов
Оптимизированный параметр Stoch фильтрует большинство сигналов шума в турбулентных зонах
Достоверность двойного сигнала выше, чем односигнала
Внутреннедневный дизайн позволяет избежать рисков на сутки, подходящих для краткосрочной торговли
Риск неудачной реверсии
Риски сбоя показателей
Риск пропуска двойного сигнала
Риски высокой частоты торговли
Большое пространство оптимизации параметров
Может включать стратегии стоп-лосса
Подумайте о добавлении условий фильтра
Оптимизация портфеля двойного сигнала
Эта стратегия образует высоконадежную краткосрочную систему обратного движения цены и объема через сочетание индикаторов Stoch и PVI. По сравнению с одиночными индикаторами она имеет более высокий показатель выигрыша и положительные ожидания. Соотношение Sharpe может быть улучшено с помощью оптимизации и контроля рисков. В заключение, эта стратегия использует сильные стороны индикаторов двойного механизма для эффективного захвата краткосрочных возможностей обратного движения на рынке и стоит тестирования и оптимизации в режиме реального времени.
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 22/04/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 theory behind the indexes is as follows: On days of increasing volume, // you can expect prices to increase, and on days of decreasing volume, you can // expect prices to decrease. This goes with the idea of the market being in-gear // and out-of-gear. Both PVI and NVI work in similar fashions: Both are a running // cumulative of values, which means you either keep adding or subtracting price // rate of change each day to the previous day`s sum. In the case of PVI, if today`s // volume is less than yesterday`s, don`t add anything; if today`s volume is greater, // then add today`s price rate of change. For NVI, add today`s price rate of change // only if today`s volume is less than yesterday`s. // // 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 PVI(EMA_Len) => pos = 0.0 xROC = roc(close, 1) nRes = 0.0 nResEMA = 0.0 nRes := iff(volume > volume[1], nz(nRes[1], 0) + xROC, nz(nRes[1], 0)) nResEMA := ema(nRes, EMA_Len) pos := iff(nRes > nResEMA, 1, iff(nRes < nResEMA, -1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & Positive Volume 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, "---- Positive Volume Index ----") EMA_Len = input(255, minval=1) reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posPVI = PVI(EMA_Len) pos = iff(posReversal123 == 1 and posPVI == 1 , 1, iff(posReversal123 == -1 and posPVI == -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 )