Эта стратегия сочетает в себе индикаторы относительной силы (RSI) и полос Боллинджера для реализации логики двойного подтверждения входов и выходов. Она генерирует торговые сигналы только тогда, когда как RSI, так и полосы Боллинджера показывают сигналы перекупления или перепродажи одновременно. Это может эффективно уменьшить ложные сигналы и улучшить стабильность стратегии.
Вышеприведенная логика реализует стабильную стратегию двойного подтверждения для входов и выходов.
Механизм двойного подтверждения отфильтровывает много шумных сделок, избегает ненужных сделок, снижает затраты на торговлю и повышает прибыльность.
RSI эффективен в определении тенденций и переломов. Полосы Боллинджера эффективны в оценке поддержки и сопротивления.
Гибкие настройки параметров, могут быть настроены на основе различных продуктов и торговых предпочтений, очень адаптивные.
В рыночных диапазонах RSI и Bollinger Bands могут одновременно давать неправильные сигналы, вызывая ненужные потери.
Механизм двойного подтверждения немного увеличивает задержку входа, возможно, упуская очень краткосрочные торговые возможности. Не подходит для стратегий, которые очень чувствительны к задержке.
Стратегия очень чувствительна к параметрам. Ненадлежащие параметры могут значительно снизить прибыльность. Для поиска оптимальной комбинации параметров необходимо достаточное обратное тестирование и обзор.
Испытывайте индикаторы RSI с различными периодами, чтобы найти наилучший параметр периода соответствия для повышения эффективности.
Добавить логику стоп-лосса, установить разумный движущий стоп-лосс или фиксированный стоп-лосс для контроля риска потери одной сделки.
Проверьте параметр пропускной способности Боллинджера для оптимизации диапазона канала и повышения эффективности.
Испытывайте различные ценовые входы, такие как близкие, высокие, низкие и т. Д., Чтобы найти лучший ценовой вход для повышения стабильности.
Стратегия успешно сочетает в себе индикаторы RSI и Bollinger Bands для реализации логики двойного подтверждения, обеспечивая достаточные торговые возможности при эффективном снижении шума сделок. При надлежащей оптимизации параметров и контроле рисков она может стать очень стабильной и надежной стратегией отслеживания трендов и торговли.
/*backtest start: 2023-12-22 00:00:00 end: 2024-01-21 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("Bollinger + RSI, Double Strategy (by ChartArt)", shorttitle="CA_-_RSI_Bol_Strat", overlay=true) // ChartArt's RSI + Bollinger Bands, Double Strategy // // Version 1.0 // Idea by ChartArt on January 14, 2015. // // This strategy uses a modfied RSI to sell // when the RSI increases over the value of 55 // (or to buy when the value falls below 45), // with the classic Bollinger Bands strategy // to sell when the price is above the // upper Bollinger Band (and to buy when // this value is below the lower band). // // This simple strategy only triggers when // both the RSI and the Bollinger Bands // indicators are at the same time in // a overbought or oversold condition. // // List of my work: // https://www.tradingview.com/u/ChartArt/ // // __ __ ___ __ ___ // / ` |__| /\ |__) | /\ |__) | // \__, | | /~~\ | \ | /~~\ | \ | // // ///////////// RSI RSIlength = input( 16 ,title="RSI Period Length") RSIvalue = input( 45 ,title="RSI Value Range") RSIoverSold = 0 + RSIvalue RSIoverBought = 100 - RSIvalue price = close vrsi = rsi(price, RSIlength) ///////////// Bollinger Bands BBlength = input(20, minval=1,title="Bollinger Bands SMA Period Length") BBmult = input(2.0, minval=0.001, maxval=50,title="Bollinger Bands Standard Deviation") BBbasis = sma(price, BBlength) BBdev = BBmult * stdev(price, BBlength) BBupper = BBbasis + BBdev BBlower = BBbasis - BBdev source = close buyEntry = crossover(source, BBlower) sellEntry = crossunder(source, BBupper) plot(BBbasis, color=aqua,title="Bollinger Bands SMA Basis Line") p1 = plot(BBupper, color=silver,title="Bollinger Bands Upper Line") p2 = plot(BBlower, color=silver,title="Bollinger Bands Lower Line") fill(p1, p2) ///////////// Colors switch1=input(true, title="Enable Bar Color?") switch2=input(true, title="Enable Background Color?") TrendColor = RSIoverBought and (price[1] > BBupper and price < BBupper) ? red : RSIoverSold and (price[1] < BBlower and price > BBlower) ? green : na barcolor(switch1?TrendColor:na) bgcolor(switch2?TrendColor:na,transp=50) ///////////// RSI + Bollinger Bands Strategy if (not na(vrsi)) if (crossover(vrsi, RSIoverSold) and crossover(source, BBlower)) strategy.entry("RSI_BB_L", strategy.long, stop=BBlower, comment="RSI_BB_L") else strategy.cancel(id="RSI_BB_L") if (crossunder(vrsi, RSIoverBought) and crossunder(source, BBupper)) strategy.entry("RSI_BB_S", strategy.short, stop=BBupper, comment="RSI_BB_S") else strategy.cancel(id="RSI_BB_S") //plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)