Стратегия двойного прорыва


Дата создания: 2023-09-19 16:27:12 Последнее изменение: 2023-09-19 16:27:12
Копировать: 0 Количество просмотров: 644
1
Подписаться
1617
Подписчики

Обзор

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

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

  1. Вычислите наивысшую цену HH и наименьшую цену LL на ближайшей N-корневой линии K.

  2. Вычислите максимальную цену закрытия HC и минимальную цену закрытия LC за предыдущий день

  3. Ранжирование в предыдущие сутки - наибольшие значения в HH-LC и HC-LL.

  4. BuyLine на стартовую цену плюс k1*Range。

  5. Нижняя линия SellLine за вычетом k2 от цены открытия*Range。

  6. При закрытии цены сделайте больше, когда она входит в траекторию. При закрытии цены сделайте пустое, когда она входит в траекторию.

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

Основные преимущества этой стратегии:

  1. Поиск возможностей для торговли, связанных с прорывами, возникающими вблизи от начальной цены.

  2. Вверх-вниз, основанная на исторических колебаниях, автоматическая настройка, избегая субъективных.

  3. k-значение может быть настроено на различные сорта, которые могут меняться в зависимости от их возрастания.

  4. Прорывная форма четкая, качество сигнала высокое.

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

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

Основные риски этой стратегии:

  1. Невозможно определить разумный диапазон движения вверх и вниз, существует риск переоптимизации.

  2. Прорыв может быть ложным, необходимо установить стоп-убыток.

  3. Фиксированное время удержания позиции не может динамично реагировать на ситуацию

  4. Период отсчета короче, возможна кривосочетание.

  5. В частности, он отметил, что в этом году в Китае начнётся введение международного паспорта.

Решение проблемы:

  1. Оптимизация параметров k-значений, расширение диапазона отслеживания данных.

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

  3. Повышение оценки трендов, избегание обратной торговли.

  4. Рассмотреть возможность сокращения срока хранения до этого дня.

  5. Проверка на практике, поэтапное расширение позиций.

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

В этой стратегии можно рассмотреть следующие варианты оптимизации:

  1. Динамическая коррекция параметров посадки и посадки k-значения.

  2. Показатели, такие как объем торгов, подтверждают прорыв.

  3. Увеличение прибыли от мобильной защиты.

  4. Оценка прорыва и корректировка количества открытых позиций.

  5. Различайте тенденции и диапазоны, делайте стратегический анализ.

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

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

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

//@version=3
strategy("Dual Thrust Strategy",overlay=true,initial_capital=1000)
k1=input(0.67,type=float,step=0.01)
k2=input(0.62,type=float,step=0.01)
TimeFrame=input('240')
len=input(20)
HH=security(syminfo.tickerid,TimeFrame,highest(high,len),barmerge.lookahead_off)
LC=security(syminfo.tickerid,TimeFrame,lowest(close,len),barmerge.lookahead_off)
HC=security(syminfo.tickerid,TimeFrame,highest(close,len),barmerge.lookahead_off)
LL=security(syminfo.tickerid,TimeFrame,lowest(low,len),barmerge.lookahead_off)
Range=max(HH-LC,HC-LL)
BuyLine=security(syminfo.tickerid,"D",open,barmerge.lookahead_off)+k1*Range
SellLine=security(syminfo.tickerid,"D",open,barmerge.lookahead_off)-k2*Range
plot(BuyLine,color=blue,linewidth=2,offset=1,transp=70)
plot(SellLine,color=red,linewidth=2,offset=1,transp=70)


LongCondition=crossover(close,BuyLine)
ShortCondition=crossunder(close,SellLine)
strategy.entry("enter long",true,1,when=LongCondition)
strategy.entry("enter short",false,1,when=ShortCondition)
plotshape(LongCondition and strategy.position_size<0?low:na,style=shape.labelup,location=location.absolute,color=blue,text="Long",textcolor=white,size=size.small)
plotshape(ShortCondition and strategy.position_size>0?high:na,style=shape.labeldown,location=location.absolute,color=red,text="Short",textcolor=white,size=size.small)
alertcondition(LongCondition and strategy.position_size<0,title='Long_DT')
alertcondition(ShortCondition and strategy.position_size>0,title='Short_DT')