
Комбинированная стратегия, объединяющая стратегию обратного тренда и стратегию прорыва. Эта стратегия позволяет более точно улавливать рыночные переменные точки, используя одновременно сигналы обратного тренда и сигналы динамического индикатора, чтобы вовремя войти в рынок.
Стратегия состоит из двух частей:
123 Стратегия обратного движения: когда цена закрытия 2 дня подряд ниже цены закрытия предыдущего дня, и 9 день медленный K-линия ниже 50, и когда цена закрытия 2 дня подряд выше цены закрытия предыдущего дня, и 9 день быстрый K-линия выше 50, и когда цена закрытия 2 дня подряд выше цены закрытия предыдущего дня, и 9 день быстрый K-линия выше 50, и когда цена закрытия 2 дня подряд выше цены закрытия предыдущего дня, и 9 день медленный K-линия выше 50.
DAPD динамическая стратегия прорыва: DAPD - средняя разница между высоким и низким уровнем за последние 21 день. Вход и выход определяются в зависимости от прорыва DAPD вверх и вниз.
Когда два стратегических сигнала совпадают, посылают входный сигнал; когда сигнал направлен в противоположном направлении, временно остаются в живых.
Эта стратегия сочетает в себе преимущества стратегий обратного отсчета и динамического отсчета, позволяя более точно фиксировать переломные моменты цены. Основные преимущества:
Двойная фильтрация повышает надежность сигнала. При синхронном сигнале, более высокий уровень успеха.
123 Формовочное суждение может снизить риск обратной позиции.
Движимый показатель DAPD, подходящий для трендовых сортов.
Риск совпадения точек времени сигналов. Возможны отклонения во времени появления сигналов двух стратегий.
Риск сложности ссылки. Оптимизировать одновременно два параметра стратегии нелегко.
Риск двойных затрат на торговлю. Каждый раз, когда открывается позиция, необходимо платить одновременно комиссионные за обе стратегии.
Оптимизация параметров двух стратегий, чтобы сигналы были максимально синхронизированы.
Исследование эффективности различных сортов с использованием различных комбинаций параметров.
Попытайтесь открывать позиции только при сильных стратегических сигналах и фильтруйте слабые сигналы.
Тренд-обратная объемная стратегия, использующая преимущества обратной стратегии и динамической стратегии, позволяет точно и своевременно вступать в игру, когда цена начинает переворачиваться. Двойной механизм фильтрации повышает успех сигнала.
/*backtest
start: 2023-12-28 00:00:00
end: 2024-01-04 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 10/12/2019
// 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
// This indicator is similar to Bollinger Bands. It based on DAPD - Daily
// Average Price Delta. DAPD is based upon a summation for each of the
// highs (hod) for the 21 days prior to today minus the summation for
// each of the lows (lod) for the last 21 days prior to today. The result
// of this calculation would then be divided by 21.
// It will be buy when high above previos DAPD high and sell if low below previos DAPD low
//
// 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
DAPD(Length) =>
pos = 0.0
xHighSMA = sma(high, Length)
xLowSMA = sma(low, Length)
nDAPD = xHighSMA - xLowSMA
nTop = high + nDAPD
nBottom = low - nDAPD
pos := iff(high > nTop[1], 1,
iff(low < nBottom[1], -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & DAPD", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
LengthDAPD = input(21, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posDAPD = DAPD(LengthDAPD)
pos = iff(posReversal123 == 1 and posDAPD == 1 , 1,
iff(posReversal123 == -1 and posDAPD == -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 )