
Artikel ini akan menganalisis secara rinci strategi jenis pelacakan tren yang didasarkan pada jarak 200 hari dari rata-rata bergerak dan harga, yang dikenal sebagai strategi pelacakan tren off-line dalam kacang-kacangan. Strategi ini, dengan melacak jarak harga dari rata-rata bergerak 200 hari, membangun posisi ketika melampaui batas yang ditetapkan, dan keluar dari posisi kosong setelah mencapai tujuan keuntungan.
1. Prinsip Strategi
Strategi ini menentukan apakah harga menyimpang dari garis 200 hari setelah mencapai persentase yang ditetapkan. Strategi ini menetapkan posisi ketika satu garis K yang paling dekat adalah garis lurus (multiply entry) atau garis lurus (negative entry). Kondisi masuk multiply adalah harga di bawah garis 200 hari dan persentase jarak antara harga dan garis 200 hari lebih besar dari nilai terendah dan masuk lebih banyak dari garis lurus pada satu garis K yang paling dekat. Kondisi kosong adalah harga di atas garis 200 hari dan persentase jarak antara harga dan garis 200 hari lebih besar dari nilai terendah dan masuk ke dalam garis negatif pada satu garis K.
Kondisi keluar adalah harga kembali ke garis 200 hari atau mencapai target stop loss ((1.5 kali harga masuk) dan keluar dari posisi kosong. Atur stop loss 20% dari nilai yang dinyatakan opsi.
Syarat dan ketentuan masuk dan keluar adalah sebagai berikut:
Masuknya banyak orang:Harga close out < garis 200 hari dan jarak close out dari garis 200 hari adalah persentase ≥ nilai terendah dan garis close out K yang paling dekat
Masuk dengan kepala kosong:Harga close out > garis 200 hari dan harga close out adalah persentase jarak dari garis 200 hari ≥ nilai terendah dan garis close out K yang paling dekat
Berbagai penampilan:Closing price ≥ 200 day line atau mencapai target stop loss atau berakhirnya hari perdagangan
Berjalan dengan kepala kosong:Penutupan <= 200 hari atau mencapai target stop loss atau berakhirnya hari perdagangan
Stop loss adalah 20% dari nilai yang dinyatakan.
Kedua, keunggulan strategi
Strategi ini memiliki beberapa keuntungan utama:
Ketiga, risiko strategi.
Strategi ini memiliki risiko utama sebagai berikut:
Untuk mengurangi risiko di atas, beberapa hal dapat dioptimalkan:
Keempat, optimalisasi strategi
Strategi ini dapat dioptimalkan dalam beberapa hal:
Kelima, Kesimpulan
Artikel ini menganalisis secara rinci prinsip, keuntungan, risiko dan arah optimasi dari strategi pelacakan tren berdasarkan jarak harga dari rata-rata bergerak 200 hari. Strategi ini menilai arah tren lini tengah dengan melacak jarak harga dari garis rata-rata jangka panjang. Strategi ini dapat melacak tren harga jangka panjang dengan baik, tetapi ada ruang untuk pengoptimalan parameter tertentu.
/*backtest
start: 2024-02-22 00:00:00
end: 2024-02-24 06:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Intraday Price Away from 200 EMA Strategy", overlay=true)
// Define inputs
emaPeriod = input(200, title="EMA Period")
thresholdPercent = input(0.75, title="Threshold Percent", minval=0) // Define the threshold percentage
// Calculate 200 EMA
ema = ema(close, emaPeriod)
// Calculate distance from 200 EMA as a percentage
distance_percent = ((close - ema) / ema) * 100
// Track average entry price
var float avgEntryPrice = na
// Buy conditions
buy_condition = close < ema and abs(distance_percent) >= thresholdPercent and close[1] < close[2]
// Exit conditions for buy
exit_buy_condition = close >= ema or time_close(timeframe.period) or (avgEntryPrice * 1.5) <= close
// Sell conditions
sell_condition = close > ema and abs(distance_percent) >= thresholdPercent and close[1] > close[2]
// Exit conditions for sell
exit_sell_condition = close <= ema or time_close(timeframe.period) or (avgEntryPrice * 1.5) >= close
// Execute buy and sell orders only if there are no open trades
if strategy.opentrades == 0
strategy.entry("Buy", strategy.long, when=buy_condition)
strategy.entry("Sell", strategy.short, when=sell_condition)
// Update average entry price for buy condition
if buy_condition
avgEntryPrice := close
// Update average entry price for sell condition
if sell_condition
avgEntryPrice := close
// Close buy position if exit condition is met
strategy.close("Buy", when=exit_buy_condition)
// Close sell position if exit condition is met
strategy.close("Sell", when=exit_sell_condition)
// Plot 200 EMA
plot(ema, color=color.blue, linewidth=2)
// Plot buy and sell signals
plotshape(buy_condition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(sell_condition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)