Стратегия прорыва канала Доншиана


Дата создания: 2023-09-19 21:47:41 Последнее изменение: 2023-09-19 21:47:41
Копировать: 1 Количество просмотров: 823
1
Подписаться
1617
Подписчики

Обзор

Эта стратегия основана на Тонь-Ханском канале, используя в качестве торгового сигнала в качестве способа преодоления ценового пути вверх и вниз, для осуществления операций по отслеживанию тенденций в таких разновидностях, как stock/futures/crypto/forex, и относится к стратегии преодоления тенденций в долгосрочных позициях.

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

  1. Вычисляются максимальные и минимальные цены за данный период (например, 20 дней), получаются верхние и нижние рельсы тонхийского канала.

  2. Средняя линия коридора является средним значением верхнего и нижнего рельсов. Верхний рельсовый прорыв является сигналом перехода на тренд, а нижний рельсовый прорыв - сигналом перехода на тренд.

  3. Когда цена закрывается, она начинается как тренд, и начинается дополнительный вход.

  4. Когда цена опускается ниже средней линии, считается выходом из игры.

  5. Ссылка на отслеживаемые периоды времени, генерирующие реальные торговые сигналы.

  6. В качестве опции, можно использовать сигнал заикания в виде прорыва цены вниз.

Стратегия запускается путем прорыва тренда по channel judgment, с выходом на среднюю линию, и Capture средне-длинная линия тренда.

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

  1. Расчет тоннеля прост, показатели легко реализованы.

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

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

  4. Правила торговых сигналов ясны и просты в исполнении.

  5. Гибкость в регулировании параметров каналов для различных сортов и периодов.

  6. Можно оценить эффективность сделки на длинной или короткой линии.

  7. Различные технические показатели могут быть включены в расширение.

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

  1. “Мы не можем позволить, чтобы это произошло, потому что мы не можем позволить, чтобы это произошло”, - сказал он.

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

  3. Средняя линия остановки имеет фиксированный диапазон и чувствительна к рыночным шокам.

  4. Неправильно выбранный цикл отслеживания может привести к пересоответствию.

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

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

  1. Тестирование оптимальных параметров цикла канализации.

  2. Оценить другие типы скользящих средних как остановочные линии.

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

  4. Создание мобильной или отслеживаемой стратегии по прекращению убытков.

  5. Внедрение машинного обучения для прогнозирования прорыва цен.

  6. Оптимизация стратегии управления капиталом, установление прибыльно-неприбыльного соотношения.

  7. Подумайте о длинно-коротколинейных смешанных операциях или многосортных комбинациях.

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

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

Исходный код стратегии
/*backtest
start: 2023-09-11 00:00:00
end: 2023-09-15 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
//future strategy
//strategy(title = "stub", default_qty_type = strategy.fixed, default_qty_value = 1,  overlay = true, commission_type=strategy.commission.cash_per_contract,commission_value=2)
//stock strategy
strategy(title = "dc", default_qty_type = strategy.percent_of_equity, default_qty_value = 100,  overlay = true, commission_type=strategy.commission.cash_per_contract,commission_value=.005)
//forex strategy
//strategy(title = "stub", default_qty_type = strategy.percent_of_equity, default_qty_value = 100,  overlay = true)
//crypto strategy
//strategy(title = "stub", default_qty_type = strategy.percent_of_equity, default_qty_value = 100,  overlay = true, commission_type=strategy.commission.percent,commission_value=.25,default_qty_value=10000)


testStartYear = input(2000, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testEndYear = input(2018, "Backtest Start Year")
testEndMonth = input(12, "Backtest Start Month")
testEndDay = input(1, "Backtest Start Day")
testPeriodEnd = timestamp(testStartYear,testStartMonth,testStartDay,0,0)


testPeriod() =>
    true
    //time >= testPeriodStart  ? true : false

dcPeriod = 20

dcUpper = highest(close, dcPeriod)[1]
dcLower = lowest(close, dcPeriod)[1]
dcAverage = (dcUpper + dcLower) / 2

plot(dcLower, style=line, linewidth=3, color=red, offset=1)
plot(dcUpper, style=line, linewidth=3, color=aqua, offset=1)

plot(dcAverage, color=yellow, style=line, linewidth=1, title="Mid-Line Average")

strategy.entry("simpleBuy", strategy.long, when=close >= dcUpper)
strategy.close("simpleBuy",when=close < dcAverage)
    
//strategy.entry("simpleSell", strategy.short,when=close <= dcLower)
//strategy.close("simpleSell",when=close > dcAverage)