Стратегия двойного супертренда


Дата создания: 2023-11-15 16:33:05 Последнее изменение: 2023-11-15 16:33:05
Копировать: 0 Количество просмотров: 931
1
Подписаться
1617
Подписчики

Стратегия двойного супертренда

Обзор

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

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

Двойная стратегия сверхтренда основана на производных сверхтрендовых показателей. Сверхтрендовые показатели состоят из верхних и нижних полос, которые используются для определения ценовых тенденций и ключевых уровней сопротивления поддержки. На этой основе стратегия сверхтренда построена на двух каналах: канале стабилизации и канале разрыва.

  • Устойчивый канал: состоит из базовых верхних и нижних полос, используемых для определения текущей ценовой тенденции;
  • Разрывный канал: состоит из иллюстративных верхних и нижних полос, используемых для захвата обратного тренда.

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

В двухканальной системе стратегия позволяет генерировать торговые сигналы путем определения цены на прорыв через разные каналы:

  • Если цена поднимается вверх по нижней полосе стабилизационного канала, это создает сигнал покупки.
  • При снижении цены через верхнюю полосу стабилизационного канала создается сигнал продажи.

Двухканальный мониторинг позволяет отслеживать тенденции и ловить их в обратном порядке.

Анализ преимуществ

Стратегия двойного гипертендера в сочетании с двухканальной системой имеет следующие преимущества:

  • Поймать обратный тренд и избежать ложных прорывов. Настройка прорывного канала позволяет эффективно идентифицировать реальный обратный тренд и предотвратить заблуждение от кратковременного шума.
  • Продолжительность торгов. По сравнению с одиночными супертенденциями, двойные супертенденции могут продлевать каждый торговый цикл.
  • Оптимизация параметров имеет большое пространство. Параметры каналов могут быть адаптированы к различным видам и характеристикам циклов путем корректировки каналов.
  • Низкий уровень стратегической нейрогенерации. Двухканальный механизм повышает стратегическую стабильность.
  • Легкость проверки и оптимизации. Интуитивное отображение каналов позволяет быстро оценить эффективность стратегии.

Анализ рисков

Также существуют риски, связанные со стратегией двойных супертенденций:

  • Слишком узкий канал может привести к многократному неэффективному прорыву; слишком широкий канал не сможет вовремя захватить обратный тренд.
  • Влияние крупных событий на поле. Нетехнически обусловленные события могут привести к необычным колебаниям цен, а также к сбоям в системе прорыва.
  • Высокая частота сделок. Двухканальная структура может увеличить частоту сделок, требуя контроля над размером позиций.
  • Оптимизация параметров затруднительна. Параметры двух каналов не могут быть одновременно оптимизированы, требуется достаточно времени для их корректировки.
  • Нельзя гарантировать остановку убытков. Эта стратегия не может установить остановку убытков, существует определенный риск.

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

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

Стратегия двойного гипертендера может быть оптимизирована в следующих аспектах:

  • Добавление фильтрующих условий, предотвращающих ложные прорывы. Можно добавить фильтрующие сигналы, такие как объем сделки или показатель волатильности, чтобы обеспечить эффективность прорыва.
  • В сочетании с трендовыми показателями, можно определить направление большого тренда.
  • Динамическая корректировка параметров каналов, адаптация к изменениям рынка. Параметры каналов могут быть оптимизированы с использованием адаптивных алгоритмов.
  • Оптимизация механизмов выхода, реализация защиты прибыли. Можно установить такие способы, как мобильный стоп-лост или временный выход.
  • Различают многоголовые и многоголовые фазы, используют разные параметры.
  • Добавление количественного управления ветром, контроль максимального отвода. Можно установить такие методы, как контроль позиции и общее остановка убытков.

С помощью дальнейшей оптимизации можно улучшить эффективность стратегий Parameter Fitting и Walk Forward Analysis, что приводит к более стабильной прибыли.

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

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

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


//@version=4
strategy("Double Supertrend Strategy", overlay=true)

// Define your parameters
length = input(10, title="Length")
multiplier = input(3, title="Multiplier")

// Calculate the True Range and Average True Range
trueRange = max(high - low, max(abs(high - close[1]), abs(low - close[1])))
averageTrueRange = sma(trueRange, length)

// Calculate the basic upper and lower bands
basicUpperBand = hl2 + (multiplier * averageTrueRange)
basicLowerBand = hl2 - (multiplier * averageTrueRange)

// Calculate the final upper and lower bands
finalUpperBand = basicUpperBand
finalLowerBand = basicLowerBand

finalUpperBand := close[1] > finalUpperBand[1] ? max(basicUpperBand, finalUpperBand[1]) : basicUpperBand
finalLowerBand := close[1] < finalLowerBand[1] ? min(basicLowerBand, finalLowerBand[1]) : basicLowerBand

// Determine if we're currently in an uptrend or downtrend
uptrend = close > finalLowerBand[1]
downtrend = close < finalUpperBand[1]

// Plot the bands
plot(uptrend ? finalUpperBand : na, color=color.green, linewidth=2)
plot(downtrend ? finalLowerBand : na, color=color.red, linewidth=2)

// Define your conditions for entering and exiting trades
if (uptrend)
    strategy.entry("Buy", strategy.long)
else if (downtrend)
    strategy.entry("Sell", strategy.short)