
Strategi ini adalah sistem perdagangan kuantitatif yang secara khusus ditujukan untuk perdagangan overhead untuk menangkap tren penurunan harga dengan mengidentifikasi terobosan yang efektif dari titik-titik pendukung utama. Strategi ini menggabungkan teori resistensi dukungan dalam analisis teknis, prinsip konfirmasi volume transaksi, dan mekanisme manajemen risiko dinamis ATR. Sistem ini memiliki fungsi penyaringan pasar horizontal yang dapat secara efektif menghindari sinyal palsu dalam situasi yang bergolak dan berfokus pada peluang terobosan yang sedang tren.
Prinsip-prinsip inti dari strategi ini didasarkan pada teori pemecahan level dukungan dalam analisis teknis. Pertama, sistem menentukan level dukungan utama dengan menghitung harga terendah dalam 20 siklus terakhir, yang mewakili area pertahanan penting dari kekuatan multipel. Ketika harga menembus level dukungan ini dan memenuhi kondisi penembusan, menunjukkan bahwa garis pertahanan multipel telah ditembus, dan kekuatan udara mendominasi. Untuk meningkatkan keandalan sinyal, strategi ini diperkenalkan dalam mekanisme konfirmasi volume perdagangan, yang hanya dianggap efektif ketika volume perdagangan yang terpecah lebih besar atau sama dengan rata-rata pergerakan volume perdagangan 20 siklus. Selain itu, sistem mengintegrasikan fungsi deteksi pasar lintas untuk menilai apakah pasar berada dalam kondisi horizontal dengan membandingkan rentang pergerakan harga dalam 20 siklus dengan nilai ATR.
Strategi ini memiliki beberapa keunggulan teknis, pertama adalah kualitas sinyal yang tinggi, yang secara signifikan mengurangi probabilitas sinyal palsu dengan pemfilteran tiga kondisi support breakout, confirmation volume, dan crossover filter. Fungsi crossover filter adalah salah satu keunggulan penting dari strategi ini, yang dapat secara efektif mengidentifikasi pergerakan yang bergoyang dan menghentikan perdagangan untuk menghindari kerugian berturut-turut dalam lingkungan pasar yang tidak menguntungkan.
Meskipun strategi ini memiliki banyak keuntungan, masih ada beberapa risiko potensial yang perlu diperhatikan. Pertama, risiko reversal tren, ketika pasar berada dalam tren naik yang kuat, penembusan level dukungan mungkin hanya sebuah reversal singkat, bukan reversal tren yang sebenarnya, yang dapat menyebabkan posisi kosong menghadapi pasar stop loss yang cepat. Risiko volatilitas ekstrem adalah pertimbangan penting lainnya, di bawah kejutan berita besar atau panik pasar, harga mungkin melompat ke lubang, sehingga mekanisme stop loss berbasis ATR menjadi tidak efektif.
Strategi ada beberapa arah yang dapat dioptimalkan untuk meningkatkan kinerja secara keseluruhan. Pertama, analisis multi-frame waktu dapat diperkenalkan untuk memfilter sinyal perdagangan dengan menggabungkan arah tren dari frame waktu yang lebih tinggi, misalnya, sinyal breakout kosong dari grafik jam hanya dilakukan ketika grafik hari menunjukkan tren turun. Ini dapat secara signifikan meningkatkan tingkat keberhasilan sinyal, menghindari aksi balik. Kedua, mekanisme konfirmasi volume transaksi dapat dioptimalkan, tidak hanya mempertimbangkan nilai absolut volume transaksi, tetapi juga dapat menganalisis tingkat perubahan relatif volume transaksi dan karakteristik distribusi volume transaksi.
Strategi ini adalah sistem perdagangan kuantitatif yang dirancang dengan baik untuk menerobos titik-titik yang mendukung dan mencapai kualitas sinyal yang lebih tinggi dan pengendalian tingkat risiko melalui aplikasi gabungan dari beberapa indikator teknis. Keunggulan inti dari strategi ini adalah mekanisme penyaringan sinyal yang lengkap dan sistem manajemen risiko dinamis berbasis ATR.
/*backtest
start: 2024-05-26 00:00:00
end: 2024-08-13 00:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"SOL_USDT"}]
*/
//@version=5
strategy("Breakout Strategy Pro [Dubic] - Short Only", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// === INPUTS === //
srRange = input.int(20, "Support Lookback", minval=5)
volMaLength = input.int(20, "Volume MA Length", minval=1)
atrLength = input.int(14, "ATR Period", minval=5)
trailMultiplier = input.float(1.5, "Trailing Stop Multiplier", minval=1.0)
stopMultiplier = input.float(1.0, "Initial Stop-Loss ATR Multiplier", minval=0.5)
breakoutBuffer = input.float(1.005, "Breakout Buffer", step=0.001)
rangeLength = input.int(20, "Range Detector Lookback", minval=5)
rangeThreshold = input.float(1.5, "Sideways Threshold (x ATR)", minval=0.5, step=0.1)
// === CALCULATIONS === //
lowLevel = ta.lowest(low, srRange)[1]
volMA = ta.sma(volume, volMaLength)
atr = ta.atr(atrLength)
trailOffsetTicks = math.max(int(math.round((atr * trailMultiplier) / syminfo.mintick)), 1)
stopLossTicks = math.max(int(math.round((atr * stopMultiplier) / syminfo.mintick)), 1)
// === SIDEWAYS DETECTION === //
highRange = ta.highest(high, rangeLength)
lowRange = ta.lowest(low, rangeLength)
priceRange = highRange - lowRange
isSideways = priceRange <= atr * rangeThreshold
// === ENTRY LOGIC === //
shortCondition = close <= lowLevel * breakoutBuffer and volume >= volMA and not isSideways
// === ENTRY & EXIT === //
if shortCondition and strategy.position_size >= 0
strategy.entry("Short", strategy.short)
strategy.exit("Exit Short", "Short", trail_price=close, trail_offset=trailOffsetTicks, stop=close + stopLossTicks * syminfo.mintick)
alert("Short Entry Signal - Breakout Strategy Pro [Dubic]", alert.freq_once_per_bar)
// === VISUALS === //
plot(lowLevel, "Support", color=color.new(color.green, 30))
plot(volMA, "Volume MA", color=color.gray)
plotshape(shortCondition, location=location.abovebar, style=shape.triangledown, color=color.red, size=size.small, title="Sell Signal")
bgcolor(isSideways ? color.new(color.orange, 85) : na, title="Sideways Market")