Стратегия торговли с обратным движением двойного показателя

Автор:Чао Чжан, Дата: 2023-09-25 17:46:24
Тэги:

Обзор

Эта стратегия сочетает в себе 123 обратный шаблон с индикатором CCI, чтобы создать накопительный сигнал краткосрочной торговой стратегии. Он использует цены на обратных изменениях путем смешивания анализа графического шаблона с показателями перекупленности / перепроданности. Стратегия подходит для торговых инструментов, таких как индексы и форекс, которые испытывают колебания.

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

Ключевая логика торговли включает:

  1. 123-й паттерн идентифицирует реверсии. 2 дня подряд реверсии цены закрытия наряду с реверсией стохастической дает сигналы.

  2. CCI подтверждает реверсию. CCI определяет условия перекупки/перепродажи. Скрещивание быстрого и медленного CCI предполагает реверсию.

  3. 123 + CCI вместе создают более сильные кумулятивные сигналы.

  4. Опция для обратного направления сигнала, короткий на длинные сигналы и наоборот для контрарной торговли.

  5. Параметры CCI диктуют восприятие перекупленности/перепроданности.

  6. Нет фиксированной прибыли или остановки убытков.

Стратегия сочетает в себе ценовое действие и анализ индекса для высоковероятных реверсионных торговых настроек.

Преимущества

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

  1. Двойная индикаторная фильтрация улучшает качество сигнала и предотвращает ложные перерывы.

  2. 123 шаблона интуитивно понятны и надежны для обнаружения переворотов.

  3. CCI четко определяет зоны перекупки/перепродажи в зависимости от времени.

  4. Гибкость через контраргированный выбор торговли для диверсификации.

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

  6. Нет необходимости в остановке потерь или получении прибыли, что снижает риск.

  7. Подходит для колеблющихся инструментов, таких как индексы и форекс.

  8. Легко воспроизводить для начинающих.

Риски

Основными рисками являются:

  1. Увеличение затрат от более высокой частоты торговли.

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

  3. Риск выбора инструмента, если он применяется к активам с тенденцией.

  4. Риск оптимизации параметров, приводящий к настройке кривой.

  5. Пропускание риска тренда и торговля против тренда.

  6. Низкий риск эффективности, поскольку возможности отмены могут быть ограничены.

Риски могут быть смягчены посредством контроля частоты, выбора активов, обратного тестирования и оптимизации параметров.

Возможности для расширения

Некоторые способы улучшения стратегии:

  1. Добавьте стоп-лосс и возьмите прибыль для контроля риска.

  2. Включите фильтры тренда, чтобы избежать ложных перерывов.

  3. Оптимизировать параметры для различных приборов.

  4. Внедрить размеров позиции на основе условий.

  5. Установите лимиты на снятие средств, чтобы избежать устойчивых потерь.

  6. Добавьте машинное обучение для адаптивной оптимизации.

  7. Улучшить для более высокой ставки выигрыша и риск-вознаграждение.

  8. Торгуйте с трендом, различая бычьи и медвежьи рынки.

При постоянном совершенствовании стратегия может стать стабильной краткосрочной торговой системой.

Заключение

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


/*backtest
start: 2023-08-25 00:00:00
end: 2023-09-24 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 11/07/2019
// This is combo strategies for get a cumulative signal. 
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// The Commodity Channel Index (CCI) is best used with markets that display cyclical or 
// seasonal characteristics, and is formulated to detect the beginning and ending of these 
// cycles by incorporating a moving average together with a divisor that reflects both possible 
// and actual trading ranges. The final index measures the deviation from normal, which indicates 
// major changes in market trend.
// To put it simply, the Commodity Channel Index (CCI) value shows how the instrument is trading 
// relative to its mean (average) price. When the CCI value is high, it means that the prices are 
// high compared to the average price; when the CCI value is down, it means that the prices are low 
// compared to the average price. The CCI value usually does not fall outside the -300 to 300 range 
// and, in fact, is usually in the -100 to 100 range.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos

CCI(FastMA, SlowMA) =>
    pos = 0
    xCCI = cci(close, 10)
    xSMA = sma(xCCI,SlowMA)
    xFMA = sma(xCCI,FastMA)
    pos := iff(xSMA < xFMA , 1,
	         iff(xSMA > xFMA, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Strategy 123 Reversal & CCI", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
FastMA = input(10, minval=1)
SlowMA = input(20, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posCCI = CCI(FastMA, SlowMA)
pos = iff(posReversal123 == 1 and posCCI == 1 , 1,
	   iff(posReversal123 == -1 and posCCI == -1, -1, 0)) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )

Больше