
Это стратегия, которая сочетает в себе случайные RSI, EMA-пересечения и VMACD, используется для идентификации точек переворота рынка, которые лучше всего работают, когда нисходящая тенденция собирается перевернуться.
Стратегия основана на комбинации следующих показателей:
Когда случайный RSI отскочит от зоны перепродажи и пройдет медленную линию на скоростной линии EM, в то время как VMACD также начнет расти, будет произведен сигнал покупки. Кроме того, если краткосрочная цена прорвет 10-циклический SMA (простая движущаяся средняя), будет произведен сигнал покупки в качестве вспомогательного.
Стратегия будет отслеживать изменения этих показателей в реальном времени и рассчитывать информацию о SMA, EMA и т. д. после определенной длины. После запуска условий покупки будет использоваться фиксированное количество контрактов для открытия позиции. После запуска условий остановки, например, 5% или ниже линии SMA, будет закрыта позиция.
Эта стратегия объединяет несколько показателей, которые позволяют эффективно идентифицировать возможности для рыночного переворота. Основные преимущества:
В целом, эта стратегия позволяет эффективно ловить обратные сигналы и создавать многообещающие позиции, чтобы получить прибыль после падения до определенного уровня.
Несмотря на определенные преимущества этой стратегии, существуют некоторые риски, о которых следует помнить, в частности:
Для этих рисков можно оптимизировать следующие действия:
Стратегия может быть оптимизирована в следующих направлениях:
Стратегия искателя волн, объединенная в VRSI-EMA и VMACD, в целом является хорошей стратегией для выявления возможности обратного обмена. Она объединяет несколько показателей, формирующих сигнал покупки, чтобы эффективно определить время обратного обмена.
/*backtest
start: 2022-11-14 00:00:00
end: 2023-11-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("Wavefinder+", overlay=true)
length = input(20)
confirmBars = input(2)
price = close
slow = input(12, "Short period")
fast = input(26, "Long period")
signal = input(9, "Smoothing period")
maFast = ema( volume * close, fast ) / ema( volume, fast )
maSlow = ema( volume * close, slow ) / ema( volume, slow )
da = maSlow - maFast
maSignal = ema( da, signal )
dm=da-maSignal
source = close
lengthRSI = input(14, minval=8), lengthStoch = input(14, minval=5)
smoothK = input(3,minval=3), smoothD = input(3,minval=3)
OverSold = input(25), OverBought = input(75)
rsi1 = rsi(source, lengthRSI)
rsi2= rsi(low, 20)
k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = sma(k, smoothD)
k1= sma(stoch(rsi2, rsi2, rsi2, lengthStoch), smoothK)
d1= sma(k1, smoothD)
delta=k-d1
ma = ema(low, length)
ema5= ema(price,20)
sma= sma(price,10)
bcond = price < ma
lcond = price> ema5
bcount = 0
lcount= 0
bcount := bcond ? nz(bcount[1]) + 1 : 0
lcount := lcond ? nz(lcount[1]) + 1 : 0
if (lcount>1 and change(k)>3 and k>d and k<55 and rising(dm,1)) or ( k[1]-k[2]<-2 and k-k[1]>5 and k>35 and k<80) or (ma-sma>0.05*sma and rising(sma,3) and rising(dm,2))
strategy.entry("Long", strategy.long, qty=10000/close)
if (bcount == confirmBars)
strategy.close("Long")
if close<0.99*sma
strategy.close("Long")
plot(0.99*sma)
plot(ma)
//hline(OverSold,color=blue)
//hline(OverBought,color=blue)
//plot(d, color=red)
//plot(k, color=green,title="k-line")
//(close-close[3]<-0.05*close[3]) or (close-close[2]<-0.05*close[2]) or (close-close[2]<-0.05*close[2]) or (close-close[4]<-0.05*close[4]) or
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)