
Strategi ini berdasarkan pada penunjuk HalfTrend, untuk mengenal pasti isyarat pembelian dengan menilai trend kosong. Apabila penunjuk HalfTrend berubah dari kosong ke kosong, membeli pada harga penghalang kerugian tunggal di bawah kedudukan nilai HalfTrend yang sebelum ini dalam trend kosong. Strategi ini menggunakan penunjuk AmplitudeTrend (ATR) untuk secara dinamik menyesuaikan parameter amplitudo penilaian trend.
#Keutamaan taktikal#
#Risiko taktikal#
Strategi membeli harga terhad dengan menilai perubahan trend terhad dalam indikator HalfTrend untuk memutuskan masa pembelian, menggunakan titik rendah trend terhad sebelumnya sebagai kedudukan pembelian, untuk masuk lebih banyak di paras rendah yang agak selamat. Strategi ini merangkumi elemen strategi yang biasa digunakan seperti penghakiman trend, harga terhad, dan stop loss, yang dapat dioptimumkan lebih lanjut untuk meningkatkan nisbah keuntungan risiko.
/*backtest
start: 2023-05-11 00:00:00
end: 2024-05-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("HalfTrend Stop-Limit Buy", overlay=true)
// HalfTrend indicator parameters
length = 1
amplitude = 2.0
// HalfTrend calculation
float ph = na
float pl = na
var float dir = na
var float trend = na
if na(trend)
trend := close
ph := high
pl := low
dir := na
else
if high > ph
ph := high
if low < pl
pl := low
if close > trend and na(dir)
dir := 1
trend := close
ph := high
pl := low
if close < trend and na(dir)
dir := -1
trend := close
ph := high
pl := low
if dir == 1 and close < trend - amplitude
dir := -1
trend := close
ph := high
pl := low
if dir == -1 and close > trend + amplitude
dir := 1
trend := close
ph := high
pl := low
// Buy signal based on HalfTrend
buySignal = dir == 1 and ta.valuewhen(dir == -1, trend, 0)
// Plot HalfTrend
plot(dir == 1 ? trend : na, color=color.blue, linewidth=2, title="HalfTrend Bullish")
plot(dir == -1 ? trend : na, color=color.red, linewidth=2, title="HalfTrend Bearish")
// Place a stop-limit buy order
if (buySignal)
stopPrice = ta.valuewhen(dir == -1, trend, 0)
strategy.entry("HalfTrend Buy", strategy.long, stop=stopPrice, comment="HalfTrend Buy")