Strategi ini adalah sistem perdagangan mengikuti tren yang menggabungkan Indeks Arah Rata-rata (ADX) dengan indikator Stop Parabolik dan Reverse (SAR). Sistem ini mengukur kekuatan tren menggunakan ADX dan mengkonfirmasi arah tren menggunakan SAR untuk menangkap peluang perdagangan di pasar tren yang kuat.
Logika inti didasarkan pada komponen kunci berikut:
Pemicu sinyal perdagangan adalah sebagai berikut:
Saran pengendalian risiko:
Memperkenalkan indikator volatilitas untuk penyesuaian parameter
Mengoptimalkan mekanisme keluar
Tambahkan filter lingkungan pasar
Meningkatkan manajemen posisi
Strategi ini membangun sistem trend berikut yang kuat dengan menggabungkan indikator ADX dan SAR. Keuntungannya utama terletak pada mekanisme konfirmasi ganda dan pengaturan stop-loss dinamis, meskipun kinerjanya mungkin tidak optimal di pasar osilasi. Melalui optimasi parameter yang tepat dan pengendalian risiko, strategi dapat mencapai kinerja yang baik dalam lingkungan pasar yang jelas tren. Pedagang disarankan untuk melakukan backtesting menyeluruh sebelum implementasi langsung dan menyesuaikan parameter sesuai dengan karakteristik pasar tertentu.
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-10 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © traderhub //@version=5 strategy("Trend Following ADX + Parabolic SAR", overlay=true) // Strategy parameters adxLength = input(14, title="ADX Period") adxThreshold = input(25, title="ADX Threshold") adxSmoothing = input(14, title="ADX Smoothing") sarStart = input(0.02, title="Parabolic SAR Start") // Starting acceleration factor sarIncrement = input(0.02, title="Parabolic SAR Increment") // Increment step sarMax = input(0.2, title="Parabolic SAR Max") // Maximum acceleration factor // Calculate ADX, DI+, and DI- [diPlus, diMinus, adx] = ta.dmi(adxLength, adxSmoothing) // Parabolic SAR calculation sar = ta.sar(sarStart, sarIncrement, sarMax) // Conditions for a long position longCondition = adx > adxThreshold and diPlus > diMinus and close > sar // Conditions for a short position shortCondition = adx > adxThreshold and diMinus > diPlus and close < sar // Enter a long position if (longCondition) strategy.entry("Long", strategy.long) // Enter a short position if (shortCondition) strategy.entry("Short", strategy.short) // Close position on reverse signal if (strategy.position_size > 0 and shortCondition) strategy.close("Long") if (strategy.position_size < 0 and longCondition) strategy.close("Short") // Plot indicators on the chart plot(sar, color=color.blue, style=plot.style_circles, linewidth=2, title="Parabolic SAR") plot(adx, color=color.red, title="ADX") hline(adxThreshold, "ADX Threshold", color=color.green)