
Strategi ini adalah sistem perdagangan pelacakan tren yang didasarkan pada beberapa indikator teknis. Strategi ini menggabungkan tren rata-rata bergerak, RSI yang overbought dan oversold, dan indikator volatilitas ATR untuk meningkatkan tingkat keberhasilan dan profitabilitas transaksi melalui analisis pasar multidimensi. Logika inti dari strategi ini adalah untuk mengkonfirmasi arah tren melalui persilangan EMA jangka pendek dan jangka panjang, menggunakan indikator RSI untuk menyaring terobosan palsu, dan akhirnya menggabungkan ATR untuk menyesuaikan waktu penahanan secara dinamis untuk mencapai pemahaman yang akurat tentang tren.
Strategi ini menggunakan rata-rata pergerakan EMA 20 hari dan 50 hari sebagai dasar utama untuk penilaian tren. Jika EMA jangka pendek melintasi EMA jangka panjang, tren naik terkonfirmasi; jika tidak, tren turun terkonfirmasi. Berdasarkan konfirmasi tren, indikator RSI diperkenalkan untuk menilai overbought dan oversold. Ketika RSI lebih rendah dari 30 dan memasuki kisaran oversold dan berada dalam tren naik, sinyal long dipicu; ketika RSI lebih tinggi dari 70 dan memasuki kisaran jenuh beli dan berada dalam tren menurun, sinyal panjang dipicu; Ketika , sinyal pendek dipicu. Pada saat yang sama, indikator ATR digunakan untuk mengukur volatilitas pasar. Transaksi hanya dieksekusi ketika ATR lebih besar dari ambang batas yang ditetapkan untuk menghindari perdagangan di lingkungan pasar dengan volatilitas yang terlalu rendah.
Strategi ini membangun sistem perdagangan yang relatif lengkap melalui analisis komprehensif terhadap tiga dimensi: tren rata-rata pergerakan, RSI yang kelebihan beli dan kelebihan jual, dan volatilitas ATR. Keuntungan inti dari strategi ini terletak pada validasi silang beberapa indikator, yang secara efektif dapat mengurangi dampak sinyal palsu. Masih banyak ruang untuk optimalisasi strategi melalui optimalisasi parameter dan perbaikan mekanisme pengendalian risiko. Disarankan agar pedagang menyesuaikan parameter sesuai dengan lingkungan pasar tertentu dan menerapkan langkah-langkah pengendalian risiko secara ketat saat menggunakannya dalam perdagangan nyata.
/*backtest
start: 2019-12-23 08:00:00
end: 2025-01-04 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("High Win Rate BTC Strategy", overlay=true)
// 参数设置
emaShortLength = input(20, title="Short EMA Length")
emaLongLength = input(50, title="Long EMA Length")
rsiLength = input(14, title="RSI Length")
rsiOverbought = input(70, title="RSI Overbought Level")
rsiOversold = input(30, title="RSI Oversold Level")
atrLength = input(14, title="ATR Length")
atrThreshold = input(1.0, title="ATR Threshold")
holdBars = input(5, title="Hold Bars")
// 计算指标
emaShort = ta.ema(close, emaShortLength)
emaLong = ta.ema(close, emaLongLength)
rsi = ta.rsi(close, rsiLength)
atr = ta.atr(atrLength)
// 趋势确认
uptrend = emaShort > emaLong
downtrend = emaShort < emaLong
// 入场条件
longCondition = uptrend and close > emaShort and rsi < rsiOverbought and atr > atrThreshold
shortCondition = downtrend and close < emaShort and rsi > rsiOversold and atr > atrThreshold
// 出场条件
var int holdCount = 0
if (strategy.position_size > 0 or strategy.position_size < 0)
holdCount := holdCount + 1
else
holdCount := 0
exitCondition = holdCount >= holdBars
// 执行交易
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
if (exitCondition)
strategy.close_all()
// 绘制指标
plot(emaShort, color=color.blue, title="Short EMA")
plot(emaLong, color=color.red, title="Long EMA")
hline(rsiOverbought, "RSI Overbought", color=color.red)
hline(rsiOversold, "RSI Oversold", color=color.green)
plot(rsi, color=color.purple, title="RSI")