Strategi Crossover Indikator Momentum

Penulis:ChaoZhang, Tanggal: 2024-02-01 14:50:26
Tag:

img

Gambaran umum

Strategi ini menggunakan crossover dari indikator RSI dan moving average sebagai sinyal perdagangan, yang termasuk dalam strategi indikator momentum yang umum. Prinsip utamanya adalah untuk melacak perbedaan antara indikator RSI dan rata-rata bergerak sederhana SMA_RSI dari RSI, dan kemudian menghitung rata-rata bergerak sederhana SMA_RSI2 dari perbedaan ini. Ketika SMA_RSI2 melintasi ambang batas, pergi panjang. Ketika melintasi di bawah ambang batas, tutup posisi.

Prinsip Strategi

Strategi ini menggunakan 3 parameter untuk menghitung indikator RSI dan dua rata-rata bergerak sederhana dengan periode yang berbeda. Pertama, hitung indikator RSI reguler dengan panjang periode. Kemudian hitung panjang2 periode SMA_RSI rata-rata bergerak sederhana dari RSI. Akhirnya, hitung perbedaan delta antara RSI dan SMA_RSI, dan kemudian hitung panjang3 periode rata-rata bergerak sederhana SMA_RSI2 dari delta. Ketika SMA_RSI2 melintasi batas yang ditentukan pengguna, buat perdagangan panjang. Ketika SMA_RSI2 melintasi batas di bawah, tutup posisi.

Dengan demikian, sebuah strategi sinyal perdagangan berdasarkan crossover dari indikator RSI rata-rata bergerak terbentuk. Karena SMA_RSI2 adalah rata-rata bergerak dari delta perbedaan, itu dapat mencerminkan momentum dan perubahan tren dari indikator RSI, memahami esensi dari indikator RSI itu sendiri.

Analisis Keuntungan

Strategi ini menggabungkan keuntungan dari indikator RSI dan rata-rata bergerak mereka untuk mengikuti tren harga dan menghindari menyesatkan oleh kebisingan. Ide menghitung delta perbedaan dan kemudian smoothing menghasilkan sinyal perdagangan yang lebih jelas. Secara keseluruhan, strategi ini memiliki penarikan yang lebih kecil dan keuntungan yang lebih stabil.

Keuntungan spesifiknya adalah:

  1. Menggunakan delta untuk meredakan fluktuasi harga dan mengurangi sinyal palsu
  2. Bentuk crossover rata-rata bergerak yang sederhana dan langsung, mudah dikuasai
  3. Parameter yang lebih dapat disesuaikan dengan pasar
  4. Keuntungan yang stabil, penarikan yang lebih kecil

Risiko dan Peningkatan

Ada juga beberapa risiko dalam strategi ini, terutama tercermin dalam:

  1. Stop loss yang lebih besar dalam pergerakan pasar yang signifikan
  2. Keuntungan yang tidak stabil dalam tren yang bervariasi

Peningkatan dapat dilakukan dalam aspek berikut:

  1. Mengoptimalkan parameter untuk meningkatkan stabilitas
  2. Tambahkan mekanisme stop loss untuk mengendalikan kerugian tunggal
  3. Gabungkan dengan indikator lain untuk meningkatkan kualitas sinyal

Kesimpulan

Strategi ini relatif sederhana dan universal. Dengan meningkatkan kepraktisan indikator RSI itu sendiri melalui operasi aritmatika delta dan menggunakan silang untuk menilai, ia memiliki kontrol penarikan yang baik dan merupakan strategi indikator momentum yang sangat praktis.


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

//@version=4
strategy ("RSI&SMA", overlay=false )
startP = timestamp(input(2017, "Start Year"), input(12, "Month"), input(17, "Day"), 0, 0)
end   = timestamp((9999), (1), (1), 0, 0)
_testPeriod() => true

length = input(3, minval=1, title = "RSI period")
length2 = input(21, minval=1, title = "RSI SMA-1")
length3 = input(13, minval=1, title = "RSI SMA-2")
threshold  = input(0,step=0.5, title="Threshold")
filter = input(false, title="Use filter?") 


up = rma (max (change (close), 0), length)
down = rma (-min (change (close), 0), length)
RSI = down == 0? 100: up == 0? 0: 100-100 / (1 + up / down)

SMA_RSI = sma(RSI, length2)
delta = RSI-SMA_RSI
SMA_RSI2 = sma(delta, length3)
Long = crossover(SMA_RSI2, threshold) 
Short = crossunder(SMA_RSI2, threshold) 

plot(threshold, color=color.silver)
plot(SMA_RSI2, color= SMA_RSI2 > 0 ? color.blue : color.purple)
//plot(SMA_RSI, color=color.green)
//plot(delta, color=color.red)

long_condition =  Long and (filter ? close > ema(close, 200) : true) and _testPeriod()
strategy.entry('BUY', strategy.long, when=long_condition)  
 
short_condition =  Short
strategy.close('BUY', when=short_condition)


Lebih banyak