A estratégia de venda curta de Bollinger Bands e RSI é uma estratégia de negociação de curto prazo baseada em Bollinger Bands e Relative Strength Index (RSI). Combina Bollinger Bands para avaliar se o mercado está superaquecido e RSI para determinar o impulso do mercado, para identificar oportunidades de venda curta.
A estratégia baseia-se em dois indicadores principais:
Bandas de Bollinger. As bandas de Bollinger consistem em uma banda média, uma banda superior e uma banda inferior. A banda média é a média móvel de n dias. As bandas superior e inferior são n desvios padrão acima e abaixo da banda média. Quando o preço salta da banda inferior para a banda superior, o mercado é considerado superaquecido. Quando o preço cai de volta da banda superior para a banda inferior, o mercado esfriou.
RSI. RSI compara o ganho médio e a perda durante um período, para determinar a força das tendências de alta e baixa. Quando o RSI está acima de 70, ele sinaliza que o preço está sobreaquecido. Quando o RSI está abaixo de 30, ele sinaliza que o preço está sobrevendido.
A lógica específica de negociação é a seguinte:
Quando o preço ultrapassa a faixa superior de Bollinger e o RSI é superior a 70, ele desencadeia o sinal de superaquecimento de Bollinger e o sinal de sobrecompra do RSI, portanto, fica curto.
Quando o preço se rompe abaixo da faixa inferior de Bollinger, o mercado reverte mais frio, portanto, a posição é fechada.
A estratégia também define um stop loss e take profit:
O preço de saída é o preço de entrada * (1+1%), ou seja, resistindo a uma perda de 1%.
O lucro obtido é fixado ao preço de entrada * (1-7%), ou seja, o lucro obtido é de 7% e a posição é fechada.
A estratégia apresenta as seguintes vantagens:
Combina Bandas de Bollinger e RSI, evita a probabilidade de erro de julgamento de um único indicador.
Utiliza as bandas de Bollinger e as áreas de sobrecompra e sobrevenda do RSI para determinar os horários precisos de entrada e saída para negociações de curto prazo.
Estabelece o stop loss e o take profit antes da entrada para controlar os riscos.
Lógica simples e clara, fácil de entender e implementar.
As bandas de Bollinger flexíveis e os parâmetros do RSI ajustáveis a diferentes períodos e ambientes de mercado.
Apesar das vantagens, a estratégia tem alguns riscos a atenuar:
Tanto as Bandas de Bollinger como o RSI são indicadores de tendência, não adequados para mercados variáveis ou sem direção.
Não podemos garantir que o stop loss e take profit serão sempre desencadeados perfeitamente.
Os movimentos extremos do mercado poderiam penetrar no stop loss e causar perdas superiores às esperadas.
Requer ajuste constante dos parâmetros dos indicadores para se adaptarem aos mercados em evolução.
Métodos de gestão de riscos correspondentes:
Incorporar indicadores de base como médias móveis para determinar a tendência local, evitando problemas desnecessários.
Dimensão de posição mais baixa, diversificação entre estratégias, para espalhar riscos.
Expanda a percentagem de stop loss ou defina super stops para resistir a movimentos extremos do mercado.
Ajustar continuamente os parâmetros com base nos resultados dos testes em tempo real.
A estratégia pode ser melhorada através de vários aspectos:
Incorporar outros indicadores para evitar perturbações desnecessárias, por exemplo, EMA, MACD.
Teste para parâmetros ideais em diferentes produtos e prazos, por exemplo, 15m, 30m, 1h nas principais criptomoedas e ações.
Implementar paradas dinâmicas, ajustando o nível de paradas com base na volatilidade do mercado em tempo real, para reduzir o risco de paradas.
Considere a otimização por meio de algoritmos de aprendizado de máquina para descobrir automaticamente parâmetros ideais ou padrões mais complexos.
A estratégia de curto prazo primeiro identifica o tempo de venda curto ideal através da medição da temperatura e do impulso do mercado com Bandas de Bollinger e RSI. Em seguida, controla o risco com stop loss e take profit. Sua vantagem reside na simplicidade e facilidade de implementação. Os principais riscos derivam de limitações de indicadores e stop runs. As soluções incluem a incorporação de mais indicadores, ajuste dinâmico de parâmetros e permitindo paradas mais amplas. Resta muito espaço para otimização através da introdução de mais indicadores e melhorias computacionais.
/*backtest start: 2023-12-07 00:00:00 end: 2023-12-14 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © Coinrule // Works best on 30m, 45m timeframe //@version=5 strategy("Bollinger Bands and RSI Short Selling", overlay=true, initial_capital = 1000, default_qty_value = 30, default_qty_type = strategy.percent_of_equity, commission_type=strategy.commission.percent, commission_value=0.1) //Backtest period timePeriod = time >= timestamp(syminfo.timezone, 2021, 12, 1, 0, 0) notInTrade = strategy.position_size <= 0 //Bollinger Bands Indicator length = input.int(20, minval=1) src = input(close, title="Source") mult = input.float(2.0, minval=0.001, maxval=50, title="StdDev") basis = ta.sma(src, length) dev = mult * ta.stdev(src, length) upper = basis + dev lower = basis - dev offset = input.int(0, "Offset", minval = -500, maxval = 500) plot(basis, "Basis", color=#FF6D00, offset = offset) p1 = plot(upper, "Upper", color=#2962FF, offset = offset) p2 = plot(lower, "Lower", color=#2962FF, offset = offset) fill(p1, p2, title = "Background", color=color.rgb(33, 150, 243, 95)) // RSI inputs and calculations lengthRSI = 14 RSI = ta.rsi(close, lengthRSI) oversold= input(30) //Stop Loss and Take Profit for Shorting Stop_loss= ((input (1))/100) Take_profit= ((input (7)/100)) shortStopPrice = strategy.position_avg_price * (1 + Stop_loss) shortTakeProfit = strategy.position_avg_price * (1 - Take_profit) //Entry and Exit strategy.entry(id="short", direction=strategy.short, when=ta.crossover(close, upper) and RSI < 70 and timePeriod and notInTrade) if (ta.crossover(upper, close) and RSI > 70 and timePeriod) strategy.exit(id='close', stop = shortTakeProfit, limit = shortStopPrice)