Стратегия отслеживания комбинации скользящей средней RSI VWAP


Дата создания: 2023-09-13 14:37:47 Последнее изменение: 2023-09-13 14:37:47
Копировать: 0 Количество просмотров: 948
1
Подписаться
1617
Подписчики

Эта стратегия использует три показателя: VWAP, EMA и RSI для определения тенденции и отслеживания тенденции.

Принципы стратегии:

  1. VWAP рассчитывается как показатель справедливой цены на день.

  2. Вычислить 15-циклическую EMA как средне-короткую линию тренда.

  3. Расчет RSI, чтобы определить, находится ли он в зоне перекупа, когда RSI выше отклонения.

  4. При закрытии цены выше VWAP и EMA, а RSI перекупает, производится дополнительный вход.

  5. Установка мобильной стоп-линии с пропорциональным отслеживанием ниже точки входа.

  6. Установите фиксированные точки остановки, чтобы гарантировать прибыль.

Преимущества этой стратегии:

  1. VWAP отражает справедливую стоимость, EMA оценивает тенденцию, RSI указывает на зону перекупа, повышает точность входа.

  2. Мобильный способ остановки, который позволяет корректировать положение остановки в зависимости от цены в реальном времени, защищая прибыль.

  3. Фиксированные блокировки могут в какой-то степени блокировать прибыль и уменьшить мониторинг.

Риски этой стратегии:

  1. Индексы RSI и EMA могут подавать ошибочные сигналы в шокирующих ситуациях.

  2. Мобильный стоп требует разумной настройки частоты отслеживания, слишком большие или слишком маленькие могут быть проблемой.

  3. Невозможно ограничить размер убытков, существует риск крупных убытков.

В общем, стратегия объединяет преимущества различных индикаторов и использует подвижный стоп для отслеживания. Лучший эффект можно получить в больших тенденциях, но необходимо оптимизировать параметры и строго контролировать риск.

Исходный код стратегии
/*backtest
start: 2022-09-12 00:00:00
end: 2023-02-03 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("VWAP+15EMA with RSI", overlay=true)

// Inputs
ema_length = input.int(15, title="EMA Length")
rsi_length = input.int(14, title="RSI Length")
rsi_overbought = input.int(45, title="RSI Overbought Level")
stop_loss_pct = input.float(0.5, title="Stop Loss %")
take_profit_pct = input.float(3.5, title="Take Profit %")
trailing_stop_pct = input.float(1, title="Trailing Stop %")

// Calculate Indicators
vwap = ta.vwap(hlc3)
ema = ta.ema(close, ema_length)
rsi = ta.rsi(close, rsi_length)

// Entry Condition
long_entry = close > vwap and close > ema and rsi > rsi_overbought

// Exit Conditions
stop_loss = strategy.position_avg_price * (1 - stop_loss_pct / 100)
take_profit = strategy.position_avg_price * (1 + take_profit_pct / 100)
trailing_stop = strategy.position_avg_price * (1 - trailing_stop_pct / 100)

// Submit Orders
if long_entry and strategy.position_size == 0
    strategy.entry("Long", strategy.long)

if strategy.position_size > 0
    strategy.exit("Stop Loss /Profit", "Long", profit = take_profit, stop=stop_loss, trail_offset = trailing_stop)


// Plot Indicators
plot(vwap, title="VWAP", color=color.blue)
plot(ema, title="EMA", color=color.orange)
plot(rsi, title="RSI", color=color.purple)
hline(rsi_overbought, title="RSI Overbought", color=color.red)