Sumber dimuat naik... memuat...

Strategi Gabungan RSI dan MA

Penulis:ChaoZhang, Tarikh: 2024-05-28 17:34:11
Tag:RSIMAEMASMAHMAWMASTOCHRSI

img

Ringkasan

Strategi ini menggabungkan penunjuk RSI dengan purata bergerak (MA) untuk menjana isyarat perdagangan. RSI digunakan untuk menentukan sama ada pasaran terlalu banyak dibeli atau terlalu banyak dijual, sementara MA digunakan untuk menentukan trend harga. Isyarat beli dihasilkan apabila RSI terlalu banyak dibeli dan harga di atas MA; isyarat jual dihasilkan apabila RSI terlalu banyak dijual atau apabila MA menghasilkan salib kematian. Di samping itu, strategi memperkenalkan penunjuk RSI Stochastic (StochRSI) sebagai penghakiman tambahan, dan isyarat akan ditandakan pada carta apabila StochRSI menghasilkan isyarat.

Prinsip Strategi

  1. Mengira nilai penunjuk RSI untuk menentukan sama ada pasaran terlalu banyak dibeli (> 70) atau terlalu banyak dijual (< 30).
  2. Mengira MA tempoh khusus, termasuk empat jenis: EMA, SMA, HMA, dan WMA, dan menentukan sama ada untuk memaparkannya pada carta berdasarkan tetapan parameter.
  3. Apabila RSI terlalu banyak dibeli dan harga penutupan lebih tinggi daripada MA, isyarat beli dihasilkan; apabila RSI terlalu banyak dijual atau MA menghasilkan salib kematian, isyarat jual dihasilkan.
  4. Memperkenalkan penunjuk StochRSI sebagai penilaian tambahan. Apabila StochRSI terlalu banyak dibeli (> 70) atau terlalu banyak dijual (< 30), isyarat akan ditandakan pada carta, tetapi tiada isyarat perdagangan sebenar akan dihasilkan.

Kelebihan Strategi

  1. Gabungan organik dua penunjuk klasik, RSI dan MA, dapat menangkap pergerakan trend dan peluang overbought / oversold dengan lebih baik.
  2. Jenis dan parameter MA boleh ditetapkan secara bebas dengan fleksibiliti yang tinggi dan boleh diselaraskan mengikut ciri pasaran yang berbeza.
  3. Pengenalan penunjuk StochRSI sebagai penilaian tambahan memberikan lebih banyak rujukan untuk keputusan perdagangan.
  4. Logik kod adalah jelas dan mudah dibaca, mudah difahami dan pembangunan sekunder.

Risiko Strategi

  1. Kedua-dua RSI dan MA adalah penunjuk yang tertinggal dan boleh menghasilkan isyarat yang lebih mengelirukan pada peringkat awal pembalikan trend.
  2. Tetapan parameter yang tidak betul boleh menyebabkan isyarat dihasilkan terlalu awal atau terlalu lewat, mempengaruhi pulangan keseluruhan.
  3. Kekurangan penangguhan kerugian dan pengurusan kedudukan boleh membawa kepada risiko yang lebih besar apabila pasaran turun naik secara dramatik.

Arahan Pengoptimuman Strategi

  1. Memperkenalkan lebih banyak penunjuk utama seperti turun naik untuk meramalkan perubahan trend terlebih dahulu.
  2. Menapis isyarat beli dan jual, seperti memerlukan RSI dan MA untuk memenuhi syarat tertentu pada masa yang sama untuk menghasilkan isyarat, untuk meningkatkan ketepatan isyarat.
  3. Tambah modul stop-loss dan pengurusan kedudukan ke dalam strategi untuk mengawal risiko urus niaga tunggal dan risiko keseluruhan.
  4. Melakukan pengoptimuman parameter pada strategi untuk mencari kombinasi parameter terbaik.
  5. Pertimbangkan menambah kitaran yang berbeza atau pelbagai jenis untuk memanfaatkan sepenuhnya hubungan hubungan antara pelbagai jenis atau kitaran.

Ringkasan

Dengan menggabungkan dua penunjuk klasik RSI dan MA, strategi ini dapat menangkap pergerakan trend dan peluang overbought / oversold. Pada masa yang sama, ia memperkenalkan penunjuk StochRSI sebagai penilaian tambahan, dan idea keseluruhan adalah mudah dan jelas. Walau bagaimanapun, strategi ini juga mempunyai beberapa kekurangan, seperti kekurangan langkah kawalan risiko dan keperluan untuk meningkatkan ketepatan isyarat. Pada masa akan datang, strategi ini boleh diperbaiki dengan memperkenalkan lebih banyak penunjuk, mengoptimumkan peraturan isyarat, menambah modul kawalan risiko, dan lain-lain, untuk mendapatkan pulangan yang lebih kukuh.


/*backtest
start: 2023-05-22 00:00:00
end: 2024-05-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("RSI Strategy with Customizable MA and StochRSI Alert", overlay=true)

// กำหนดค่า RSI สำหรับการเปิดสัญญาณซื้อและขาย
rsiOverbought = input(70, title="RSI Overbought Level")
rsiOversold = input(30, title="RSI Oversold Level")

// เลือกชนิดของเส้นค่าเฉลี่ยเคลื่อนที่
maType = input.string("EMA", title="MA Type", options=["EMA", "SMA", "HMA", "WMA"])

// กำหนดค่าเส้นค่าเฉลี่ยเคลื่อนที่
maShortLength = input(12, title="MA Short Length")
maLongLength = input(26, title="MA Long Length")

// เลือกการแสดงผลของเส้นค่าเฉลี่ยเคลื่อนที่
showShortMA = input(true, title="Show Short Moving Average")
showLongMA = input(true, title="Show Long Moving Average")

// ฟังก์ชันสำหรับเลือกชนิดของเส้นค่าเฉลี่ยเคลื่อนที่
f_ma(src, length, type) =>
    switch type
        "SMA" => ta.sma(src, length)
        "EMA" => ta.ema(src, length)
        "HMA" => ta.hma(src, length)
        "WMA" => ta.wma(src, length)

// คำนวณค่าเส้นค่าเฉลี่ยเคลื่อนที่
maShort = showShortMA ? f_ma(close, maShortLength, maType) : na
maLong = showLongMA ? f_ma(close, maLongLength, maType) : na

// คำนวณค่า RSI
rsiValue = ta.rsi(close, 14)

// สร้างสัญญาณซื้อและขาย
buySignal = (rsiValue > rsiOverbought and ((showShortMA and showLongMA and close > maShort and maShort > maLong) or (showShortMA and not showLongMA and close > maShort) or (showLongMA and not showShortMA and close > maLong)))
sellSignal = (showShortMA and showLongMA and ta.crossover(maLong, maShort)) or (showShortMA and not showLongMA and ta.crossover(maShort, close)) or (showLongMA and not showShortMA and ta.crossover(maLong, close))

// แสดงค่าเส้นค่าเฉลี่ยเคลื่อนที่บนกราฟ
plot(maShort, color=color.red, title="MA Short")
plot(maLong, color=color.green, title="MA Long")

// คำนวณค่า Stochastic RSI
smoothK = 3
smoothD = 3
RSIlen = 14
STOlen = 14
SRsrc = close
OSlevel = 30
OBlevel = 70

rsi1 = ta.rsi(SRsrc, RSIlen)
k = ta.sma(ta.stoch(rsi1, rsi1, rsi1, STOlen), smoothK)
d = ta.sma(k, smoothD)

stochRSIOverbought = OBlevel
stochRSIOversold = OSlevel

stochRSIBuyAlert = ta.crossover(k, stochRSIOversold)
stochRSISellAlert = ta.crossunder(k, stochRSIOverbought)

// สร้างคำสั่งซื้อและขายเมื่อมีสัญญาณจาก RSI และ MA เท่านั้น
if (buySignal)
    strategy.entry("Buy", strategy.long)
if (sellSignal)
    strategy.close("Buy")

// แสดงสัญญาณเตือนจาก Stochastic RSI บนกราฟ
plotshape(series=stochRSIBuyAlert, location=location.belowbar, color=color.green, style=shape.labelup, title="StochRSI Buy Alert")
plotshape(series=stochRSISellAlert, location=location.abovebar, color=color.red, style=shape.labeldown, title="StochRSI Sell Alert")

// แสดงสัญญาณซื้อและขายจาก RSI และ MA บนกราฟ
plotshape(series=buySignal, location=location.top, color=color.green, style=shape.triangleup, title="RSI>70")
plotshape(series=sellSignal, location=location.top, color=color.red, style=shape.triangledown, title="MA crossoverDown")


Berkaitan

Lebih lanjut