
Strategi ini adalah strategi perdagangan berdasarkan indikator SAR yang melakukan operasi bergantian pada periode waktu yang berbeda. Strategi ini akan menghitung indikator SAR masing-masing dalam 15 menit, garis matahari, garis lingkaran, dan garis waktu bulan, dan melakukan operasi perdagangan dalam kerangka waktu garis lingkaran.
Indikator SAR mewakili indikator parabolic SAR, yang menilai arah tren pasar dengan menghitung hubungan antara harga saat ini dan harga historis, yang menunjukkan bahwa tren berbalik ketika harga melewati titik SAR.
Strategi ini menghitung nilai SAR dalam 15 menit, garis matahari, garis lingkar, dan garis bulan, masing-masing. Rumusnya adalah:
SAR = SAR前值 + 加速因子(最高价 - SAR前值) # 多头趋势
SAR = SAR前值 + 加速因子(最低价 - SAR前值) # 空头趋势
Di antaranya, faktor akselerasi awal ditetapkan pada 0,02, yang akan meningkat secara bertahap hingga maksimum 0,2 seiring dengan kelanjutan tren.
Strategi mengirimkan sinyal perdagangan di bawah kerangka waktu garis lingkar. Ketika garis lingkar melewati harga tertinggi di SAR, setel stop loss menjadi nilai SAR. Ketika SAR melewati harga terendah, setel stop loss menjadi nilai SAR.
Strategi ini menghasilkan keuntungan yang lebih efisien dengan menilai tren pada kerangka waktu yang lebih tinggi dan menetapkan posisi stop loss yang lebih tepat.
Strategi ini memiliki pemikiran yang jelas dan dapat mengikuti arah yang lebih besar dengan menilai tren dalam jangka waktu yang lebih tinggi. Selain itu, indikator SAR lebih akurat dalam menentukan titik perubahan tren, sehingga risiko stop loss dapat dikendalikan ke tingkat yang lebih kecil. Strategi ini dapat dioptimalkan dari segi kondisi masuk, strategi stop loss, manajemen posisi, dan lain-lain.
/*backtest
start: 2023-01-09 00:00:00
end: 2024-01-15 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy ("SAR alternating timeframe", overlay=true)
//resolution
res1=input("15", title="Resolution")
res2=input("D", title="Resolution")
res3=input("W", title="Resolution")
res4=input("M", title="Resolution")
//output functions
out = sar(0.02,0.02,0.2)
// request.security
SAR1 = request.security(syminfo.tickerid, res1, out)
SAR2 = request.security(syminfo.tickerid, res2, out)
SAR3 = request.security(syminfo.tickerid, res3, out)
SAR4 = request.security(syminfo.tickerid, res4, out)
//Plots
//plot(SAR1 , title="SAR 15", color = red, linewidth = 2)
//plot(SAR2 , title="SAR D", color = green, linewidth = 3)
plot(SAR3 , title="SAR W", color =blue, linewidth = 4)
//plot(SAR4 , title="SAR W", color =purple, linewidth = 5))
/////////////////////////////////////////////////////////////////////
//trade
if (SAR3 >= high)
strategy.entry("ParLE", strategy.long, stop=SAR3, comment="ParLE")
else
strategy.cancel("ParLE")
if (SAR3 <= low)
strategy.entry("ParSE", strategy.short, stop=SAR3, comment="ParSE")
else
strategy.cancel("ParSE")