Strategi ini adalah strategi RSI pelbagai jangka masa yang tidak berubah-ubah yang hanya berjalan lama apabila dua jangka masa yang lebih tinggi terlalu banyak dijual. Saya menulisnya pada BTC / USD 1 minit, tetapi logiknya harus berfungsi pada aset lain juga. Ia direka untuk menguntungkan apabila aset berada dalam trend penurunan.
Diagonal layering merujuk kepada keadaan kemasukan dan keluar yang tersebar di pelbagai jangka masa. Biasanya, penunjuk boleh menjadi tidak menguntungkan kerana dalam trend menurun, zon overbought dalam jangka masa semasa tidak dicapai. Sebaliknya, zon overbought dalam jangka masa yang lebih tinggi dicapai terlebih dahulu, diikuti dengan penarikan balik. Strategi berlapis diagonal mengurangkan ini dengan menjual secara diagonal, iaitu, menjual sebaik sahaja jangka masa yang lebih cepat mencapai overbought dan membeli sebaik sahaja jangka masa yang lebih perlahan mencapai overbought.
Oleh itu, strategi ini berlapis diagonal. Saya boleh membuat skrip yang berasingan yang beralih antara diagonal ke atas dan diagonal ke bawah berdasarkan trend keseluruhan, kerana dalam tempoh uptrend yang diperpanjang, penunjuk ini mungkin tidak berkedip dengan kerap. Ini boleh dilihat pada carta rentetan masa x jangka masa sebagai bentuk
Secara keseluruhan, ini adalah strategi perdagangan downtrend yang sangat berkesan. Menggunakan RSI pelbagai jangka masa dan lapisan diagonal memberikan peluang untuk menangkap pantulan dalam trend penurunan. Tidak mewarnai juga meningkatkan kebolehpercayaan isyarat. Dengan pengoptimuman parameter, menambah penapis dan strategi pendek, ia boleh menjadi strategi yang mantap untuk mana-mana pasaran.
/*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)