A estratégia Multiple MACD e RSI utiliza de forma abrangente os sinais do indicador MACD e do indicador RSI. Ela vai longa quando as linhas rápidas e lentas dos dois MACD se cruzam e o RSI está abaixo do nível de sobrecompra, e vai curta quando as linhas rápidas e lentas dos dois MACD se cruzam e o RSI entra no nível de sobrevenda, com o objetivo de capturar tendências de médio e longo prazo.
Esta estratégia emprega dois indicadores MACD para gerar sinais. Um MACD tem parâmetros de comprimento rápido 10, comprimento lento 22 e comprimento MACD 9. O outro MACD tem parâmetros de comprimento rápido 21, comprimento lento 45 e comprimento MACD 20. Ele gera um sinal de compra quando as linhas rápidas de ambos os MACD cruzam acima de suas linhas lentas e um sinal de venda quando as linhas rápidas de ambos os MACD cruzam abaixo de suas linhas lentas.
Enquanto isso, ele incorpora o indicador RSI para julgar condições de sobrecompra e sobrevenda. O parâmetro RSI é definido como 14, com nível de sobrecompra em 70 e nível de sobrevenda em 20. Ele pode comprar quando o RSI está abaixo do nível de sobrecompra e vender quando o RSI está acima do nível de sobrevenda.
Somente quando ambos os MACDs geram um sinal de compra e o RSI não estiver sobrecomprado, uma entrada longa será acionada.
A maior vantagem desta estratégia é que utiliza indicadores MACD duplos para filtrar alguns sinais falsos e só entra quando ambos os MACDs emitem sinais.
Além disso, a incorporação de RSI para julgar as condições de sobrecompra/supervenda evita o longo/curto quando o preço já está em forte tendência, reduzindo assim os riscos de perda.
Combinando a dupla filtragem MACD e o julgamento RSI, esta estratégia só opera em mercados de tendência e pode obter lucros decentes das tendências de médio prazo.
Esta estratégia também possui alguns riscos. A filtragem dupla do MACD pode perder o momento da reversão do preço e levar a perdas ampliadas. Ir longo quando ambos os MACD são cruzamento positivo e o RSI não está sobrecomprado ainda pode já ter perdido o fundo e levar a perdas.
Além disso, o próprio MACD é muito sensível às características dos mercados de negociação. Os parâmetros do MACD precisam ser ajustados para que diferentes ciclos de negociação e ambientes de mercado tenham efeito. Se os parâmetros não forem definidos corretamente, ele é propenso a gerar sinais falsos e causar perdas.
Além disso, o RSI pode produzir múltiplos sinais de sobrecompra / sobrevenda.
Alguns aspectos podem ser considerados para otimizar esta estratégia:
Otimizar os parâmetros MACD, ajustar os comprimentos de linha rápido/lento para encontrar combinações ótimas de parâmetros MACD para diferentes produtos e prazos, melhorando a eficiência do sinal.
Ajustar os parâmetros do RSI, reduzir ou ampliar moderadamente os níveis de sobrecompra/supervenda para otimizar o tempo de entrada.
Adicionar estratégias de stop loss para reduzir as perdas quando o drawdown atingir um certo nível, evitando novas perdas.
Considere a adição de julgamentos auxiliares como pontos de ruptura para confirmar ainda mais a tendência antes de entrar.
A estratégia Multiple MACD e RSI combina indicadores MACD e RSI duplos para melhorar a validade do sinal e pode obter lucros decentes de movimentos de tendências de médio e longo prazo.
/*backtest start: 2023-09-30 00:00:00 end: 2023-10-07 00:00:00 period: 15m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("MACDbl RSI", overlay=true) fastLength = input(10) slowlength = input(22) MACDLength = input(9) MACD = ema(close, fastLength) - ema(close, slowlength) aMACD = sma(MACD, MACDLength) delta = MACD - aMACD fastLength2 = input(21) slowlength2 = input(45) MACDLength2 = input(20) MACD2 = ema(open, fastLength2) - ema(open, slowlength2) aMACD2 = sma(MACD2, MACDLength2) delta2 = MACD2 - aMACD2 Length = input(14, minval=1) Oversold = input(20, minval=1) Overbought = input(70, minval=1) xRSI = rsi(open, Length) if (delta > 0) and (year>2015) and (delta2 > 0) and (xRSI < Overbought) strategy.entry("buy", strategy.long, comment="buy") if (delta < 0) and (year>2015) and (delta2 < 0) and (xRSI > Oversold) strategy.entry("sell", strategy.short, comment="sell") //plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)