Стратегия торговли VWAP

EMA VWAP
Дата создания: 2024-04-29 14:20:39 Последнее изменение: 2024-04-29 14:20:39
Копировать: 6 Количество просмотров: 842
1
Подписаться
1617
Подписчики

Стратегия торговли VWAP

Обзор

Стратегия является стратегией торговли, основанной на EMA, VWAP и количестве сделок. Основная идея заключается в том, что в определенное время торговли, когда цена закрытия превышает VWAP и EMA, и объем сделок больше, чем объем сделок на предыдущей линии K, создается сигнал открытия позиции. В то же время устанавливаются условия для остановки и остановки, а также для ликвидации позиций в течение определенного периода времени.

Стратегический принцип

  1. Расчет показателей EMA и VWAP.
  2. В течение указанного времени сделки.
  3. Условия для открытия позиции: цена закрытия больше, чем VWAP и EMA, объем сделки больше, чем предыдущая линия K, и цена закрытия больше, чем цена открытия.
  4. Условия открытия позиции с пустой позицией: цена закрытия меньше, чем VWAP и EMA, объем сделки больше, чем предыдущая линия K, и цена открытия больше, чем цена закрытия.
  5. Условия многооднородной позиции: цена закрытия опускается ниже VWAP или EMA, достигает точки остановки или остановки убытков или достигает назначенного времени выхода из игры.
  6. Условия открытой позиции: цена закрытия превышает VWAP или EMA, достигает точки остановки или остановки убытков или достигает назначенного времени выхода из игры.

Стратегические преимущества

  1. При этом учитываются тенденции цены (EMA), справедливая рыночная стоимость (VWAP) и объем сделок, условия для открытия позиции более строгие, что способствует повышению шансов на успех стратегии.
  2. Установка стоп-лосс и стоп-стоп для контроля риска и блокировки прибыли.
  3. Ограничение времени торговли и времени отъезда, избежание риска ночевки в неторговые часы и ночное хранение позиций.

Стратегический риск

  1. Эта стратегия может плохо работать в нестабильных рынках, поскольку частые прорывы и отступления могут привести к многократному открытию и закрытию позиций, что увеличивает затраты на торговлю и скольжение.
  2. Стоп-стоп является фиксированным и может быть задействован заранее при резких колебаниях в рынке, что приводит к большим потерям в стратегии.
  3. Эта стратегия не учитывает реальную глубину рынка и ситуацию с поручением, что может привести к проблемам с проскальзыванием и провалом открытия позиции в реальном режиме.

Направление оптимизации стратегии

  1. Можно рассмотреть возможность добавления дополнительных фильтров, таких как ATR, RSI и другие, для дальнейшего подтверждения тенденции и силы движения.
  2. Стоп-стоп и стоп-стоп могут быть настроены динамично, например, в соответствии с ATR или стоп-процентом, чтобы соответствовать различным рыночным колебаниям.
  3. Можно оптимизировать параметры, такие как длина EMA, источник VWAP, стоп-стоп-стоп и т. д., чтобы повысить стабильность и прибыльность стратегии.
  4. Можно рассмотреть возможность включения управления позициями, например, регулирования размеров позиций в зависимости от волатильности или пропорции капитала, чтобы контролировать общий риск.

Подвести итог

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

Исходный код стратегии
/*backtest
start: 2024-04-27 00:00:00
end: 2024-04-28 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("EMA, VWAP, Volume Strategy", overlay=true, process_orders_on_close=true)

// Inputs
emaLength = input.int(21, title="EMA Length")
vwapSource = input.source(defval=hlc3, title='VWAP Source')
stopLossPoints = input.float(100, title="Stop Loss (points)")
targetPoints = input.float(200, title="Target (points)")
session = input("0950-1430", title='Only take entry during')
exit = input(defval='1515-1525', title='Exit Trade')

tradein = not na(time(timeframe.period, session))
exit_time = not na(time(timeframe.period, exit))

// Calculate indicators
ema = ta.ema(close, emaLength)
vwapValue = ta.vwap(vwapSource)

// Entry Conditions
longCondition = close > vwapValue and close > ema and volume > volume[1] and close > open and tradein
shortCondition = close < vwapValue and close < ema and volume > volume[1] and open > close and tradein

// Exit Conditions
longExitCondition = ta.crossunder(close, vwapValue) or ta.crossunder(close, ema) or close - strategy.position_avg_price >= targetPoints or close - strategy.position_avg_price <= -stopLossPoints or exit_time
shortExitCondition = ta.crossover(close, vwapValue) or ta.crossover(close, ema) or strategy.position_avg_price - close >= targetPoints or strategy.position_avg_price - close <= -stopLossPoints or exit_time

// Plotting
plot(vwapValue, color=color.blue, title="VWAP")
plot(ema, color=color.green, title="EMA")

// Strategy
if longCondition
    strategy.entry("Long", strategy.long)

if shortCondition
    strategy.entry("Short", strategy.short)

if longExitCondition
    strategy.close('Long', immediately=true)

if shortExitCondition
    strategy.close("Short", immediately=true)