Стратегия торговли на основе средневзвешенной по объему цены и прорыва скользящей средней за несколько периодов

VWAP EMA ATR RR TP SL
Дата создания: 2025-02-20 13:25:02 Последнее изменение: 2025-02-20 13:25:02
Копировать: 2 Количество просмотров: 451
2
Подписаться
319
Подписчики

Стратегия торговли на основе средневзвешенной по объему цены и прорыва скользящей средней за несколько периодов Стратегия торговли на основе средневзвешенной по объему цены и прорыва скользящей средней за несколько периодов

Обзор

Это торговая стратегия, которая сочетает в себе торговое количество, средневзвешенную цену (VWAP) и многоциклическую подвижную среднюю (EMA). Эта стратегия используется в основном для торговли в течение дня, особенно в 15-минутный период времени. Стратегия объединяет информацию о торговом количестве, чтобы определить рыночные тенденции и торговые возможности, анализируя отношения между ценами и VWAP и различными циклическими EMA.

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

Стратегия использует 10-циклические, 20-циклические и 200-циклические ЭМА, а также VWAP в качестве основного индикатора.

  • Условия для участия: цена должна быть одновременно выше VWAP, 200EMA, 10EMA и 20EMA; текущая цена закрытия линии K выше цены открытия; VWAP находится выше 200EMA; 10EMA находится выше 20EMA, а 20EMA находится выше VWAP.
  • Вступительные условия: противоположное сочетание условий к многоголовым.
  • Стоп-убыток: используйте минимальную точку (в многоголовном) или максимальную точку (в пустом) на первых 10 линиях K плюс-минус ATR.
  • Цель прибыли: с использованием 1: 2 и 1: 3 риско-прибыль соотношение установить два целевых пункта.

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

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

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

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

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

  1. Внедрение фильтра волатильности: можно добавить ATR-процентное понижение, чтобы избежать торговли в условиях низкой волатильности.
  2. Оптимизация фильтра времени: можно настроить оптимальные торговые периоды в зависимости от особенностей различных рынков.
  3. Динамически скорректированный риск-прибыль: в зависимости от динамики рыночной волатильности скорректированная прибыль.
  4. Добавление подтверждения объема сделок: можно установить минимальный порог объема сделок, повышая надежность прорыва.

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

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

Исходный код стратегии
/*backtest
start: 2024-02-21 00:00:00
end: 2024-11-24 00:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("VWAP EMA Breakout", overlay=true)

// Define Indicators
ema10 = ta.ema(close, 10)
ema20 = ta.ema(close, 20)
ema200 = ta.ema(close, 200)
vwap = ta.vwap(close)
atr = ta.atr(14)

// Price Conditions (Long)
priceAboveVWAP200EMA = close > vwap and close > ema200 and close > ema10 and close > ema20
bullishCandle = close > open

// Additional Conditions for VWAP and EMA Relationships (Long)
vwapAbove200EMA = vwap > ema200
emaConditions = ema10 > ema20 and ema20 > vwap and vwap > ema200

// Entry Conditions (Long)
longCondition = priceAboveVWAP200EMA and bullishCandle and vwapAbove200EMA and emaConditions

// Stop-Loss & Take-Profit (Long)
swingLow = ta.lowest(low, 10)
stopLossLong = swingLow - atr
riskLong = close - stopLossLong
takeProfitLong2 = close + (riskLong * 2) // 1:2 RR
takeProfitLong3 = close + (riskLong * 3) // 1:3 RR

// Execute Long Trade
if longCondition
    strategy.entry("Long", strategy.long)
    strategy.exit("TP 1:2", from_entry="Long", limit=takeProfitLong2, stop=stopLossLong)
    strategy.exit("TP 1:3", from_entry="Long", limit=takeProfitLong3, stop=stopLossLong)

// Price Conditions (Short)
priceBelowVWAP200EMA = close < vwap and close < ema200 and close < ema10 and close < ema20
bearishCandle = close < open

// Additional Conditions for VWAP and EMA Relationships (Short)
vwapBelow200EMA = vwap < ema200
emaConditionsShort = ema10 < ema20 and ema20 < vwap and vwap < ema200

// Entry Conditions (Short)
shortCondition = priceBelowVWAP200EMA and bearishCandle and vwapBelow200EMA and emaConditionsShort

// Stop-Loss & Take-Profit (Short)
swingHigh = ta.highest(high, 10)
stopLossShort = swingHigh + atr
riskShort = stopLossShort - close
takeProfitShort2 = close - (riskShort * 2) // 1:2 RR
takeProfitShort3 = close - (riskShort * 3) // 1:3 RR

// Execute Short Trade
if shortCondition
    strategy.entry("Short", strategy.short)
    strategy.exit("TP 1:2", from_entry="Short", limit=takeProfitShort2, stop=stopLossShort)
    strategy.exit("TP 1:3", from_entry="Short", limit=takeProfitShort3, stop=stopLossShort)

// Plot Indicators
plot(ema10, color=color.red, title="10 EMA")
plot(ema20, color=color.green, title="20 EMA")
plot(ema200, color=color.purple, title="200 EMA")
plot(vwap, color=color.white, title="VWAP")