A estratégia é chamada
A lógica central desta estratégia consiste em utilizar tanto as Bandas de Bollinger como o RSI para julgar as condições de sobrecompra e sobrevenda no mercado para a filtragem de sinais de negociação.
Especificamente, as bandas superiores e inferiores de Bollinger podem determinar se os preços estão fora da faixa de volatilidade, julgando assim se o mercado está sobrecomprado ou sobrevendido.
A estratégia é definida de modo a que as operações de compra ou venda só sejam realizadas quando as Bandas de Bollinger e o RSI exibem sinais de sobrecompra ou sobrevenda ao mesmo tempo.
A maior vantagem desta estratégia é a utilização de indicadores duplos para a filtragem, o que pode reduzir as operações enganosas e melhorar a fiabilidade do sinal.
Em comparação com um único indicador de Bandas de Bollinger, a estratégia de indicador duplo pode reduzir muito a probabilidade de sinais falsos.
Em geral, a estratégia de indicadores duais considera de forma abrangente várias situações e apresenta uma melhor adaptabilidade e estabilidade.
O principal risco desta estratégia é que as configurações de parâmetros de Bollinger Bands e RSI podem ser inadequadas. Se os parâmetros de Bollinger Bands forem definidos para serem muito sensíveis, é propenso a gerar sinais redundantes.
Além disso, a combinação de indicadores duplos em si significa menos sinais. Se o mercado apenas atender aos sinais de um indicador, enquanto o outro não atingiu o nível de gatilho, essa estratégia não gerará sinais. Portanto, em comparação com as estratégias de indicador único, a frequência de negociação desta estratégia será menor.
As soluções incluem principalmente a definição de parâmetros mais adequados, a modificação dos níveis de desencadeamento do RSI e das Bandas de Bollinger, etc. Se a frequência de negociação for muito baixa, considere reduzir os requisitos de parâmetros para aumentar as oportunidades de entrada.
Esta estratégia pode ser otimizada nos seguintes aspectos:
Teste diferentes combinações de Bandas de Bollinger e parâmetros do RSI para encontrar melhores correspondências.
Adicionar estratégias de stop loss e take profit para melhorar a rentabilidade.
Adicionar mecanismos de dimensionamento de posições Usar dimensionamento de posição dinâmico para aumentar as posições quando a tendência vai bem e reduzir as perdas quando a tendência vai mal.
Adicionar a autoadaptabilidade dos parâmetros com base em dados históricos.
Como uma estratégia filtrada por indicadores duplos, esta estratégia tem boa estabilidade geral e adaptabilidade. Ao mesmo tempo em que reduz a proporção de falsos sinais, também reduz a frequência de negociação.
/*backtest start: 2024-01-07 00:00:00 end: 2024-01-11 23:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("Bollinger Bands + RSI, Double Strategy (by SlumdogTrader)", shorttitle="BolBand_RSI_Strat", overlay=true) // SlumdogTrader's Bollinger Bands + RSI Double Strategy - Profit Trailer // // Version 1.0 // Script by SlumdogTrader on July Fri 13(!), 2018. // // This strategy uses a normalise Bollinger Bands + RSI. // // Bollinger Band triggers // SELL - when the price is above the upper band. // BUY - when the price is below the lower band. // // RSI triggers // SELL - when the price is above 55. // BUY - when the price is below 45. // // This simple strategy only triggers when // both the BB and the RSI // indicators, at the same time, are in // a overbought or oversold condition. // // Visit my TradingView work at: // https://www.tradingview.com/u/SlumdogTrader/ // // Visit my website at: // https://www.slumdogtrader.com // ///////////// Bollinger Bands Settings 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") price = input(close, title="Source") 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="BBs SMA Basis Line") p1 = plot(BBupper, color=silver,title="BBs Upper Line") p2 = plot(BBlower, color=silver,title="BBs Lower Line") fill(p1, p2) ///////////// RSI Settings RSIlength = input( 16 ,title="RSI Period Length") RSIvalue = input( 45 ,title="RSI Value Range") RSIoverSold = 0 + RSIvalue RSIoverBought = 100 - RSIvalue vrsi = rsi(price, RSIlength) ///////////// Colour Settings 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)