
Esta estrategia utiliza una combinación de indicadores MACD y RSI para lograr un mecanismo de entrada de doble confirmación, un equilibrio entre la capacidad de rentabilidad y el control de riesgos, con el objetivo de obtener ganancias estables en la línea media y larga.
La estrategia utiliza principalmente el indicador MACD para determinar la tendencia del mercado y el momento de entrada. La línea de señal de ruptura de la línea MACD se considera una señal de compra, y la línea de señal de caída de la línea MACD es una señal de venta. Además, la zona de sobreventa del indicador RSI se utiliza para filtrar las falsas rupturas.
Para garantizar la fiabilidad de las señales de negociación, la estrategia también incluye el juicio del volumen de transacciones. La estrategia emite una señal de negociación solo cuando el volumen de transacciones es mayor que el promedio de transacciones de 20 días. Esto evita la señal de error que se produce cuando el volumen de transacciones del mercado es insuficiente.
Finalmente, la estrategia también utiliza la dirección de la entidad de la línea K como una forma de rastrear el stop loss y la confirmación. Cuando la dirección de la entidad de la línea K cambia, se elimina la posición actual. Esto puede bloquear los beneficios y evitar el rebote de los beneficios.
Esta estrategia tiene un equilibrio de estabilidad y rentabilidad en su conjunto. El MACD determina la tendencia principal, el RSI y el doble filtrado de la transacción mejoran la calidad de la señal, y el K-line rastrea el riesgo de control de pérdidas. Se puede mejorar aún más esta estrategia optimizando los parámetros y agregando otros indicadores técnicos.
/*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ı")