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

Стратегия зоны действий CDC

Автор:Чао Чжан, Дата: 2024-02-20 11:23:24
Тэги:

img

Обзор

Стратегия CDC Action Zone [TS Trader] - это количественная торговая стратегия, адаптированная из индикатора CDC Action Zone. Стратегия использует перекресток быстрых и медленных скользящих средних в качестве сигналов покупки и продажи. Когда быстрый MA пересекает медленный MA, это сигнал покупки. Когда быстрый MA пересекает медленный MA, это сигнал продажи.

Принцип стратегии

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

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

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

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

Преимущества этой стратегии включают:

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

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

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

  1. У МА отстающие проблемы, они могут упустить краткосрочные возможности.
  2. Может привести к большим потерям во время перемены тренда.
  3. Результаты обратных тестов могут отличаться от результатов торговли в реальном времени.

Такие методы, как объединение других показателей, сокращение периодов ДО и т.д., могут помочь устранить эти риски.

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

Некоторые направления для оптимизации стратегии:

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

Резюме

Подводя итог, стратегия CDC Action Zone [TS Trader] реализует простую, но практичную количественную торговую стратегию с использованием двойных скользящих средних крестов. Стратегия проста в понимании и реализации, но имеет место для дальнейшей оптимизации. При постоянном тестировании и усовершенствовании она может стать стабильной долгосрочной стратегией.


/*backtest
start: 2023-02-13 00:00:00
end: 2024-02-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("CDC Action Zone [TS Trader]", overlay=true)

// CDC ActionZone V2 29 Sep 2016
// CDC ActionZone is based on a simple 2MA and is most suitable for use with medium volatility market
// 11 Nov 2016 : Ported to Trading View with minor UI enhancement

src = input(title="Data Array", type=input.source, defval=ohlc4)
prd1 = input(title="Short MA period", type=input.integer, defval=12)
prd2 = input(title="Long MA period", type=input.integer, defval=26)

AP = ema(src, 2)
Fast = ema(AP, prd1)
Slow = ema(AP, prd2)

// === INPUT BACKTEST RANGE ===
FromYear = input(defval = 2019, title = "From Year", minval = 2009)
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
ToYear = input(defval = 9999, title = "To Year", minval = 2009)
ToMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12)
ToDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31)

// === FUNCTION EXAMPLE ===
start = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest finish window
window() => true
Bullish = Fast > Slow
Bearish = Fast < Slow

Green = Bullish and AP > Fast
Red = Bearish and AP < Fast
Yellow = Bullish and AP < Fast
Blue = Bearish and AP > Fast

//Long Signal
Buy = Green and Green[1] == 0
Sell = Red and Red[1] == 0

//Short Signal
Short = Red and Red[1] == 0
Cover = Red[1] and Red == 0

//Plot
l1 = plot(Fast, "Fast", linewidth=1, color=color.red)
l2 = plot(Slow, "Slow", linewidth=2, color=color.blue)
bcolor = Green ? color.lime : Red ? color.red : Yellow ? color.yellow : Blue ? color.blue : color.white
barcolor(color=bcolor)
fill(l1, l2, bcolor)

strategy.entry("Buy", strategy.long, when=window() and Buy)
strategy.entry("Sell", strategy.short, when=window() and Sell)
strategy.close("Buy", when=window() and Sell)
strategy.close("Sell", when=window() and Buy)


Больше