
Strategi ini menggunakan gabungan indikator MACD dan RSI untuk mewujudkan mekanisme double confirmation entry yang menyeimbangkan antara keupayaan keuntungan dan kawalan risiko, bertujuan untuk mendapatkan keuntungan yang stabil pada garis tengah dan panjang.
Strategi ini terutamanya menggunakan indikator MACD untuk menentukan trend pasaran dan masa masuk. Garis penembusan MACD dianggap sebagai isyarat beli, dan garis penembusan MACD sebagai isyarat jual. Selain itu, kawasan overbought oversold dalam indikator RSI digunakan untuk menyaring penembusan palsu.
Untuk memastikan kebolehpercayaan isyarat perdagangan, strategi ini juga memasukkan penghakiman jumlah transaksi. Strategi ini hanya akan menghantar isyarat perdagangan apabila jumlah transaksi lebih besar daripada jumlah transaksi rata-rata 20 hari. Ini dapat mengelakkan isyarat kesalahan yang dihasilkan apabila jumlah perdagangan pasaran tidak mencukupi.
Akhirnya, strategi ini juga menggunakan arah entiti K-line sebagai cara untuk mengesan dan mengesahkan berhenti. Apabila arah entiti K-line berubah, kedudukan semasa dihapuskan. Ini dapat mengunci keuntungan dan mencegah pembalikan keuntungan.
Strategi ini secara keseluruhannya adalah keseimbangan antara kestabilan dan keuntungan. MACD menilai trend utama, RSI dan penapisan berganda kuantiti perdagangan meningkatkan kualiti isyarat, K-line mengesan risiko kawalan kerugian berhenti. Strategi ini dapat diperbaiki lagi dengan mengoptimumkan parameter dan menambah petunjuk teknikal lain. Perlu diingat bahawa jangan terlalu mencari kerumitan, penting untuk mengekalkan strategi yang sederhana dan stabil.
/*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ı")