Динамическая стратегия отслеживания тренда скользящей средней по объему и прорыва HLCC4

VWMA HLCC4 MA
Дата создания: 2025-02-18 18:12:05 Последнее изменение: 2025-02-18 18:12:05
Копировать: 5 Количество просмотров: 441
1
Подписаться
1617
Подписчики

Динамическая стратегия отслеживания тренда скользящей средней по объему и прорыва HLCC4

Обзор

Эта стратегия является системой отслеживания тенденций на основе нескольких временных циклов, в сочетании с орбитальной 50-циклической торговой массой, взвешенной подвижной средней (VWMA) в качестве фильтра на большие тенденции, и использует 200-циклические VWMA и HLCC4 ценовые прорывы текущего временного цикла в качестве конкретных торговых сигналов. Это стратегия, которая делает больше, чем просто повышает надежность торгов с помощью строгого признания тенденций и проверки нескольких временных циклов.

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

Основная логика стратегии включает в себя следующие ключевые элементы:

  1. Используя круговой 50-циклический VWMA в качестве критерия для определения большого тренда, открывать позиции разрешается только тогда, когда цена находится выше этой средней линии.
  2. Условия для входа требуют, чтобы закрытие двух последовательных K-линий было выше 200-циклической VWMA, а закрытие второй K-линии было выше средней цены HLCC4 первой K-линии.
  3. Выходные сигналы основаны на уровне дневной линии, в тот день линия закрывается, когда цена падает ниже дневной линии 200 циклов VWMA.
  4. Стратегия применяет фиксированную позицию, при которой на каждую сделку используется 10% от доли аккаунта.
  5. Обратный отсчет недельных сроков за последние 5 лет, чтобы гарантировать эффективность стратегии в ближайшей рыночной среде.

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

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

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

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

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

  1. Оптимизация динамических параметров: циклические параметры VWMA могут автоматически корректироваться в зависимости от рыночных колебаний.
  2. Оптимизация управления позициями: внедрение динамической системы управления позициями на основе волатильности.
  3. Улучшение механизма выхода: можно добавить мобильный стоп или динамический стоп на основе технических показателей.
  4. Повышение показателей настроения рынка: в сочетании с такими показателями, как RSI или MACD, для повышения надежности сигналов.
  5. Введение анализа объемов сделок: углубление анализа объемов сделок, оптимизация методов расчета VWMA.

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

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

Исходный код стратегии
/*backtest
start: 2024-02-19 00:00:00
end: 2025-02-17 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=6
strategy("Long-Only 200 WVMA + HLCC4 Strategy (Weekly 50 VWMA Filter, Daily Exit, Last 5 Years)", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)

// Parameters
wvma_length = input(200, title="200 WVMA Length")

// Restrict backtesting to the last 5 years
var int backtest_start_year = na
if na(backtest_start_year)
    backtest_start_year = year - 5  // Calculate the start year (5 years ago)

// Check if the current time is within the last 5 years
within_backtest_period = true

// Fetch Weekly 50 VWMA
weekly_vwma_50 = request.security(syminfo.tickerid, "W", ta.vwma(close, 50))

// Basic Condition: Price must be above Weekly 50 VWMA
above_weekly_vwma = (close > weekly_vwma_50)

// 200 Weighted Volume Moving Average (WVMA) on the current timeframe
wvma = ta.vwma(close, wvma_length)
plot(wvma, title="200 WVMA", color=color.blue, linewidth=2)

// HLCC4 Calculation
hlcc4 = (high + low + close + close) / 4

// Fetch Daily 200 WVMA
daily_wvma = request.security(syminfo.tickerid, "D", ta.vwma(close, wvma_length))

// Fetch Daily Close
daily_close = request.security(syminfo.tickerid, "D", close)

// Long Entry Condition
long_condition = (close[1] > wvma[1]) and (close > wvma) and (close > hlcc4[1])

// Long Exit Condition (Daily Close below Daily 200 WVMA)
exit_condition = (daily_close < daily_wvma)

// Check if there is an open position
var bool in_position = false

// Execute trades only within the last 5 years and above Weekly 50 VWMA
if within_backtest_period and above_weekly_vwma
    if (long_condition and not in_position)
        strategy.entry("Buy", strategy.long)
        in_position := true

    if (exit_condition and in_position)
        strategy.close("Buy")
        in_position := false

// Plotting Entry and Exit Signals
plotshape(series=long_condition and not in_position and within_backtest_period and above_weekly_vwma, style=shape.labelup, location=location.belowbar, color=color.green, text="Buy", size=size.small)
plotshape(series=exit_condition and in_position and within_backtest_period and above_weekly_vwma, style=shape.labeldown, location=location.abovebar, color=color.red, text="Exit", size=size.small)

// Highlight background for trend direction
bgcolor(long_condition and not in_position and within_backtest_period and above_weekly_vwma ? color.new(color.green, 90) : na, title="Uptrend Background")
bgcolor(exit_condition and in_position and within_backtest_period and above_weekly_vwma ? color.new(color.red, 90) : na, title="Exit Background")

// Plot Weekly 50 VWMA
plot(weekly_vwma_50, title="Weekly 50 VWMA", color=color.orange, linewidth=2)