
Strategi pelacakan tren beradaptasi dinamis multi-faktor adalah metode perdagangan sistematis yang menggabungkan beberapa indikator teknis. Strategi ini menggunakan beberapa indikator seperti rata-rata bergerak bertepatan dengan dispersi MACD, rasio kekuatan relatif, RSI, rata-rata true range, ATR, dan rata-rata bergerak sederhana untuk menangkap tren pasar dan mengoptimalkan masuk dan keluar dari pasar. Strategi mesin meningkatkan tingkat keberhasilan perdagangan melalui konfirmasi beberapa indikator, sambil menggunakan metode stop loss dan profit untuk beradaptasi dengan lingkungan pasar yang berbeda, mencapai keseimbangan antara manajemen risiko dan pengoptimalan keuntungan.
Prinsip inti dari strategi ini adalah untuk mengidentifikasi dan mengkonfirmasi tren pasar melalui sinergi dari beberapa indikator teknis. Secara khusus:
Strategi membuka lebih banyak posisi ketika memenuhi kondisi berikut: MACD melintasi garis sinyal, RSI di bawah 70, harga berada di atas SMA 50 hari dan SMA 50 hari di atas SMA 200 hari. Kondisi sebaliknya memicu sinyal shorting. Strategi menggunakan 2 kali ATR sebagai stop loss, 3 kali ATR sebagai target profit, memastikan rasio risiko-keuntungan 1:1.5
Strategi pelacakan tren adaptif dinamis multi-faktor memberikan metode perdagangan yang sistematis dan terkuantifikasi kepada pedagang dengan mengintegrasikan beberapa indikator teknis. Strategi ini berkinerja baik di pasar dengan tren yang jelas dan mampu menangkap tren jangka menengah dan panjang secara efektif. Mekanisme manajemen risiko dinamis dan proses konfirmasi sinyal multi-dimensi membantu meningkatkan stabilitas dan keandalan perdagangan.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-09-24 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Multi-Factor Hedge Fund Strategy", overlay=true)
// Input parameters
fastLength = input(12, "MACD Fast Length")
slowLength = input(26, "MACD Slow Length")
signalLength = input(9, "MACD Signal Length")
rsiLength = input(14, "RSI Length")
atrLength = input(14, "ATR Length")
// Calculate indicators
[macdLine, signalLine, histLine] = ta.macd(close, fastLength, slowLength, signalLength)
rsi = ta.rsi(close, rsiLength)
atr = ta.atr(atrLength)
sma50 = ta.sma(close, 50)
sma200 = ta.sma(close, 200)
// Strategy logic
longCondition = macdLine > signalLine and rsi < 70 and close > sma50 and sma50 > sma200
shortCondition = macdLine < signalLine and rsi > 30 and close < sma50 and sma50 < sma200
// Execute trades
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
// Set stop loss and take profit
stopLoss = 2 * atr
takeProfit = 3 * atr
strategy.exit("Exit Long", "Long", stop = strategy.position_avg_price - stopLoss, limit = strategy.position_avg_price + takeProfit)
strategy.exit("Exit Short", "Short", stop = strategy.position_avg_price + stopLoss, limit = strategy.position_avg_price - takeProfit)
// Plot indicators
plot(sma50, color=color.blue, title="50 SMA")
plot(sma200, color=color.red, title="200 SMA")
plot(ta.crossover(macdLine, signalLine) ? close : na, style=plot.style_circles, color=color.green, title="MACD Crossover")
plot(ta.crossunder(macdLine, signalLine) ? close : na, style=plot.style_circles, color=color.red, title="MACD Crossunder")