Strategi Mengikuti Penyebaran Saluran RSI


Tarikh penciptaan: 2023-12-18 17:48:24 Akhirnya diubah suai: 2023-12-18 17:48:24
Salin: 0 Bilangan klik: 681
1
fokus pada
1621
Pengikut

Strategi Mengikuti Penyebaran Saluran RSI

Gambaran keseluruhan

Strategi RSI channel spread tracking menghasilkan isyarat perdagangan dengan mengesan pergerakan RSI dalam saluran penurunan nilai, yang digabungkan dengan harga yang pecah. Strategi ini bertujuan untuk menangkap ledakan pembelian dan penjualan yang cepat di pasaran cryptocurrency.

Prinsip Strategi

  1. Menggunakan Hull Moving Average Smooth RSI, menghasilkan indikator RSI selepas smoothed. Ia merangkumi RSI harga penutupan, RSI harga tertinggi, RSI harga terendah dan RSI harga pertengahan.

  2. Tetapkan RSI saluran untuk 55-45. Apabila RSI memasuki saluran 55-45, ia menunjukkan memasuki zon goyah.

  3. Apabila RSI harga penutupan turun dari saluran atas, dan harga penutupan berada di bawah harga nombor tengah, ini menunjukkan tekanan harga; dan pada masa ini RSI nombor tengah masih berada di atas batas atas saluran, ini menunjukkan bahawa harga nombor tengah masih mempunyai daya beli, sesuai dengan logik untuk mengesan penembusan nombor tengah, dan dengan itu menghasilkan isyarat beli.

  4. Apabila harga penutupan RSI bertolak balik dari had bawah saluran, dan harga penutupan lebih tinggi daripada harga nombor tengah, menunjukkan bahawa harga mempunyai sokongan; dan pada masa ini, RSI nombor tengah berada di bawah had bawah saluran, menunjukkan bahawa harga nombor tengah mempunyai tekanan yang lebih besar, sesuai dengan logik untuk menjejaki penembusan harga nombor tengah, dan oleh itu menghasilkan isyarat jual.

  5. RSI harga tertinggi dan RSI harga terendah digunakan untuk mengenal pasti isyarat perdagangan yang gagal dan berhenti dengan cepat.

Kelebihan Strategik

  1. Menggunakan harga median untuk menjejaki arah kekuatan harga median, sesuai dengan konsep trend tracking.

  2. RSI bergoyang di dalam terusan penurunan harga, memberi isyarat untuk masuk ke dalam penyetempatan, dan menggunakan harga nombor tengah untuk menjejaki arah kekuatan harga nombor tengah, untuk mengelakkan tersangkut dalam goyang dalaman.

  3. RSI harga tertinggi dan RSI harga terendah digunakan untuk mengenal pasti dengan cepat kegagalan isyarat perdagangan, menghentikan kerugian dengan cepat, dan mengawal kerugian dengan berkesan.

Risiko Strategik

  1. Penetapan RSI yang tidak betul boleh menyebabkan terlalu sensitif atau lambat.

  2. Makna penembusan harga purata tidak selalu boleh dipercayai, dan harga purata itu sendiri mungkin berada dalam keadaan goyah.

  3. Pasaran kriptocurrency bergelombang, dan kedudukan stop loss yang terlalu longgar boleh menyebabkan kerugian meningkat.

Penyelesaian:

  • Mengoptimumkan parameter RSI untuk memberi respons sederhana kepada perubahan harga
  • Kebolehpercayaan penembusan harga median digabungkan dengan lebih banyak petunjuk
  • Mengekang kedudukan hentian dengan betul untuk mengelakkan kerugian yang berlebihan

Arah pengoptimuman strategi

  1. Menerusi lebih banyak petunjuk, arah penembusan untuk menilai nilai purata

Indikator seperti tali Brin boleh diperkenalkan untuk menentukan sama ada harga rata-rata hampir naik atau turun, yang meningkatkan ketepatan penghakiman arah harga rata-rata.

  1. Memperkenalkan model pembelajaran mesin untuk membantu penilaian

Menggunakan model pembelajaran mendalam seperti LSTM untuk meramalkan pergerakan masa depan harga median, membantu menentukan sama ada harga median akan berjaya menembusi arah tertentu.

  1. Menggunakan gangguan adaptasi

Sesuai dengan tahap turun naik pasaran, sesuaikan kedudukan hentian dalam masa nyata. Sebagai contoh, apabila turun naik meningkat, kedudukan hentian diketatkan dengan sewajarnya; apabila turun naik berkurang, kedudukan hentian boleh dilepaskan dengan sewajarnya.

ringkaskan

Strategi RSI channel spread tracking menghasilkan isyarat dagangan dengan mengesan pergerakan RSI dalam saluran dan menggabungkan harga yang pecah, yang bertujuan untuk menangkap ledakan jual beli yang cepat di pasaran cryptocurrency. Strategi ini menggabungkan dengan berkesan kaedah pengesanan trend dan pengenalan jarak, yang masih dapat memperoleh perdagangan yang lebih baik ketika selisih harga semakin kecil.

Kod sumber strategi
/*backtest
start: 2023-11-17 00:00:00
end: 2023-12-17 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Hull MA of RSI Strategy",overlay=false)
//+++++++++++++++++++++++++++++++
//++++++++++++ Setup ++++++++++++
//+++++++++++++++++++++++++++++++
// RSI 
rsi1_tt="=== RSI ==="
rsi1_len=input(13,title="Period",inline="set",group=rsi1_tt)
//Mid
mid_tt="=== Mid Channel ==="
upper=input(55.0,title="Upper",inline="set",group=mid_tt)
lower=input(45.0,title="Lower",inline="set",group=mid_tt)
//Over
over_tt="=== Over ==="
ovb=input(70.0,title="Overbought",inline="set",group=over_tt)
ovs=input(30.0,title="Oversold",inline="set",group=over_tt)
//++++++++++++++++++++++++++++++++++++++++
//++++++++++++ Hull MA of RSI ++++++++++++
//++++++++++++++++++++++++++++++++++++++++
hma_tt="=== Hull MA ==="
hma_len=input(3,title="Period",inline="set",group=hma_tt)
rsi_c=hma(rsi(close,rsi1_len),hma_len)
rsi_h=hma(rsi(high,rsi1_len),hma_len)
rsi_l=hma(rsi(low,rsi1_len),hma_len)
rsi_hl2=hma(rsi(hl2,rsi1_len),hma_len)
//++++++++++++++++++++++++++++++++
//++++++++++++ Signal ++++++++++++
//++++++++++++++++++++++++++++++++
var order_status="None"
BuySignal=
       crossunder(rsi_c,ovb)
       and
       close<hl2
       and
       rsi_hl2>ovb
       and
       order_status=="None"
CloseBuy=
       order_status[1]=="Long"
       and
       (crossover(rsi_c,ovb)
       or
       crossunder(rsi_l,upper))
SellSignal=
       crossover(rsi_c,ovs)
       and
       close>hl2
       and
       rsi_hl2<ovs
       and
       order_status=="None"
CloseSell=
       order_status[1]=="Short"
       and
       (crossunder(rsi_c,ovs)
       or
       crossover(rsi_h,lower))
ExitSignal=
       CloseBuy
       or
       CloseSell
if BuySignal
    order_status:="Long"
if SellSignal
    order_status:="Short"
if ExitSignal
    order_status:="None"

//+++++++++++++++++++++++++++++++++++
//++++++++++++ Plot Line ++++++++++++
//+++++++++++++++++++++++++++++++++++
rsi_c_col=
       rsi_c>upper?color.new(color.blue,0):
       rsi_c<lower?color.new(color.blue,0):
       color.new(color.orange,0)
rsi_h_col=
       rsi_h>upper?color.new(color.green,0):
       rsi_h<lower?color.new(color.green,0):
       color.new(color.orange,0)
rsi_l_col=
       rsi_l>upper?color.new(color.yellow,0):
       rsi_l<lower?color.new(color.yellow,0):
       color.new(color.orange,0)
rsi_hl2_col=
       rsi_hl2>upper?color.new(color.olive,0):
       rsi_hl2<lower?color.new(color.olive,0):
       color.new(color.orange,0)
plot(rsi_c,title="RSI Close",color=rsi_c_col,linewidth=2)
plot(rsi_h,title="RSI High",color=rsi_h_col,linewidth=1)
plot(rsi_l,title="RSI Low",color=rsi_l_col,linewidth=1)
plot(rsi_hl2,title="RSI HL2",color=rsi_hl2_col,linewidth=1)
upper_line=hline(upper,title="Upper",color=color.new(color.black,100))
lower_line=hline(lower,title="Lower",color=color.new(color.black,100))
fill(upper_line,lower_line,title="Mid Channel",color=color.silver)
ovb_line=hline(ovb,title="Overbought",color=color.new(color.silver,0),linestyle=hline.style_solid,linewidth=2)
ovs_line=hline(ovs,title="Oversold",color=color.new(color.silver,0),linestyle=hline.style_solid,linewidth=2)

//++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++ Plot Analyzing Signals ++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++
//Color
buy_col=
       BuySignal?color.new(color.blue,70):na
sell_col=
       SellSignal?color.new(color.red,70):na
close_buy_col=
       CloseBuy and order_status[1]=="Long"?color.new(color.yellow,70):na
close_sell_col=
       CloseSell and order_status[1]=="Short"?color.new(color.yellow,70):na
//Background
bgcolor(close_buy_col, title='Close Buy', offset=0)
bgcolor(close_sell_col, title='Close Sell', offset=0)
bgcolor(sell_col, title='Sell', offset=0)
bgcolor(buy_col, title='Buy', offset=0)
//++++++++++++++++++++++++++++++++++
//++++++++++++ Backtest ++++++++++++
//++++++++++++++++++++++++++++++++++
strategy.entry("Long",strategy.long,when=BuySignal)
strategy.close("Long",when=CloseBuy)
strategy.entry("Short",strategy.short,when=SellSignal)
strategy.close("Short",when=CloseSell)
//EOF