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


Дата создания: 2023-12-25 13:20:31 Последнее изменение: 2023-12-25 13:20:31
Копировать: 0 Количество просмотров: 445
1
Подписаться
1166
Подписчики

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

Обзор

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

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

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

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

Ограничительный вывод после увеличения - это падение цены во внешнее понижение. Ограничительный вывод после уменьшения - это падение цены во внешнее повышение.

Стратегия включает в себя механизмы выхода, такие как остановка, остановка убытков и отслеживание убытков.

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

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

  1. Используя двойные полосы колебаний для определения ценовых движений, можно эффективно отслеживать тенденции.
  2. В результате, мы смогли преодолеть внутренние колебания и создать позиции, чтобы избежать ненужных обратных сделок.
  3. Установка тормозов, остановок и отслеживания остановок позволяет эффективно контролировать риски;
  4. Параметры настраиваются и оптимизируются для разных сортов.

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

Однако есть и риски, связанные со стратегией двойного прорыва:

  1. В то же время, в некоторых странах, например, в Китае, в некоторых странах, например, в Китае, в Китае, в Китае, в Китае, в Китае, в Китае, в Китае.
  2. Неправильная настройка параметров может привести к тому, что склады станут слишком легкими или трудно остановить;
  3. Прорывы иногда характеризуются ложными сигналами и могут быть рискованными.

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

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

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

  1. Оптимизация параметров средней и стандартной погрешности, чтобы диапазоны колебаний были более соответствующими характеристикам разных видов;
  2. Добавление фильтров для таких показателей, как Volume и MACD, чтобы избежать ложных прорывов.
  3. Динамическая оптимизация параметров с использованием методов машинного обучения;
  4. В высокочастотном диапазоне проводится копирование стратегии, расширяется пространство для получения прибыли.

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

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

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

//@version=2
strategy("BB Strat",default_qty_type = strategy.percent_of_equity, default_qty_value = 100,currency="USD",initial_capital=100, overlay=true)
l=input(title="length",defval=100)
pbin=input(type=float,step=.1,defval=.25)
pbout=input(type=float,step=.1,defval=1.5)
ma=sma(close,l)
sin=stdev(ma,l)*pbin
sout=stdev(ma,l)*pbout
inu=sin+ma
inb=-sin+ma
outu=sout+ma
outb=-sout+ma
plot(inu,color=lime)
plot(inb,color=lime)
plot(outu,color=red)
plot(outb,color=yellow)

inpTakeProfit = input(defval = 0, title = "Take Profit", minval = 0)
inpStopLoss = input(defval = 0, title = "Stop Loss", minval = 0)
inpTrailStop = input(defval = 0, title = "Trailing Stop Loss", minval = 0)
inpTrailOffset = input(defval = 0, title = "Trailing Stop Loss Offset", minval = 0)
useTakeProfit = inpTakeProfit >= 1 ? inpTakeProfit : na
useStopLoss = inpStopLoss >= 1 ? inpStopLoss : na
useTrailStop = inpTrailStop >= 1 ? inpTrailStop : na
useTrailOffset = inpTrailOffset >= 1 ? inpTrailOffset : na


longCondition = close>inu and rising(outu,1) 
exitlong = (open[1]>outu and close<outu) or crossunder(close,ma)

shortCondition = close<inb and falling(outb,1)
exitshort = (open[1]<outb and close>outb) or crossover(close,ma)

strategy.entry(id = "Long", long=true, when = longCondition)
strategy.close(id = "Long", when = exitlong)
strategy.exit("Exit Long", from_entry = "Long", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset, when=exitlong)

strategy.entry(id = "Short", long=false, when = shortCondition)
strategy.close(id = "Short", when = exitshort)
strategy.exit("Exit Short", from_entry = "Short", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset, when=exitshort)