
Внутренняя сближающаяся стратегия прорыва - это стратегия отслеживания тренда, основанная на K-линейной форме. Эта стратегия использует внутреннюю сближающуюся и внешнюю расширяющуюся K-линейную форму для определения тренда и открытия длинных позиций в точке прорыва.
Эта стратегия рассматривает два типа K-линий:
Внутренняя сближающаяся K-линия: наивысшая цена на K-линии в день ниже, чем вчерашняя наивысшая цена, а наименьшая цена выше, чем вчерашняя наименьшая цена, что указывает на сближение диапазона.
Внешняя расширение K-линии: сегодняшняя максимальная цена K-линии выше, чем вчерашняя максимальная цена, а минимальная цена ниже, чем вчерашняя минимальная цена, что указывает на расширение диапазона.
При оценке двух вышеперечисленных форм, рассматривается как входный сигнал стратегии. На следующий день после входа в K-линию, если цена открытия торгового дня выше максимальной цены предыдущего дня, то делается больше; если цена открытия торгового дня ниже минимальной цены, то делается пусто.
После дополнительного ликвидного ответа, будет установлена точка стоп-стоп. Конкретный алгоритм стоп-стоп-лосс:
Стоп-стоп = (текущая цена закрытия × процент целевого стоп-стопа) / минимальная цена изменения
Стоп-стоп = ((текущая цена закрытия × Стоп-стоп процент) / минимальная цена изменения
Таким образом, мы можем выставить стоп-ордеры и стоп-лост-ордеры, чтобы выйти из рынка после получения прибыли и избежать потерь, превышающих допустимые.
Эта стратегия имеет следующие преимущества:
Внутреннее слияние внешнего расширения K-линии более надежно, и более высокая вероятность успеха в определении направления тренда.
Прорывный вход увеличивает определенность суждения, избегая некоторых ложных прорывов.
Полностью автоматизированная торговля, не требующая человеческого вмешательства, снижает операционный риск.
Однако эта стратегия также несет в себе некоторые риски:
Определение K-линейной формы не является полностью надежным и может привести к ошибочным сигналам.
Прорывный вход легко поддается обману, следует соответствующим образом скорректировать стоп-потери.
Неправильная настройка параметров может привести к увеличению убытков, поэтому необходимо тщательно тестировать параметры оптимизации.
Эта стратегия также может быть оптимизирована в следующих направлениях:
Добавить дополнительные условия фильтрации, чтобы избежать ошибочных сигналов. Например, можно добавить фильтр объема транзакций.
Оптимизация алгоритмов стоп-стоп-лосса для реализации динамического стоп-стоп-лосса.
Добавлена функция автоматической защиты от повреждений.
Автоматическая оптимизация параметров с использованием методов машинного обучения.
Внутренняя конверсионная стратегия прорыва в целом является более надежной и легкой для реализации стратегии тренда. Эта стратегия использует преимущества внутреннего конверсионного внешнего расширения, а также преимущества уверенности в прорыве. В то же время алгоритм стратегии прост, ясен, понятен и подходит для количественного выбора входа.
/*backtest
start: 2023-02-19 00:00:00
end: 2024-02-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("inside bar strategy Wıth SL-TP ", overlay=true )
insides = high < high[1] and low > low[1]
outsides = high > high[1] and low < low[1]
candle_control=insides or outsides
target_profit_percent=input(3,"target profit%",step=0.1)
stop_loss_percent=input(1,"stop loss %",step=0.1)
yearfrom = input(2021)
yearuntil =input(2022)
monthfrom =input(1)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)
long_cond=candle_control[1] and close>open and high>high[1]
short_cond=candle_control[1] and close<open and low<low[1]
if ( long_cond )
strategy.entry("LONG", strategy.long, stop=close, oca_name="TREND", comment="LONG")
else
strategy.cancel(id="LONG")
if ( short_cond )
strategy.entry("SHORT", strategy.short,stop=close, oca_name="TREND", comment="SHORT")
else
strategy.cancel(id="SHORT")
profit_target=(close*(target_profit_percent/100))/syminfo.mintick
stop_target=(close*(stop_loss_percent/100))/syminfo.mintick
strategy.exit("LONG EXIT","LONG",profit=profit_target, loss=stop_target )
strategy.exit("LONG EXIT","SHORT",profit=profit_target, loss=stop_target )