
Это стратегия для торговли в экстремальных ситуациях, используя отклонение цены от VWAP и отклонение OBV от RSI. Стратегия выпускает торговый сигнал, когда цена отклоняется от VWAP до определенной степени, а OBV-RSI показывает перекуп или перепродажу, и цена возвращается к VWAP.
Стратегия основана на двух ключевых показателях:
Условия открытия позиции:
Условия ликвидации:
Эта стратегия, в сочетании с отклонением VWAP и индикатором OBV-RSI, создает стабильную систему торговли с возвращением средней величины. Стратегия ищет возможности для торговли в экстремальных рыночных условиях и защищает безопасность средств с помощью многочисленных механизмов контроля риска. Хотя существует определенный риск, но с помощью постоянной оптимизации и совершенствования стратегия может быть стабильной в различных рыночных условиях.
/*backtest
start: 2024-02-19 00:00:00
end: 2025-02-16 08:00:00
period: 4h
basePeriod: 4h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=6
strategy('[Hoss] Combined Strategy', overlay=true)
// Indikator 1: [Hoss] VWAP Deviation
indicator_vwap = input.bool(true, title="Show VWAP Deviation Indicator", group="Visibility")
length = input.int(60, title="VWAP Length", group="VWAP Settings")
src = input(close, title="Source", group="VWAP Settings")
// Berechnungen für VWAP
vwmean = ta.wma(src, length)
dev = ta.stdev(src, length)
basis = vwmean
upper_dev2 = vwmean + dev * 2
lower_dev2 = vwmean - dev * 2
// Plotting VWAP Deviation
plot(indicator_vwap ? basis : na, color=color.gray, title='Basis', linewidth=2)
plot1 = plot(indicator_vwap ? upper_dev2 : na, color=color.red, title='Upper Dev 2', linewidth=2)
plot2 = plot(indicator_vwap ? lower_dev2 : na, color=color.green, title='Lower Dev 2', linewidth=2)
fill(plot1, plot2, color=color.new(color.green, 80), title='Deviation Band')
// Indikator 2: [Hoss] OBV RSI
indicator_obv_rsi = input.bool(true, title="Show OBV RSI Indicator", group="Visibility")
len = input.int(14, title="RSI Length", group="OBV RSI Settings")
obv = ta.cum(ta.change(src) > 0 ? volume : ta.change(src) < 0 ? -volume : 0)
rsi = ta.rsi(obv, len)
// Plotting OBV RSI
plot(indicator_obv_rsi ? rsi : na, color=color.blue, title="OBV RSI", linewidth=2)
hline(70, title="Overbought", color=color.red, linestyle=hline.style_dashed)
hline(30, title="Oversold", color=color.green, linestyle=hline.style_dashed)
// Strategie: Kauf- und Verkaufssignale
long_condition = not na(rsi) and rsi <= 30 and close <= lower_dev2
short_condition = not na(rsi) and rsi >= 70 and close >= upper_dev2
if (long_condition)
strategy.entry("Long", strategy.long, stop=close * 0.994) // Stop-Loss bei 0.6%
if (short_condition)
strategy.entry("Short", strategy.short, stop=close * 1.006) // Stop-Loss bei 0.6%
// Flash Close beim Erreichen des VWAP
if (strategy.position_size > 0 and close >= basis)
strategy.close("Long")
if (strategy.position_size < 0 and close <= basis)
strategy.close("Short")