Artikel ini akan menjelaskan tentang strategi perdagangan kuantitatif garis pendek dengan kombinasi multi-indikator. Strategi ini menggunakan serangkaian indikator teknis yang kuat untuk menghasilkan sinyal perdagangan dalam periode waktu yang rendah (misalnya 15 menit).
Inti dari strategi ini adalah kombinasi dari berbagai indikator, yang meliputi:
(1) Sistem Garis Dua: menghitung dua Hull Moving Average, dan menilai arah tren berdasarkan hubungan silang mereka.
(2) Sistem Ichimoku: Menghitung garis konversi, garis acuan, dan lain-lain, dan menggabungkan dengan grafik awan untuk menilai tren dan mendukung resistensi.
(3) Saluran Donchian: Saluran dibangun melalui harga tertinggi dan terendah, untuk menilai harga yang terobosan.
(4) MACD: Menghitung MACD dan jalur sinyal, dan melakukan operasi berdasarkan persimpangan mereka.
Ketika indikator-indikator ini berkoordinasi untuk menilai tren, sinyal perdagangan yang lebih dapat diandalkan akan dihasilkan. Logika spesifiknya adalah:
Ketika Hull MA yang cepat melewati Hull MA yang lambat, AND Ichimoku melintasi grafik awan AND Donchian terobosan melintasi jalur sinyal AND MACD melintasi jalur sinyal, lakukan lebih banyak; sebaliknya menilai kosong.
Pada saat yang sama, dengan perubahan harga penutupan K Line setiap hari sebagai penilaian tambahan, untuk menghindari terbalik.
Selain itu, strategi ini memiliki logika stop loss dan stop loss yang dapat mengontrol risiko-pengembalian dari setiap transaksi.
Kedua, keunggulan strategi
Keuntungan terbesar dari strategi ini adalah bahwa kombinasi indikator saling melengkapi, yang dapat meningkatkan kualitas sinyal. Indikator yang berbeda menilai tren dari berbagai sudut pandang, dan hanya satu kesepakatan yang menghasilkan sinyal, yang menghindari keterbatasan satu indikator.
Kedua, kombinasi multi-siklus waktu juga merupakan keuntungan besar. Penghakiman tambahan Kline per hari dapat menyaring risiko jangka pendek dari siklus Low.
Akhirnya, strategi ini juga memiliki mekanisme stop loss yang memungkinkan pengendalian risiko pada setiap transaksi.
Ketiga, potensi risiko
Meskipun strategi ini dirancang dengan baik, ada beberapa risiko yang harus diperhatikan dalam transaksi:
Pertama, kombinasi multi-indikator membuat pengoptimalan parameter menjadi lebih sulit, dan pengaturan yang tidak tepat dapat menyebabkan pengoptimalan yang berlebihan.
Kedua, dalam tren yang kuat, stop loss dapat dipatahkan dan menyebabkan kerugian.
Akhirnya, ada juga kasus-kasus di mana complexesignals sulit untuk dinilai.
Secara keseluruhan, strategi ini secara keseluruhan menggabungkan ilmu logika yang dapat terus dioptimalkan melalui pengujian parameter, menjadi strategi kuantitatif garis pendek yang efektif.
Empat isi, ringkasan
Artikel ini membahas strategi perdagangan kuantitatif garis pendek dengan kombinasi beberapa indikator. Strategi ini menggunakan indikator seperti biner, Ichimoku, saluran Donchian, MACD untuk kombinasi dan meningkatkan kualitas sinyal. Strategi ini juga menggunakan penilaian periode waktu dan pengendalian risiko stop loss logic. Secara keseluruhan, strategi ini dapat menjadi sistem perdagangan kuantitatif garis pendek yang efisien setelah dioptimalkan.
/*backtest
start: 2023-08-14 00:00:00
end: 2023-09-13 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
// Any timeFrame ok but good on 15 minute & 60 minute , Ichimoku + Daily-Candle_cross(DT) + HULL-MA_cross + MacD combination 420 special blend
strategy("Custom 15m strat",overlay=true)
keh=input(title="Double HullMA",defval=14, minval=1)
dt = input(defval=0.0010, title="Decision Threshold (0.001)", step=0.0001)`
SL = input(defval=-500.00, title="Stop Loss in $", step=1)
TP = input(defval=25000.00, title="Target Point in $", step=1)
ot=1
n2ma=2*wma(close,round(keh/2))
nma=wma(close,keh)
diff=n2ma-nma
sqn=round(sqrt(keh))
n2ma1=2*wma(close[1],round(keh/2))
nma1=wma(close[1],keh)
diff1=n2ma1-nma1
sqn1=round(sqrt(keh))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
b=n1>n2?lime:red
c=n1>n2?green:red
d=n1>n2?red:green
confidence=(security(syminfo.tickerid, 'D', close)-security(syminfo.tickerid, 'D', close[1]))/security(syminfo.tickerid, 'D', close[1])
conversionPeriods = input(9, minval=1, title="Conversion Line Periods")
basePeriods = input(26, minval=1, title="Base Line Periods")
laggingSpan2Periods = input(52, minval=1, title="Lagging Span 2 Periods")
displacement = input(26, minval=1, title="Displacement")
donchian(len) => avg(lowest(len), highest(len))
conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)
LS=close, offset = -displacement
MACD_Length = input(9)
MACD_fastLength = input(12)
MACD_slowLength = input(26)
MACD = ema(close, MACD_fastLength) - ema(close, MACD_slowLength) //macd
aMACD = ema(MACD, MACD_Length) //signal
closelong = n1<n2 and close<n2 and confidence<dt or strategy.openprofit<SL or strategy.openprofit>TP
if (closelong)
strategy.close("Long")
closeshort = n1>n2 and close>n2 and confidence>dt or strategy.openprofit<SL or strategy.openprofit>TP
if (closeshort)
strategy.close("Short")
longCondition = n1>n2 and strategy.opentrades<ot and confidence>dt and close>n2 and leadLine1>leadLine2 and open<LS and MACD>aMACD
if (longCondition)
strategy.entry("Long",strategy.long)
shortCondition = n1<n2 and strategy.opentrades<ot and confidence<dt and close<n2 and leadLine1<leadLine2 and open>LS and MACD<aMACD
if (shortCondition)
strategy.entry("Short",strategy.short)
a1=plot(n1,color=c)
a2=plot(n2,color=c)
plot(cross(n1, n2) ? n1 : na, style = circles, color=b, linewidth = 4)
plot(cross(n1, n2) ? n1 : na, style = line, color=d, linewidth = 4)
plot(conversionLine, color=#0496ff, title="Conversion Line")
plot(baseLine, color=#991515, title="Base Line")
//plot(longCondition == true ? 4000:4100,title="long")
plot(close, offset = -displacement, color=#459915, title="Lagging Span")
p1=plot (leadLine1, offset = displacement, color=green, title="Lead 1")
p2=plot (leadLine2, offset = displacement, color=red, title="Lead 2")
fill(p1, p2, color = leadLine1 > leadLine2 ? green : red)
// remove the "//" from before the plot script if want to see the indicators on chart