
Strategi ini memungkinkan untuk mengoptimalkan parameter strategi dengan menguji kombinasi persentase yang berbeda pada frame waktu yang berbeda dan pada grafik yang berbeda.
Strategi ini dilakukan melalui dua indikator utama, yaitu Tracking Stop Loss dan Tracking Buy:
Dengan membandingkan harga dengan hubungan kedua indikator, aturan stop loss dan buyback dapat dicapai.
Strategi ini memiliki keuntungan sebagai berikut:
Strategi ini juga memiliki risiko sebagai berikut:
Strategi ini dapat dioptimalkan dalam beberapa hal:
Strategi ini secara keseluruhan merupakan strategi pelacakan tren yang sangat sederhana dan intuitif. Strategi ini dapat diterapkan di berbagai pasar melalui penyesuaian parameter, dan kombinasi dengan algoritma penyesuaian diri dan indikator lainnya dapat meningkatkan stabilitas dan kepraktisan strategi lebih lanjut. Secara keseluruhan, strategi ini memberikan kerangka strategi dasar yang sederhana namun efektif untuk perdagangan kuantitatif.
/*backtest
start: 2023-01-12 00:00:00
end: 2024-01-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
//Developed from ©Finnbo code
strategy("Simple Trailing Buy & Stop Strategy", overlay=true)
offset = input(defval=1.5, title="Stop Offset %", type=float, minval=0.1, maxval=100, step=0.1)
buyoffset = input(defval=1.9, title="Trailing Buy Offset %", type=float, minval=0.1, maxval=100, step=0.1)
sumbars = input(defval=6, title="Use last x bars for calculation", minval=1)
srcts = input(title="Source Trailing Stop calculation", defval=close)
srctb = input(title="Source Trailing Buy calculation", defval=close)
srctrigger = input(title="Source Stop Trigger", defval=low)
srctriggerbuy = input(title="Source Buy Trigger", defval=high)
tsl = rma(srcts, sumbars)*(1-(offset/100))// = (sum(srcts,sumbars)/sumbars)*(1-(offset/100))
tbuy = rma(srctb, sumbars)*(1+(buyoffset/100))
plot(tsl, color=(srctrigger<tsl)?red:green)
plot(tbuy, color=(srctriggerbuy>tbuy)?red:green)
//plotshape(crossunder(srctrigger,tsl), text="Long Stop", style=shape.circle, color=red)
alertcondition(crossunder(srctrigger,tsl), "Long Stop alert", "SELL")
//plotshape(crossover(srctriggerbuy,tbuy), text="Long", style=shape.circle, color=green)
alertcondition(crossover(srctriggerbuy,tbuy), "Long alert", "BUY")
longCondition = crossover(srctriggerbuy,tbuy)
if (longCondition)
strategy.entry("Long", strategy.long)
closeCondition = crossunder(srctrigger,tsl)
if (closeCondition)
strategy.close("Long")