Стратегия следования за трендом с двойным сглаживанием и средней тенденцией — на основе улучшенной K-линии Пин Ань Цзяна


Дата создания: 2024-11-29 15:03:37 Последнее изменение: 2024-11-29 15:03:37
Копировать: 1 Количество просмотров: 491
1
Подписаться
1617
Подписчики

Стратегия следования за трендом с двойным сглаживанием и средней тенденцией — на основе улучшенной K-линии Пин Ань Цзяна

Обзор

Эта стратегия является системой отслеживания тенденций, основанной на модифицированной линии K Heikin-Ashi. Благодаря сглаживанию традиционной линии K Heikin-Ashi с помощью двойного индекса EMA, она эффективно уменьшает рыночный шум и обеспечивает более четкий сигнал тренда. Стратегия использует только несколько способов работы, занимая позиции в восходящих тенденциях и ожидая равновесного положения в нисходящих тенденциях, чтобы получить рыночную прибыль от эффективного захвата тенденции.

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

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

  1. Первая EMA-сглаживание данных о ценах OHLC
  2. Усовершенствованная линия Пхенян-Дзян К с использованием сглаженной цены
  3. Вычисленная линия Пиньян-Дзян К была сглажена вторичной ЭМА
  4. Изменение цвета K-линии оценивается путем сравнения цены открытия и закрытия после сглаживания
  5. Сигнал покупания при переходе красного на зеленый, сигнал продажи при переходе зеленого на красный
  6. Торговля с использованием 100% позиций от общей стоимости счета

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

  1. Двойная гладкая обработка значительно снижает ложные сигналы
  2. Применение различных стратегий снижает риск дефолта
  3. “Все, что мы делаем, - мы делаем для того, чтобы выиграть”.
  4. Полная система сигналов поддерживает автоматизированную торговлю
  5. Гибкий выбор временных циклов для удовлетворения различных потребностей в сделках
  6. Простые и четкие правила игры
  7. Поддержка управления капиталом в различных рыночных условиях

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

  1. Начало обратного тренда может привести к значительному отступлению
  2. Некоторые эксперты считают, что это может привести к последовательному появлению ложных сигналов в условиях нестабильных рынков.
  3. Торговля по полной позиции повышает риск для капитала
  4. Входные сигналы задерживаются, возможно, часть подъема пропускается.
  5. Большая разница в показателях в разных периодах времени

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

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

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

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

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

//@version=5
strategy("Smoothed Heiken Ashi Strategy Long Only", overlay=true, initial_capital=1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

len = input.int(10, title="EMA Length")
len2 = input.int(10, title="Smoothing Length")
start_date = input(defval=timestamp("2020-01-01"), title="Backtest Start Date")

o = ta.ema(open, len)
c = ta.ema(close, len)
h = ta.ema(high, len)
l = ta.ema(low, len)

haclose = (o + h + l + c) / 4
var float haopen = na
haopen := na(haopen[1]) ? (o + c) / 2 : (haopen[1] + haclose[1]) / 2
hahigh = math.max(h, math.max(haopen, haclose))
halow = math.min(l, math.min(haopen, haclose))

o2 = ta.ema(haopen, len2)
c2 = ta.ema(haclose, len2)
h2 = ta.ema(hahigh, len2)
l2 = ta.ema(halow, len2)

col = o2 > c2 ? color.red : color.lime

// Plot candles without visible wicks
plotcandle(o2, o2, c2, c2, title="Heikin Smoothed", color=col, wickcolor=color.new(col, 100))

// Delayed Buy and Sell signals
colorChange = col != col[1]
buySignal = colorChange[1] and col[1] == color.lime
sellSignal = colorChange[1] and col[1] == color.red

plotshape(buySignal, title="Buy Signal", location=location.belowbar, color=color.lime, style=shape.triangleup, size=size.small)
plotshape(sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)

// Strategy entry and exit
if (true)
    if (buySignal)
        strategy.entry("Long", strategy.long)
    if (sellSignal)
        strategy.close("Long")

// Add a vertical line at the start date
// if (time == start_date)
//     line.new(x1=bar_index, y1=low, x2=bar_index, y2=high, color=color.blue, width=2)

// Alert conditions
alertcondition(colorChange[1], title="Color Change Alert", message="Heiken Ashi Candle Color Changed")
alertcondition(buySignal, title="Buy Signal Alert", message="Buy Signal: Color changed from Red to Green")
alertcondition(sellSignal, title="Sell Signal Alert", message="Sell Signal: Color changed from Green to Red")