Os indicadores Bollinger Bands + RSI dupla estratégia longa
Esta estratégia combina o indicador de Bollinger Bands e o indicador RSI para ir longo quando ambos mostram um sinal de sobrevenda e para fechar a posição longa quando ambos mostram um sinal de sobrecompra.
Esta estratégia combina os pontos fortes das Bandas de Bollinger e dos indicadores RSI para negociar quando ambos mostram extremos. Isso evita sinais falsos de um único indicador e melhora a precisão do sinal. Em comparação com versões anteriores, apenas o estabelecimento de posições longas reduz o risco de negociação. As otimizações futuras podem ser feitas por meio de ajuste de parâmetros, mecanismos de stop loss, combinação com indicadores de tendência etc. para tornar a estratégia adaptável a diferentes ambientes de mercado.
/*backtest start: 2023-11-30 00:00:00 end: 2023-12-07 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("Bollinger + RSI, Double Strategy Long-Only (by ChartArt) v1.2", shorttitle="CA_-_RSI_Bol_Strat_1.2", overlay=true) // ChartArt's RSI + Bollinger Bands, Double Strategy UPDATE: Long-Only // // Version 1.2 // Idea by ChartArt on October 4, 2017. // // This strategy uses the RSI indicator // together with the Bollinger Bands // to buy when the price is below the // lower Bollinger Band (and to close the // long trade when this value is above // the upper Bollinger band). // // This simple strategy only longs when // both the RSI and the Bollinger Bands // indicators are at the same time in // a oversold condition. // // In this new version 1.2 the strategy was // simplified by going long-only, which made // it more successful in backtesting. // // List of my work: // https://www.tradingview.com/u/ChartArt/ // // __ __ ___ __ ___ // / ` |__| /\ |__) | /\ |__) | // \__, | | /~~\ | \ | /~~\ | \ | // // ///////////// RSI RSIlength = input(6,title="RSI Period Length") RSIoverSold = 50 RSIoverBought = 50 price = close vrsi = rsi(price, RSIlength) ///////////// Bollinger Bands BBlength = input(200, minval=1,title="Bollinger Period Length") BBmult = 2 // 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) and BBbasis < BBbasis[1] ? red : RSIoverSold and (price[1] < BBlower and price > BBlower) and BBbasis > BBbasis[1] ? green : na barcolor(switch1?TrendColor:na) bgcolor(switch2?TrendColor:na,transp=50) ///////////// RSI + Bollinger Bands Strategy long = (crossover(vrsi, RSIoverSold) and crossover(source, BBlower)) close_long = (crossunder(vrsi, RSIoverBought) and crossunder(source, BBupper)) if (not na(vrsi)) if long strategy.entry("RSI_BB", strategy.long, stop=BBlower, comment="RSI_BB") else strategy.cancel(id="RSI_BB") if close_long strategy.close("RSI_BB") //plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)