Эта стратегия представляет собой обратную торговую систему тренда, основанную на индикаторе Болинджерских полос, который фиксирует возможности переворота рынка путем мониторинга взаимоотношений между ценой и Болинджерскими полосами.
Основная логика основана на теории среднего реверсия. Когда цена касается нижней полосы, система считает рынок перепроданным и имеет тенденцию идти длинным; когда цена касается верхней полосы, система считает рынок перекупленным и имеет тенденцию идти коротким.
Эта стратегия использует четкую логику и разумный контроль рисков. Благодаря соответствующим параметрам и всеобъемлющим правилам торговли, стратегия показывает хорошую стабильность на рынках с диапазоном. Однако при применении к живой торговле необходимо обратить внимание на риски прорыва тренда. Рекомендуется комбинировать другие технические индикаторы для подтверждения торговли и динамически корректировать параметры стратегии на основе рыночных условий.
/*backtest start: 2024-11-11 00:00:00 end: 2024-12-11 00:00:00 period: 5h basePeriod: 5h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("5-Min Bollinger Bands Touch Strategy", overlay=true, margin_long=100, margin_short=100) // Input parameters length = input(20, title="Bollinger Bands Length") mult = input(3.4, title="Bollinger Bands Deviation") // Bollinger Bands calculation basis = ta.sma(close, length) dev = mult * ta.stdev(close, length) upper = basis + dev lower = basis - dev // Plot Bollinger Bands plot(basis, color=color.blue, title="Basis") p1 = plot(upper, color=color.red, title="Upper Band") p2 = plot(lower, color=color.green, title="Lower Band") fill(p1, p2, color=color.new(color.gray, 90)) // Bullish buying condition: 5-min low touches lower Bollinger Band bullish_entry = low <= lower and low[1] > lower[1] // Bearish selling condition: 5-min high touches upper Bollinger Band bearish_entry = high >= upper and high[1] < upper[1] // Entry and exit conditions longCondition = bullish_entry shortCondition = bearish_entry // Strategy entries if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short) // Optional: Add exit conditions (you may want to customize these) // Example: Exit long position after a certain profit or loss strategy.close("Long", when = high >= basis) strategy.close("Short", when = low <= basis) // Alerts alertcondition(bullish_entry, title='Bullish BB Touch', message='5-min low touched Lower Bollinger Band') alertcondition(bearish_entry, title='Bearish BB Touch', message='5-min high touched Upper Bollinger Band') // Plot entry points plotshape(bullish_entry, title="Bullish Entry", location=location.belowbar, style=shape.triangleup, size=size.small, color=color.green) plotshape(bearish_entry, title="Bearish Entry", location=location.abovebar, style=shape.triangledown, size=size.small, color=color.red)