
Эта стратегия использует индикаторы Бринского пояса, чтобы определить, находится ли цена в интеграционной фазе, а также использует прорывные решения входа и выхода. В целом, эта стратегия использует в основном для получения прибыли от сильной ситуации, вызванной ценовой интеграцией.
Эта стратегия сначала рассчитывает простые движущиеся средние цены закрытия в течение 20 дней как среднюю полосу в ленте Брин, а также рассчитывает стандартную разницу в 2 раза как полосу в ленте Брин. Когда цена выше верхней полосы, она считается прорывом вверх, а когда цена ниже нижней полосы, она считается прорывом вниз.
Когда цена находится на средней траектории по Бринскому поясу вниз, рассматривается как интеграционный период. Когда обнаруживается сигнал прорыва, делается многоголовый вход.
Стоп-лост установлен в два раза выше показателя ATR.
Стратегия опирается на интеграционные и прорывные свойства Брин-Бенда с следующими преимуществами:
Однако эта стратегия также несет в себе некоторые риски:
Ответ:
Эта стратегия может быть оптимизирована в следующих направлениях:
Стратегия в целом является более простой и непосредственной, благодаря скоплению энергии, вызванной ценовой интеграцией, достигается большая прибыль. Есть больше возможностей для оптимизации, можно скорректировать правила входа, методы остановки убытков и т. Д., чтобы получить более стабильную прибыль при условии контроля риска.
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Consolidation Breakout Strategy", shorttitle="CBS", overlay=true)
// Parameters
length = input(20, title="Bollinger Bands Length")
mult = input(2.0, title="Bollinger Bands Multiplier")
risk = input.float(1, title="Risk per Trade (%)") / 100
// Calculate Bollinger Bands
basis = ta.sma(close, length)
dev = mult * ta.stdev(close, length)
upper = basis + dev
lower = basis - dev
// Entry Conditions
consolidating = ta.crossover(close, upper) and ta.crossunder(close, lower)
// Exit Conditions
breakout = ta.crossover(close, upper) or ta.crossunder(close, lower)
// Risk Management
atrVal = ta.atr(14)
stopLoss = atrVal * input.float(2, title="Stop Loss Multiplier", minval=0.1, maxval=5)
// Entry and Exit Conditions
longEntry = breakout and close > upper
shortEntry = breakout and close < lower
if (longEntry)
strategy.entry("Long", strategy.long)
if (shortEntry)
strategy.entry("Short", strategy.short)
if (longEntry and close < basis - stopLoss)
strategy.close("Long Exit")
if (shortEntry and close > basis + stopLoss)
strategy.close("Short Exit")
// Plot Entry and Exit Points
plotshape(consolidating, style=shape.triangleup, location=location.belowbar, color=color.rgb(30, 255, 0), title="Entry Signal")
plotshape(breakout, style=shape.triangledown, location=location.abovebar, color=color.rgb(255, 0, 0), title="Exit Signal")