Стратегия сильного прорыва CCI


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

Стратегия сильного прорыва CCI

Обзор

Эта стратегия основана на классическом индексе товарного канала (CCI) и выполняется только в несколько шагов. Система выходит на рынок, когда показатель CCI находится на очень низком уровне (CCI <-150 или пользовательское определение), и вновь получает силу (CCI на корневой K-линии CCI) и одновременно отфильтровывает саму ценную силу (K-линия, которая сигнализирует о том, что цена закрытия должна быть выше определенной величины от цены открытия - фиксированной на 0,25%).

Эта стратегия используется для получения высокой выигрышной доли (более 50%), а не для целого длины тренда. Таким образом, она подходит для трейдеров, которые не могут терпеть потенциальные потери.

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

  1. Используйте функции ta.sma() и ta.dev() для построения индекса CCI и его полосы интервала.

  2. Выберите дату начала торгов с помощью ввода и установите окно обратной связи.

  3. Условия входа: CCI пробивает низкую линию и начинает расти, требуя, чтобы цена закрытия линии K была на 0.25% выше, чем цена открытия.

  4. Условия выхода из игры 1: нанесение на линию по CCI, остановка и выход из игры.

  5. Условия выхода из игры 2: преодоление линии стоп-лоста, убыток выхода из игры.

  6. Стратегия просто делает больше, выбирая время входа в игру в соответствии с интенсивностью показателя CCI, используя при этом риск контроля остановки убытков.

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

Эта стратегия имеет следующие преимущества:

  1. Использование показателя CCI для выявления случаев перепродажи и перекупа позволяет эффективно использовать возможности для обратного пути.

  2. Это позволяет избежать чрезмерного риска, связанного с ошибочным управлением.

  3. Используйте ценовую силу, чтобы убедиться, что цены на входе уже сформировали поддержку.

  4. Сорт-оф-дефолт (СОД) - это механизм, используемый для эффективного управления капиталом.

  5. Параметры отслеживания гибкие, можно регулировать условия фильтрации входа.

  6. Высокая вероятность победы, подходящая для инвесторов, уделяющих внимание управлению капиталом.

  7. Явная стратегия и понятный код.

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

Однако эта стратегия также несет в себе определенные риски:

  1. Если мы будем делать это в разных направлениях, то легко пропустим короткую линию, которая идет вниз.

  2. Неправильная настройка параметров CCI может привести к сбоям.

  3. Стойкость к убыткам слишком слабая, чтобы эффективно контролировать убытки.

  4. В результате, по мнению экспертов, в результате сбоев в торговле, которые были вызваны прорывом, убытки были значительными.

  5. Слишком высокая частота сделок приводит к снижению стоимости сделок.

Соответствующие меры управления рисками:

  1. Оптимизируйте параметры CCI, чтобы найти оптимальные значения.

  2. Корректировка величины стоп-ложа, чтобы найти баланс между риском и вероятностью прорыва стоп-ложа.

  3. С учетом расходов на транзакции, контролируется частота входа.

  4. В сочетании с тенденциями и интервалом, избегайте односторонней торговли.

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

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

  1. Применение динамического стоп-диапазона с корректировкой стоп-диапазона в зависимости от степени волатильности рынка.

  2. В сочетании с MACD и другими показателями, избегайте слишком мягкой остановки.

  3. Повышение возможности продажи, рассмотрение пустоты при перегреве индекса ЦИЦИ.

  4. Учитывайте стоимость сделки и установите минимальную остановочную дистанцию.

  5. Параметры оптимизации в сочетании с стратегическими временными рамками для поиска оптимального сочетания.

  6. Автоматическая оптимизация параметров с использованием методов машинного обучения.

  7. Добавление модуля управления капиталом, динамическая корректировка позиций.

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

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

Исходный код стратегии
/*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=5
strategy(title='CCI High Performance long only', overlay=false )
src = input(close)
length = input.int(20, title='Period', minval=1)
lossp = input.float(8, title='Stop Loss percentage', minval=0.5, step=0.5)
scart = input.float(0.25, title='Close of the signal bar higher than Open %', minval = 0)
upperline = input.int(150, title='Upper Band', minval=0, step=10)
lowline = input.int(-150, title='Low Band', maxval=0, step=10)


// construction of CCI (not on close but in totalprice) and of bands
ma = ta.sma(src, length)
cci = (src - ma) / (0.015 * ta.dev(src, length))
plot(cci, 'CCI', color=color.new(#996A15, 0))
band1 = hline(upperline, 'Upper Band', color=#C0C0C0, linestyle=hline.style_dashed)
band0 = hline(lowline, 'Lower Band', color=#C0C0C0, linestyle=hline.style_dashed)
fill(band1, band0, color=color.new(#9C6E1B, 90), title='Background')
// === INPUT BACKTEST RANGE ===
fromMonth = input.int(defval = 1,    title = "From Month",  minval = 1, maxval = 12)
fromDay   = input.int(defval = 1,    title = "From Day",    minval = 1, maxval = 31)
fromYear  = input.int(defval = 2016, title = "From Year",   minval = 1970)
thruMonth = input.int(defval = 1,    title = "Thru Month",  minval = 1, maxval = 12)
thruDay   = input.int(defval = 1,    title = "Thru Day",    minval = 1, maxval = 31)
thruYear  = input.int(defval = 2112, title = "Thru Year",   minval = 1970)
// === FUNCTION EXAMPLE limit for backtest ===
start     = timestamp(fromYear, fromMonth, fromDay, 00, 00)            // backtest start  window
finish    = timestamp(thruYear, thruMonth, thruDay, 23, 59)            // backtest finish window
window()  => time >= start and time <= finish ? true : false           // create function "within window of time"
//ENTRY CONDITIONS

// strategy: enter when CCI is under the low line and starts increasing. The filter is that the signal candle should mark a close higher than a x-percent
// (0.25%) of the open
// Exit when either when it reaches the target of a prices highest than high level of CCI or fixed stop loss (in percentage)
scart_level = open * (1+scart/100)
entryl = cci[1] < lowline[1] and cci > cci[1] and close > scart_level and window()
exit1 = cci> upperline
strategy.entry('Long', strategy.long, when=entryl)
strategy.close('Long', when=exit1, comment='target')

// money management (only stop loss)
losspel = strategy.position_avg_price * (1 - lossp / 100)
fixed_stop_long = close < losspel
strategy.close('Long', when=fixed_stop_long, comment='Stop Loss')