Strategi ini adalah strategi RSI yang tidak memetakan pelbagai kerangka masa, dan hanya melakukan lebih banyak apabila dua kerangka masa yang lebih tinggi oversold. Saya menulisnya pada garis 1 minit BTC / USD, tetapi logiknya boleh digunakan untuk aset lain. Ia bertujuan untuk mendapatkan keuntungan apabila aset berada dalam trend menurun.
Perpaduan sudut menunjukkan syarat masuk dan keluar yang tersebar di pelbagai bingkai masa. Biasanya, indikator mungkin menjadi tidak menguntungkan kerana dalam trend menurun, kawasan overbought dalam bingkai masa semasa tidak disentuh, tetapi terlebih dahulu menyentuh kawasan overbought dalam bingkai masa yang lebih tinggi, dan kemudian berlaku penyesuaian. Strategi penempatan sudut mengurangkan masalah ini dengan cara yang bertentangan, iaitu menjual apabila bingkai masa yang lebih cepat melebihi, dan membeli apabila bingkai masa yang lebih lambat melebihi.
Oleh itu, strategi ini berlainan dengan diagonal. Saya mungkin akan membuat skrip berasingan untuk beralih antara diagonal ke atas dan diagonal ke bawah mengikut trend keseluruhan, kerana indikator mungkin tidak akan berkedip dengan kerap semasa trend ke atas yang berpanjangan. Ini boleh dianggap sebagai kerucut X pada carta siri masa dan kerangka masa.
Strategi ini secara keseluruhan adalah strategi perdagangan tren menurun yang sangat berkesan. Menggunakan pelbagai RSI bingkai masa dan cara masuk yang bertentangan, peluang rebound dapat ditangkap pada tahap penurunan.
/*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)