Эта стратегия использует полосы Боллинджера для определения направления тренда на рынке в сочетании с индикатором RSI для фильтрации бычьих сигналов, реализуя операции с прорывом импульса для преследования роста и уничтожения падений.
Когда индикатор Болинджерских полос определяет перелом цены через верхнюю полосу, он указывает на то, что рынок входит в бычий тренд. В это время используйте индикатор RSI для фильтрации. Сгенерируйте сигнал покупки, когда RSI больше 60. Когда индикатор BB определяет перелом цены через нижнюю полосу, он указывает на то, что рынок входит в медвежий тренд. В это время используйте индикатор RSI для фильтрации. Сгенерируйте сигнал продажи, когда RSI меньше 40.
Установите стоп-лосс после выхода на рынок, чтобы избежать дальнейших потерь.
Критерием выхода является закрытие длинной позиции, когда цена опускается ниже средней полосы BB, и закрытие короткой позиции, когда цена опускается выше средней полосы BB.
Индикатор Bollinger Bands может определять основные тенденции рынка и фиксировать точки перегиба.
Операция преследования поднимается и убивает падает может достичь избыточной прибыли.
Установка стоп-лосса позволяет контролировать риски.
Показатель BB не эффективен при оценке рынков, которые могут генерировать ложные сигналы.
Неправильное установление стоп-лосса может привести к дальнейшим потерям.
На высокую частоту торгов влияют торговые издержки и скольжение.
Сигналы прорыва должны быть своевременно обновлены, в противном случае лучшие возможности для входа могут быть утеряны.
Комбинировать с другими показателями для оценки надежности сигналов прорыва BB, таких как объем, скользящие средние и т. д.
Динамическое регулирование параметров BB для оптимизации показателей.
Оптимизировать позицию стоп-лосса, например, отставание стоп-лосса, процент стоп-лосса для уменьшения ненужных потерь.
Стратегия имеет четкую логику для определения рыночной тенденции с помощью BB и фильтрующих сигналов с RSI для преследования тренда импульса. Она имеет высокую частоту работы, быстрые циклы прибыли / убытка, более подходящие для трейдеров, стремящихся к избыточным доходам. Однако высокая частота торговли также увеличивает затраты на транзакции и требует строгого управления капиталом и эмоционального контроля. Дальнейшее улучшение производительности и стабильности может быть достигнуто посредством оптимизации параметров и оптимизации стоп-лосса.
/*backtest start: 2023-11-21 00:00:00 end: 2023-12-21 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy(title="Bollinger Band Breakout", shorttitle = "BB-Stoxguru",default_qty_type = strategy.percent_of_equity,default_qty_value = 100, overlay=true) source = close start = timestamp (2007, 1,1,0,0) end = timestamp (2021,11,05,0,0) stop_level = (high[1]-low[1]) profit_level = (high[1]-low[1]) length = input(20, minval=1, title = "Period") //Length of the Bollinger Band mult = input(2, minval=0.001, maxval=50, title = "Standard Deviation") basis = sma(source, length) dev = mult * stdev(source, length) upper = basis + dev lower = basis - dev band=upper-lower stop_loss=low-atr(14) if time >= start // and time < end strategy.entry("Long", strategy.long, when = crossover(source, upper) and rsi(close,14)>=60 and rsi(close,14)<=70) // strategy.entry("Long", strategy.long, when = crossover(source, upper) and rsi(close,14)>60 and band<200) // strategy.exit("SL", "Long", stop=stop_loss) strategy.close(id="Long", when=crossunder(close, basis)) strategy.entry("Short", strategy.short, when = crossunder(source, lower) and rsi(close,14)<=40 and rsi(close,14)>=35) strategy.close(id="Short", when=crossover(close, basis)) // strategy.entry("Short", strategy.short, when = crossunder(source, lower) and rsi(close,14)<40 and band<200) // plot(upper-lower, color=color.purple,title= "DIFF",style=plot.style_linebr) plot(basis, color=color.red,title= "SMA") p1 = plot(upper, color=color.blue,title= "UB") p2 = plot(lower, color=color.blue,title= "LB") // fill(p1, p2) BW = ((upper - lower)) / basis * 100 plot(BW, title="Bollinger bandwidth", color=color.red)