
UT Bot’s Dynamic Trend Tracking and RSI Compound Strategy adalah strategi perdagangan kuantitatif yang menggabungkan sistem trend tracking yang menyesuaikan diri dengan indeks yang agak kuat (RSI). Inti strategi ini adalah menggunakan purata gelombang sebenar (ATR) untuk membina sokongan dan rintangan dinamik, dengan RSI untuk menangkap titik-titik perubahan pasaran, sambil mengintegrasikan Indeks 200 Periode Moving Average (EMA200) untuk pengesahan trend.
Prinsip teras strategi ini adalah berdasarkan dua sistem penunjuk teknikal utama: Sistem Pengesanan Trend UT Bot dan Penunjuk Guncangan RSI.
Sistem pengesanan trend UT Bot mengira julat pergerakan harga melalui indikator ATR dan dengan ini membina pergerakan ke atas dan ke bawah yang dinamik:
Sistem ini mengekalkan jejak untuk menentukan arah trend semasa:
Strategi ini juga disertakan dengan penapis isyarat RSI:
Selain itu, strategi ini menggabungkan EMA200 sebagai rujukan trend jangka panjang, dan menetapkan mekanisme stop loss berdasarkan peratusan:
Kebolehan beradaptasi: Melalui penunjuk ATR, bandwidth perdagangan disesuaikan secara automatik, membolehkan strategi menyesuaikan diri dengan keadaan pasaran yang berbeza dan berfungsi dengan baik di pasaran yang bergelombang tinggi dan rendah.
Perpaduan Trend dan GuncanganStrategi ini menggabungkan trend-following dan perdagangan goyah, mengikuti trend apabila trend jelas, mencari peluang untuk berbalik ketika pasaran terlalu banyak membeli dan menjual, meningkatkan keseluruhan strategi.
Masuk dengan tepat: Dengan RSI ((60⁄40) seting meluaskan tahap overbought dan oversold, meningkatkan frekuensi isyarat perdagangan, dan memastikan kualiti isyarat, mengoptimumkan masa masuk.
Pengurusan risiko yang lebih baik: Mekanisme stop loss dinamik yang bersepadu, kadar stop loss ((3%) lebih besar daripada kadar stop loss ((1.5%), sesuai dengan prinsip perdagangan nilai jangkaan positif, yang membantu keuntungan yang stabil dalam jangka panjang.
Isyarat peringatan segeraStrategi ini menyediakan fungsi peringatan untuk isyarat beli dan jual, yang membantu peniaga untuk merebut peluang pasaran tepat pada masanya.
Struktur yang jelas dan modularStruktur kod jelas, modul fungsi dipisahkan, memudahkan penyelenggaraan dan pengoptimuman selanjutnya.
Isyarat palsu pasaran yang bergolak: Dalam pasaran goyah tanpa trend yang jelas, strategi mungkin menghasilkan isyarat silang yang kerap, menyebabkan kerugian berturut-turut. Penyelesaian adalah dengan menambah syarat penapisan kekuatan trend, seperti petunjuk ADX atau keperluan untuk tempoh trend.
Risiko yang terlalu kecil: Penutupan 1.5% yang ditetapkan pada masa ini mungkin terlalu kecil di beberapa pasaran yang bergelombang tinggi dan mudah dicetuskan oleh bunyi pasaran. Adalah disyorkan untuk menyesuaikan kadar penutupan mengikut ciri-ciri jenis perdagangan dan dinamik kitaran masa.
Kepekaan ParameterPrestasi strategi sensitif terhadap parameter seperti panjang RSI, tahap overbought dan oversold dan faktor ATR, dengan kombinasi parameter yang berbeza menunjukkan perbezaan yang besar dalam keadaan pasaran yang berbeza.
Kekurangan pengenalan status pasaranStrategi ini tidak membezakan dengan jelas antara keadaan pasaran yang berbeza (trend, goyah, pengumpulan) dan mungkin tidak berfungsi dengan baik dalam keadaan pasaran tertentu.
EMA200 kurang rujukanWalaupun garis EMA200 telah digambar, strategi tidak menggunakannya sebagai syarat perdagangan dan tidak memanfaatkan maklumat trend jangka panjang.
趋势强度 = ta.adx(14) > 25
买入条件 = 趋势强度 and trendUp and rsi < rsiUnder
stopLoss = atr * slFactor
strategy.exit("TP/SL", from_entry="Buy", profit=tpPercent, loss=stopLoss/close*100)
volumeConfirmation = volume > ta.sma(volume, 20) * 1.5
buy = trendUp and rsi < rsiUnder and volumeConfirmation
isVolatile = atr/close*100 > 历史平均水平
isTrending = ta.adx(14) > 25
validTradingHour = (hour >= 9 and hour <= 16)
buy = validTradingHour and trendUp and rsi < rsiUnder
UT Bot Trend Tracking dengan RSI Komposit Strategi adalah sistem perdagangan komprehensif yang menggabungkan saluran turun naik dinamik dan indikator goyah. Ia menangkap perubahan trend melalui saluran penyesuaian UT Bot, dan menggunakan tahap RSI yang lebih tinggi untuk mengesahkan isyarat masuk, sambil mengintegrasikan mekanisme pengurusan risiko berdasarkan peratusan. Kelebihan terbesar strategi ini adalah kesesuaian dinamik dan keupayaan untuk menggunakan pelbagai petunjuk teknikal secara komprehensif, untuk mencari peluang perdagangan dalam pelbagai persekitaran pasaran.
Walau bagaimanapun, strategi ini mungkin menghasilkan isyarat palsu dalam pasaran yang bergolak dan sensitif kepada tetapan parameter. Arah pengoptimuman masa depan harus memberi tumpuan kepada peningkatan penapisan kekuatan trend, pengendalian risiko dinamik yang lebih baik, pengenalan pengesahan kuantitatif dan perdagangan klasifikasi keadaan pasaran. Melalui pengoptimuman ini, strategi ini diharapkan dapat meningkatkan kestabilan dan kebolehpasaran lebih lanjut, menjadi sistem perdagangan kuantitatif yang lebih komprehensif dan mantap, dengan mengekalkan kelebihan asalnya.
Secara keseluruhannya, ini adalah strategi kuantitatif yang direka dengan logik yang jelas dan sesuai untuk digunakan oleh peniaga yang mempunyai asas analisis teknikal. Dengan pelaksanaan arah penyesuaian dan pengoptimuman yang sesuai terhadap parameter, strategi ini dijangka menghasilkan keuntungan yang stabil dalam perdagangan sebenar.
/*backtest
start: 2024-08-04 00:00:00
end: 2025-08-02 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=6
strategy("✅ BACKTEST: UT Bot + RSI", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
rsiLen = input.int(14, "RSI Length")
rsiOver = input.int(60, "RSI Overbought Level")
rsiUnder = input.int(40, "RSI Oversold Level")
atrLen = input.int(10, "ATR Length")
factor = input.float(1.0, "UT Bot Factor", step=0.1)
tpPercent = input.float(3.0, "Take Profit %")
slPercent = input.float(1.5, "Stop Loss %")
rsi = ta.rsi(close, rsiLen)
atr = ta.atr(atrLen)
ema200 = ta.ema(close, 200)
upperBand = close + factor * atr
lowerBand = close - factor * atr
var float trail = na
var int dir = 0
if na(trail)
trail := lowerBand
dir := 0
if close > trail
trail := math.max(trail, lowerBand)
dir := 1
else if close < trail
trail := math.min(trail, upperBand)
dir := -1
else
trail := trail[1]
dir := dir[1]
trendUp = dir == 1 and dir[1] == -1
trendDown = dir == -1 and dir[1] == 1
buy = trendUp and rsi < rsiUnder
sell = trendDown and rsi > rsiOver
if (buy)
strategy.entry("Buy", strategy.long)
strategy.close("Sell")
if (sell)
strategy.entry("Sell", strategy.short)
strategy.close("Buy")
strategy.exit("TP/SL", from_entry="Buy", profit=tpPercent, loss=slPercent)
strategy.exit("TP/SL", from_entry="Sell", profit=tpPercent, loss=slPercent)
// plotting
plot (ema200, "EMA 200, color=color.orange")
// === ALERT SIGNALS ===
alertcondition(buy, title="Buy Signal", message="BUY")
alertcondition(sell, title="Sell Signal", message="SELL")