Strategi RSI Bertumpuk Diagonal Multi-Kerangka Waktu


Tanggal Pembuatan: 2023-09-28 16:12:25 Akhirnya memodifikasi: 2023-09-28 16:12:25
menyalin: 2 Jumlah klik: 735
1
fokus pada
1617
Pengikut

Ringkasan

Strategi ini adalah strategi RSI non-re-mapping multi-frame yang hanya melakukan overbought pada dua frame waktu yang lebih tinggi. Saya menulisnya pada garis 1 menit untuk BTC/USD, tetapi logikanya dapat diterapkan pada aset lain.

Prinsip

Konvergensi mengacu pada kondisi masuk dan keluar yang tersebar di berbagai kerangka waktu. Biasanya, indikator dapat menjadi tidak menguntungkan karena dalam tren turun, zona overbought dari kerangka waktu saat ini tidak disentuh, tetapi pertama-tama disentuh zona overbought dari kerangka waktu yang lebih tinggi, dan kemudian terjadi penyesuaian. Strategi konvergensi mengacu mengurangi masalah ini dengan cara yang berlawanan, yaitu menjual ketika kerangka waktu yang lebih cepat melampaui, dan membeli ketika kerangka waktu yang lebih lambat melampaui.

Oleh karena itu, strategi ini berlapis diagonal. Saya mungkin akan membuat skrip yang terpisah dan beralih antara diagonal ke atas dan diagonal ke bawah sesuai dengan tren keseluruhan, karena indikator ini mungkin tidak akan sering berkedip selama tren naik yang berkepanjangan. Ini dapat dianggap sebagai kerucut X pada grafik urutan waktu dan kerangka waktu.

Keunggulan

  • Menggunakan indikator RSI pada beberapa kerangka waktu untuk meningkatkan keandalan sinyal perdagangan
  • Masuk ke posisi terdepan, lebih banyak kesempatan untuk masuk ke posisi terdepan
  • Indikator tidak dipetakan ulang, sinyal dapat diandalkan
  • Parameter RSI yang dapat dikonfigurasi dan batas overbought dan oversold untuk menyesuaikan dengan pasar yang berbeda
  • Pertimbangkan biaya transaksi, cari keuntungan yang stabil, bukan perdagangan frekuensi tinggi

Risiko dan Solusi

  • RSI mudah menghasilkan sinyal palsu, parameter dapat disesuaikan atau kondisi filter ditambahkan
  • Ketergantungan pada sudut meningkatkan kesulitan masuk dan mengurangi jumlah kerangka waktu yang tercantum
  • Hanya melakukan lebih banyak, perlu menanggung risiko terarah, dapat dipertimbangkan untuk melakukan lebih banyak waktu kosong secara seimbang
  • Menggunakan Stop Loss Fixed untuk Mengontrol Kerugian Tunggal

Arah optimasi

  • Meningkatkan penilaian tren, menggunakan diagonal layering saat tren turun, menggunakan diagonal ke atas saat tren naik
  • Optimalkan parameter RSI untuk mencari kombinasi optimal
  • Meningkatkan kualitas sinyal dengan meningkatkan volume, MA, dan filter lainnya
  • Menambahkan strategi shorting untuk menghasilkan keuntungan di semua pasar
  • Optimalkan strategi stop loss, mengurangi penarikan

Meringkaskan

Strategi ini overall adalah strategi perdagangan tren turun yang sangat efektif. Menggunakan multi-frame RSI indikator dan tegangan tegangan tegangan untuk menangkap peluang bouncing di fase turun.

Kode Sumber Strategi
/*backtest
start: 2022-09-21 00:00:00
end: 2023-06-24 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © wbburgin

//@version=5
strategy("MTF Layered RSI - Bitcoin Bot [wbburgin]",overlay=false, pyramiding = 20, initial_capital=10000)

length = input.int(7,"RSI Length")
tf2 = input.timeframe("3",title="HT 1")
tf3 = input.timeframe("5",title="HT 2")
ob = input.int(80,"Overbought Level")
os = input.int(20,"Oversold Level")

rsi = ta.rsi(close,length)
rsi2 = request.security(syminfo.tickerid, tf2, rsi[1], barmerge.gaps_off, lookahead=barmerge.lookahead_on)
rsi3 = request.security(syminfo.tickerid, tf3, rsi[1], barmerge.gaps_off, lookahead=barmerge.lookahead_on)

plot(rsi,color=color.yellow,title="RSI Current TF")
plot(rsi2,color=color.new(color.yellow,50),title="RSI HT1")
plot(rsi3,color=color.new(color.yellow,75),title="RSI HT2")

lm=hline(os,title="Oversold")
hm=hline(ob,title="Overbought")

fill(hm,lm,color=color.new(color.blue,95))

htCross = (ta.crossover(rsi2,os) and rsi3>os and rsi>os) or (ta.crossover(rsi3,os) and rsi2>os and rsi>os)
buySig = (ta.crossover(rsi,os) and rsi2 < os and rsi3 < os) or htCross
sellSig = ta.crossunder(rsi,ob)

if buySig
    strategy.entry("Long",strategy.long)
if sellSig
    strategy.close("Long")

plotshape(buySig,title="Buysig",style=shape.triangleup,location=location.bottom,color=color.green,size=size.tiny)
plotshape(sellSig,title="Sellsig",style=shape.triangledown,location=location.top,color=color.red,size=size.tiny)