Estrategia MACD y RSI de doble confirmación

El autor:¿ Qué pasa?, Fecha: 2024-02-18 16:24:06
Las etiquetas:

img

Resumen general

Esta estrategia combina el indicador MACD y el indicador RSI para implementar un mecanismo de doble confirmación de las señales de entrada, equilibrando la rentabilidad y el control de riesgos, con el objetivo de obtener rendimientos constantes a medio y largo plazo.

Estrategia lógica

La estrategia utiliza principalmente el indicador MACD para determinar las tendencias del mercado y los puntos de entrada. Un cruce de la línea MACD por encima de la línea de señal se considera una señal de compra, mientras que un cruce de la línea MACD por debajo de la línea de señal se considera una señal de venta. Además, el área de sobrecompra del indicador RSI se utiliza para filtrar falsos breakouts. La estrategia solo emite una señal de compra cuando ocurre la señal de compra MACD y el indicador RSI no ha entrado en la zona de sobrecompra.

Para garantizar la confiabilidad de las señales comerciales, esta estrategia también incorpora análisis de volumen. Solo cuando el volumen es mayor que el volumen promedio de 20 días, la estrategia emitirá señales comerciales. Esto evita señales erróneas cuando el mercado no tiene un volumen de operaciones suficiente.

Finalmente, la estrategia también utiliza la dirección de los cuerpos de las velas como una forma de rastrear las paradas y confirmaciones.

Análisis de ventajas

  • El MACD juzga las tendencias del mercado y los puntos de entrada, lo que permite la entrada al comienzo de las tendencias para un mayor potencial de ganancia
  • El RSI evita entrar durante los niveles de sobrecompra/sobreventa, reduciendo las pérdidas
  • El análisis del volumen filtra aún más las señales falsas, aumentando la rentabilidad
  • El seguimiento de las paradas de candlestick controla razonablemente los riesgos

Análisis de riesgos

  • El MACD tiene capacidad rezagada y puede perder inversiones de tendencia a corto plazo
  • Las reglas de volumen pueden pasar por alto las tendencias provocadas por los bajos volúmenes
  • Las paradas de candlestick pueden ser detenidas por picos a corto plazo

Direcciones de optimización

  • Considere la posibilidad de añadir más indicadores de filtrado como las bandas de Bollinger para mejorar aún más la calidad de la señal
  • Prueba de añadir paradas ferroviarias para obtener beneficios a largo plazo
  • Optimizar las combinaciones de parámetros MACD para aumentar la sensibilidad del indicador

Resumen de las actividades

En general, esta estrategia equilibra la estabilidad y la rentabilidad. El MACD juzga la tendencia principal, el RSI y el volumen proporcionan un doble filtrado para mejorar la calidad de la señal, el seguimiento de velas detiene el control del riesgo. La estrategia se puede mejorar aún más a través de la optimización de parámetros e incorporando indicadores técnicos adicionales.


/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-17 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Al-Sat Sinyali ve Teyidi", overlay=true)

// MACD (Hareketli Ortalama Yakınsaklık Sapma)
[macdLine, signalLine, _] = ta.macd(close, 5, 13, 5)

// RSI (Göreceli Güç Endeksi)
rsiValue = ta.rsi(close, 14)

// Hacim
volumeAverage = ta.sma(volume, 20)

// RSI ve MACD Filtreleri
rsiOverbought = rsiValue > 70
rsiOversold = rsiValue < 30
macdBuySignal = ta.crossover(macdLine, signalLine) and not rsiOverbought
macdSellSignal = ta.crossunder(macdLine, signalLine) and not rsiOversold

// Al-Sat Stratejisi
shouldBuy = ta.crossover(close, open) and not ta.crossover(close[1], open[1]) and macdBuySignal and volume > volumeAverage
shouldSell = ta.crossunder(close, open) and not ta.crossunder(close[1], open[1]) and macdSellSignal and volume > volumeAverage

strategy.entry("Buy", strategy.long, when=shouldBuy)
strategy.entry("Sell", strategy.short, when=shouldSell)

// Teyit için bir sonraki mumu bekleme
strategy.close("Buy", when=ta.crossover(close, open))
strategy.close("Sell", when=ta.crossunder(close, open))

// Görselleştirmeyi devre dışı bırakma
plot(na)

// Al-Sat Etiketleri
plotshape(series=shouldBuy, title="Al Sinyali", color=color.green, style=shape.triangleup, location=location.belowbar, size=size.small, text="Al")
plotshape(series=shouldSell, title="Sat Sinyali", color=color.red, style=shape.triangledown, location=location.abovebar, size=size.small, text="Sat")

// Varsayımsal bir sonraki mumun kapanış fiyatını hesapla
nextBarClose = close[1]
plot(nextBarClose, color=color.blue, linewidth=2, title="Tahmin Edilen Kapanış Fiyatı")


Más.