В процессе загрузки ресурсов... загрузка...

Стратегия отслеживания тренда на основе индикатора двойного вихря в сочетании с индексом истинной силы

Автор:Чао Чжан, Дата: 2023-12-12 16:23:10
Тэги:

img

Обзор

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

Логика стратегии

Эта стратегия использует как индикатор двойного вихря, так и индекс истинной силы (TSI). индикатор двойного вихря состоит из линий VI+ и VI-, отражающих величину подъемного и нисходящего импульса соответственно.

Когда VI+ поднимается и VI- падает, что указывает на усиление тренда и ослабление импульса нисходящего тренда, индикатор двойного вихря генерирует длинный сигнал. Если в то же время синяя линия TSI пересекает красную линию, TSI также выдает длинный сигнал. Стратегия откроет длинную позицию, когда оба индикатора одновременно дают длинные сигналы.

Напротив, когда VI+ падает и VI- поднимается, сигнализируя об ослаблении импульса вверх и усилении импульса вниз, двойной вихрь дает короткий сигнал. Если синяя линия ТСИ также пересекает красную линию, ТСИ также производит короткий сигнал. Стратегия затем открывает короткую позицию при получении выравнитых коротких сигналов.

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

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

К основным преимуществам этой стратегии относятся:

  1. Двойной индикаторный фильтр улучшает надежность сигнала и предотвращает ложные сигналы.
  2. Применение средне- и долгосрочных показателей позволяет отслеживать более крупные тенденции.
  3. Гибкая корректировка периода хранения с помощью настройки параметров.
  4. Балансирование тренда и управление рисками. Индикаторы хорошо идентифицируют тенденции. Риск контролируется путем установки волн выхода цен.

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

Существуют также некоторые риски:

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

Руководство по оптимизации

Некоторые способы оптимизации стратегии включают:

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

Заключение

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


/*backtest
start: 2023-11-11 00:00:00
end: 2023-12-11 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © hydrelev

//@version=4
strategy("Vortex TSI strategy", overlay=false)
///////////////////INDICATOR TSI
long = input(title="Long Length", type=input.integer, defval=25)
short = input(title="Short Length", type=input.integer, defval=13)
signal = input(title="Signal Length", type=input.integer, defval=13)
price = close
double_smooth(src, long, short) =>
    fist_smooth = ema(src, long)
    ema(fist_smooth, short)
pc = change(price)
double_smoothed_pc = double_smooth(pc, long, short)
double_smoothed_abs_pc = double_smooth(abs(pc), long, short)
tsi_blue = 100 * (double_smoothed_pc / double_smoothed_abs_pc)
tsi_red = ema(tsi_blue, signal)
// plot(tsi_blue, color=#3BB3E4)
// plot(tsi_red, color=#FF006E)
// hline(0, title="Zero")

/////////////////INDICATOR VI
period_ = input(14, title="Period", minval=2)
VMP = sum( abs( high - low[1]), period_ )
VMM = sum( abs( low - high[1]), period_ )
STR = sum( atr(1), period_ )
VIP_blue = VMP / STR
VIM_red = VMM / STR
// plot(VIP_blue, title="VI +", color=#3BB3E4)
// plot(VIM_red, title="VI -", color=#FF006E)

////////////////////STRATEGY
bar=input(1, title="Close after x bar", minval=1, maxval=50)

tsi_long = crossover(tsi_blue, tsi_red)
tsi_short = crossunder(tsi_blue, tsi_red)
vi_long = crossover(VIP_blue, VIM_red)
vi_short = crossunder(VIP_blue, VIM_red)

LongConditionOpen = tsi_long and vi_long ? true : false
LongConditionClose = tsi_long[bar] and vi_long[bar] ? true : false
ShortConditionOpen = tsi_short and vi_short ? true : false
ShortConditionClose = tsi_short[bar] and vi_short[bar] ? true : false

if (LongConditionOpen)
    strategy.entry("Long Entry", strategy.long)
if (LongConditionClose)
    strategy.close("Long Entry")

if (ShortConditionOpen)
    strategy.entry("Short Entry", strategy.short)
if (ShortConditionClose)
    strategy.close("Short Entry")

Больше