Tren RSI Mengikuti Strategi Bull

Penulis:ChaoZhang, Tanggal: 2024-01-04 17:48:41
Tag:

img

Gambaran umum

Strategi ini adalah strategi bull yang menggunakan indikator RSI untuk menentukan tren dan indikator MACD untuk memasuki pasar.

Logika Strategi

Strategi ini terutama bergantung pada indikator RSI untuk menentukan arah tren. Ketika RSI melintasi di atas garis panjang yang ditetapkan (default 21), dianggap bahwa pasar dapat berbalik ke tren naik. Pada saat ini jika MACD sudah berada dalam tren menurun, dapat dinilai bahwa itu berada di titik pembalikan, yang merupakan kesempatan yang baik untuk pergi panjang.

Selain itu, strategi ini juga memperkenalkan garis EMA (default 200 periode) sebagai filter tren. Hanya ketika harga di atas garis EMA, perdagangan panjang akan dipertimbangkan. Ini dapat secara efektif menyaring pembalikan palsu ketika tren tidak jelas atau menurun.

Pada sisi stop loss, strategi juga menetapkan garis stop loss reguler dan garis stop loss darurat. Ketika RSI melintasi di bawah garis stop loss reguler (default 86), posisi tutup; jika harga turun tajam dan RSI melintasi di bawah garis stop loss darurat (default 73), posisi tutup tanpa syarat untuk mengendalikan kerugian maksimum.

Analisis Keuntungan

  • Gunakan RSI untuk mengidentifikasi titik pembalikan, dengan MACD untuk menyaring entri palsu.
  • Memperkenalkan garis EMA untuk menentukan tren utama.
  • Gunakan stop loss reguler dan stop loss darurat untuk mengendalikan risiko.

Analisis Risiko

  • Sinyal pembalikan RSI mungkin memiliki penilaian yang salah.
  • Garis EMA tidak dapat merespon perubahan tren besar tepat waktu.
  • Indikator stop loss tunggal dapat menghentikan perdagangan yang menguntungkan lebih awal.

Arahan Optimasi

  • Indikator volume atau rasio lilin banteng/beruang dapat diperkenalkan sebagai alat penilaian tambahan untuk meningkatkan akurasi entri.
  • Sistem rata-rata bergerak dapat disesuaikan untuk melacak tren N hari terbaru secara dinamis.
  • Tambahkan mekanisme stop loss yang lebih canggih seperti stop loss bergerak atau stop loss statistik untuk membuat stop loss lebih fleksibel.

Ringkasan

Singkatnya, strategi ini adalah tren yang relatif tradisional mengikuti strategi bull. Ini mengidentifikasi titik pembalikan dengan RSI, menyaring penilaian yang salah dengan MACD, menentukan tren utama dengan EMA dan mengendalikan risiko dengan stop loss. Strategi ini cukup sederhana dan intuitif, mudah dipahami, dan memiliki beberapa keuntungan dalam menilai pembalikan pasar, menjadikannya strategi titik awal yang baik untuk perdagangan algo. Tetapi masih ada ruang besar untuk perbaikan lebih lanjut dengan mengoptimalkan sinyal masuk, hakim tren dan mekanisme stop loss.


/*backtest
start: 2022-12-28 00:00:00
end: 2024-01-03 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Scriptâ„¢ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © dravitch
//@version=4
strategy("RSI - BULL RUN (Improved)", overlay=true)

// Input
UseEmergency = input(true, "Use Emergency Exit?")
RSIlong = input(21, "RSI Long Cross")
RSIcloseLong = input(86, "RSI Close Long Position")

EmergencycloseLong = input(73, "RSI Emergency Close Long Position")
UseEMAFilter = input(true, "Use EMA Trend Filter")
EMAlength = input(200, "EMA Length for Trend Filter")  // Utiliser 200 pour SMMA

// RSI
rsiValue = rsi(close, 14)

// MACD
[macdLine, signalLine, _] = macd(close, 12, 26, 9)

// EMA Trend Filter
emaTrend = sma(close, EMAlength)  // Utiliser sma pour la SMMA (Simple Moving Average)

// Conditions pour les trades longs
trendUp = close > emaTrend
trendDown = close < emaTrend
longCondition = crossover(rsiValue, RSIlong) and trendDown or crossunder(macdLine, signalLine) and crossover(rsiValue, RSIlong)
longCloseCondition = crossunder(rsiValue, RSIcloseLong) and trendUp
emergencyLongCondition = crossunder(rsiValue, EmergencycloseLong) 

// Plots
plot(rsiValue, color=color.white, linewidth=2, title="RSI")

// Strategy
if (longCondition)
    strategy.entry("Long", strategy.long, alert_message='RSI Long Cross: LONG')
if (longCloseCondition)
    strategy.close("Long", alert_message='RSI Close Long Position')
if (emergencyLongCondition and UseEmergency)
    strategy.close("Long", alert_message='RSI Emergency Close Long')

// Plot EMA Trend Filter in a separate pane
plot(emaTrend, color=color.rgb(163, 0, 122), title="EMA Trend Filter", linewidth=2, style=plot.style_line, transp=0)
hline(0, "Zero Line", color=color.gray)

Lebih banyak