RSI Fibonacci Retracement Strategi

Penulis:ChaoZhang, Tarikh: 2023-12-29 14:51:43
Tag:

img

Ringkasan

Strategi RSI Fibonacci Retracement menghasilkan isyarat perdagangan berdasarkan persilangan antara penunjuk RSI dan tahap retracement Fibonacci yang ditetapkan, mengambil kedudukan apabila pembalikan berlaku di kawasan overbought dan oversold.

Prinsip

Strategi ini dilaksanakan berdasarkan persilangan antara penunjuk RSI dan tahap retracement Fibonacci. Mula-mula mengira nilai penunjuk RSI, kemudian tetapkan tahap retracement Fibonacci (38.2%, 50%, 61.8%). Apabila penunjuk RSI melintasi di atas tahap Fibonacci, isyarat beli dihasilkan. Apabila melintasi di bawah, isyarat jual dihasilkan.

Indikator RSI digunakan untuk menilai sama ada pasaran terlalu banyak dibeli atau terlalu banyak dijual. RSI di atas 70 menunjukkan kawasan yang terlalu banyak dibeli dan di bawah 30 menunjukkan kawasan yang terlalu banyak dijual. Apabila RSI turun dari kawasan yang terlalu banyak dibeli ke zon retracement Fibonacci, ia adalah isyarat pembalikan untuk pergi panjang. Apabila RSI naik dari kawasan yang terlalu banyak dijual ke zon retracement Fibonacci, ia adalah isyarat pembalikan untuk pergi pendek.

Tahap retracement Fibonacci dalam strategi ini terutamanya berfungsi sebagai rujukan, membentuk isyarat perdagangan dengan RSI. Dalam pasaran trend, berlari terus selepas retracements sering menyentuh tahap retracement Fibonacci, yang bertindak seperti sokongan dan rintangan.

Kelebihan

  1. Menggunakan RSI untuk mengenal pasti pembentukan overbought dan oversold, digabungkan dengan kawasan retracement Fibonacci untuk menangkap peluang pembalikan, boleh menapis beberapa bunyi bising.

  2. Trend mengikut sifat, boleh menangkap trend jangka menengah hingga panjang.

  3. Boleh menyesuaikan diri dengan situasi pasaran yang berbeza dengan menyesuaikan kawasan retracement Fibonacci.

Risiko

  1. Posisi panjang atau pendek boleh bertahan untuk masa yang lama, memerlukan sokongan modal yang mencukupi.

  2. Proses retracement mungkin menunjukkan pengesanan tinggi dan rendah lagi, yang memerlukan stop loss untuk mengawal risiko.

  3. Tetapan parameter yang tidak betul boleh menyebabkan perdagangan berlebihan atau tidak mencukupi menangkap peluang pembalikan.

Arahan pengoptimuman

  1. Pertimbangkan untuk menggabungkan penunjuk lain untuk menapis masa kemasukan, seperti MACD, Bollinger Bands untuk menilai arah trend.

  2. Parameter seperti tempoh RSI dan tahap retracement Fibonacci boleh dioptimumkan.

  3. Tetapkan stop loss dinamik untuk mengunci keuntungan.

Ringkasan

Strategi RSI Fibonacci Retracement mempunyai kestabilan yang baik secara umum sebagai strategi trend berikut. Berbanding dengan strategi RSI tunggal, menambah kawasan retracement Fibonacci dapat menapis beberapa perdagangan yang bising dengan berkesan. Dengan pengoptimuman parameter ia dapat menyesuaikan diri dengan instrumen perdagangan yang berbeza di pelbagai pasaran. Kesimpulannya ini adalah idea strategi yang boleh dipercayai dan mudah dioptimumkan.


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

// (c) ReduX_o, 2019. All rights reserved.
//
// How to trade:
// The indicator is more reliable in longer time frames
// Choose a fibonacci level as reference 
// Buy when the RSI line turns green
// Sell when the RSI line turns red



//@version=4
strategy("RSI Fibonacci Levels", overlay=false, initial_capital=2000, currency=currency.USD, commission_value=0.1, slippage=0, commission_type=strategy.commission.percent, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100)


len = input(14, minval=1, title="Rsi Periods")
f1 = input(title="Fibonacci Level", defval="38.2", options=["38.2", "50", "61.8"])

// === BACKTEST RANGE ===
FromYear = input(defval=2010, title="From Year", minval=2010)
FromMonth = input(defval=1, title="From Month", minval=1)

ToYear = input(defval=2020, title="To Year", minval=2010)
ToMonth = input(defval=1, title="To Month", minval=1)


src = hl2
fi= (f1 == "38.2") ? 38.2 : (f1 == "50")? 50 : 61.8


up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - 100 / (1 + up / down)


//***************************************************
rcolor = rsi >= fi ? color.lime : color.red

plot(rsi, title="RSI", color=rcolor, transp=0)
band1 = hline(78.6, color=color.red, linestyle= hline.style_solid,  editable= false)
band0 = hline(23.6, color=color.lime, linestyle= hline.style_solid, editable= false)
band2 = hline(61.8, color=color.gray, editable= false)
band3 = hline(50, color=color.black, editable= false)
band4 = hline(38.2, color=color.gray, editable= false)
band5 = hline(fi, color=color.blue, linestyle= hline.style_solid, editable= false)

strategy.entry("LE", strategy.long, comment="L", when=rsi >= fi )
strategy.entry("SE", strategy.short, comment="S", when=rsi < fi )




Lebih lanjut