
Strategi ini adalah strategi indikator yang memanfaatkan tinggi rendah jangka pendek dan perbedaan rata-rata antara biaya rata-rata jangka pendek dan jangka panjang untuk menilai tren. Strategi ini bertujuan untuk meningkatkan sensitivitas garis pendek, mengurangi kerugian dalam pencatatan dengan meningkatkan fungsi smoothing rata-rata sebelum dan sesudahnya, untuk mengurangi kerugian kecil dalam pencatatan, sambil mempertahankan keuntungan besar ketika gelombang muncul.
Hitung biaya jangka pendek: menggunakan fungsi ta.highest dan ta.lowest untuk menghitung harga tertinggi dan terendah dari garis akar K jangka pendek terbaru, lalu rata-rata sebagai biaya jangka pendek
Menghitung biaya jangka panjang: Menggunakan fungsi ta.sma untuk menghitung rata-rata bergerak sederhana dari harga penutupan garis K akar jangka panjang terbaru sebagai biaya jangka panjang
Rata-rata: biaya jangka pendek dikurangi biaya jangka panjang
Rata-rata rata-rata: rata-rata rata-rata diperlakukan dengan halus untuk mengurangi kesalahan penilaian, di sini ta.sma digunakan untuk rata-rata bergerak sederhana
Penilaian tren: menetapkan ambang batas, ketika rata-rata rata-rata rata-rata lebih besar dari ambang batas dianggap sebagai tren naik, dan ketika lebih kecil dari ambang batas negatif dianggap sebagai tren turun
Masuk dan Keluar: Mengikuti tren naik saat bermain lebih banyak, mengikuti tren turun saat bermain lebih sedikit
Solusi untuk Mengatasi Risiko:
Strategi ini secara keseluruhan adalah strategi pelacakan tren yang sangat sederhana dan langsung. Dibandingkan dengan indikator seperti rata-rata bergerak yang umum, dengan menghitung rata-rata biaya jangka pendek dan panjang, perubahan tren dapat dinilai lebih cepat.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © dead0001ing1
//@version=5
strategy("Trend-Following Indicator", overlay=true)
// 設置參數
shortTerm = input(5, "Short Term")
longTerm = input(20, "Long Term")
smooth = input(5, "Smoothing")
threshold = input(0, "Threshold")
// 計算短期成本
shortH = ta.highest(high, shortTerm)
shortL = ta.lowest(low, shortTerm)
shortCost = (shortH + shortL) / 2
// 計算長期成本
longCost = ta.sma(close, longTerm)
// 計算均差
deviation = shortCost - longCost
// 平滑均差
smoothedDeviation = ta.sma(deviation, smooth)
// 判斷順勢
isTrendingUp = smoothedDeviation > threshold
isTrendingDown = smoothedDeviation < -threshold
// 顯示順勢信號
plotshape(isTrendingUp, title="Trending Up", location=location.belowbar, color=color.green, style=shape.labelup, text="Up", size=size.small)
plotshape(isTrendingDown, title="Trending Down", location=location.abovebar, color=color.red, style=shape.labeldown, text="Down", size=size.small)
// 定義進出場策略
if isTrendingUp
strategy.entry("Long", strategy.long)
strategy.close("Long", when=isTrendingDown)
if isTrendingDown
strategy.entry("Short", strategy.short)
strategy.close("Short", when=isTrendingUp)