Стратегия перехода на полосы Боллинджера

Автор:Чао Чжан, Дата: 2024-02-20 17:05:47
Тэги:

img

Резюме

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

Принципы

Стратегия основывается на следующих показателях для оценки:

  1. Bollinger Middle Band: Простая скользящая средняя SMA, представляющая общую тенденцию рынка.

  2. Верхняя полоса Боллинджера: средняя + N умножено на стандартное отклонение.

  3. Нижняя полоса Боллинджера: средняя - N раз стандартное отклонение. Нижняя полоса представляет собой нижнюю границу волатильности рынка.

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

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

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

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

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

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

  4. Использовать средний рельс прорыв, чтобы определить точки обратного тренда.

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

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

  2. Неправильные параметры могут легко создавать ложные сигналы.

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

Руководство по оптимизации

  1. Методы, такие как увеличение длины цикла и использование экспоненциальных скользящих средних, могут оптимизировать алгоритмы среднего рельса.

  2. Добавьте индикаторы волатильности, такие как ATR, чтобы избежать ложных прорывов.

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

Резюме

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


/*backtest
start: 2023-02-13 00:00:00
end: 2024-02-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("BB Strategy", shorttitle="BB", overlay=true)

length = input.int(55, minval=1)
maType = input.string("SMA", "Basis MA Type", options = ["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
src = input(close, title="Source")
mult = input.float(1., minval=0.001, maxval=50, title="StdDev")

ma(source, length, _type) =>
    switch _type
        "SMA" => ta.sma(source, length)
        "EMA" => ta.ema(source, length)
        "SMMA (RMA)" => ta.rma(source, length)
        "WMA" => ta.wma(source, length)
        "VWMA" => ta.vwma(source, length)

basis = ma(src, length, maType)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev

// Entry conditions
enterCondition = (close > lower and open < lower and close > open) or (close > upper and open < upper and close > open)

// Exit conditions
exitCondition = (close < upper and open > upper) or (close > open and (upper - lower) > 2 * basis) or (close < lower)

strategy.entry("Long", strategy.long, when=enterCondition)
strategy.close("Long", when=exitCondition)

// Plotting
offset = input.int(0, "Offset", minval = -500, maxval = 500)
plot(basis, "Basis", color=#FF6D00, offset = offset)
p1 = plot(upper, "Upper", color=#2962FF, offset = offset)
p2 = plot(lower, "Lower", color=#2962FF, offset = offset)
fill(p1, p2, title = "Background", color=color.rgb(33, 150, 243, 95))


Больше