Terobosan tren filter ganda strategi perdagangan rata-rata pergerakan cerdas

VWAP EMA RSI ADX ATR HTF SMA
Tanggal Pembuatan: 2024-12-20 15:49:05 Akhirnya memodifikasi: 2024-12-20 15:49:05
menyalin: 0 Jumlah klik: 427
1
fokus pada
1617
Pengikut

Terobosan tren filter ganda strategi perdagangan rata-rata pergerakan cerdas

Ringkasan

Strategi ini adalah sistem perdagangan tren-break yang didasarkan pada jaringan indikator teknis ganda. Ini menggunakan indikator teknis yang komprehensif, seperti indeks moving average (EMA), harga rata-rata tertimbang volume transaksi (VWAP), indeks relatif kuat (RSI), dan indeks tren rata-rata (ADX), untuk memfilter kebocoran palsu melalui pengakuan sinyal ganda, meningkatkan akurasi perdagangan. Strategi ini juga menggabungkan penilaian tren dari periode waktu yang lebih tinggi, dan menggunakan strategi stop loss stop loss berbasis ATR, untuk mengontrol risiko secara efektif.

Prinsip Strategi

Logika inti dari strategi ini didasarkan pada elemen-elemen kunci berikut:

  1. Sistem penilaian tren: Menggunakan EMA silang 9 siklus dan 21 siklus untuk menangkap perubahan tren jangka pendek, sambil merujuk pada 50 siklus EMA 15 menit untuk mengkonfirmasi arah tren yang lebih besar.
  2. Konfirmasi dinamika harga: menggunakan indikator RSI untuk mengkonfirmasi dinamika, multihead membutuhkan RSI> 55, head kosong membutuhkan RSI< 45.
  3. Validasi kekuatan tren: Masukkan indikator ADX untuk menilai kekuatan tren, dengan persyaratan ADX> 25 untuk memastikan efektivitas tren.
  4. Verifikasi posisi harga: menggunakan VWAP sebagai referensi posisi harga, meminta harga berada di posisi VWAP yang benar.
  5. Konfirmasi volume transaksi: Memerlukan volume transaksi lebih dari 1,5 kali lipat dari rata-rata volume transaksi dalam 10 siklus, untuk memastikan bahwa pasar memiliki keterlibatan yang cukup.
  6. Pengelolaan risiko: Berbasis proporsi tetap dari total nilai akun dan ATR dinamis untuk menghitung ukuran kepemilikan, menggunakan 1,5 kali ATR sebagai stop loss, 3 kali ATR sebagai stop loss.

Keunggulan Strategis

  1. Mekanisme konfirmasi sinyal ganda sangat mengurangi gangguan dari sinyal palsu.
  2. Kombinasi analisis siklus waktu tinggi dan rendah, meningkatkan akurasi penilaian tren.
  3. Manajemen posisi yang dinamis dan pengaturan stop loss, memungkinkan pengendalian risiko yang baik.
  4. Menggunakan terobosan volume transaksi sebagai konfirmasi transaksi, meningkatkan keandalan transaksi.
  5. Parameter strategi yang dapat disesuaikan, sehingga mudah untuk mengoptimalkan sesuai dengan situasi pasar yang berbeda.

Risiko Strategis

  1. Banyaknya jaringan mungkin menyebabkan kehilangan beberapa peluang perdagangan yang efektif.
  2. Ini adalah sinyal yang sering muncul di pasar yang bergejolak.
  3. Optimisasi parameter dapat menyebabkan over-matching data historis.
  4. Stop loss ATR mungkin terlalu besar di pasar yang sangat fluktuatif.

Arah optimasi strategi

  1. Memperkenalkan mekanisme parameter adaptif, menyesuaikan parameter sesuai dengan dinamika kondisi pasar.
  2. Menambahkan modul identifikasi lingkungan pasar, menggunakan kombinasi parameter yang berbeda dalam lingkungan pasar yang berbeda.
  3. Tambahkan filter waktu perdagangan untuk menghindari periode yang lebih berfluktuasi.
  4. Optimalkan Stop Loss Stop Loss Ratio, dapat dipertimbangkan untuk disesuaikan dengan dinamika volatilitas pasar.
  5. Meningkatkan penilaian gradasi kekuatan tren, menggunakan strategi manajemen posisi yang berbeda dengan intensitas yang berbeda.

Meringkaskan

Strategi ini membangun sistem perdagangan yang relatif lengkap melalui kolaborasi kolaboratif dari beberapa indikator teknis. Keunggulan utamanya adalah meningkatkan akurasi perdagangan melalui konfirmasi sinyal multi-dimensi, sambil menggunakan metode manajemen risiko ilmiah untuk melindungi keamanan dana. Meskipun ada beberapa keterbatasan, strategi ini diharapkan untuk menghasilkan keuntungan yang stabil dalam perdagangan nyata melalui pengoptimalan dan perbaikan berkelanjutan.

Kode Sumber Strategi
/*backtest
start: 2024-11-19 00:00:00
end: 2024-12-18 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Trend-Filtered Scalping Strategy", overlay=true, shorttitle="TFSS")

// Inputs
emaShort     = input.int(9, title="EMA Short", minval=1)
emaLong      = input.int(21, title="EMA Long", minval=1)
rsiLength    = input.int(14, title="RSI Length", minval=1)
atrLength    = input.int(14, title="ATR Length", minval=1)
adxLength    = input.int(20, title="ADX Length", minval=1)
adxSmoothing = input.int(14, title="ADX Smoothing", minval=1)
volMultiplier = input.float(1.5, title="Volume Spike Multiplier", minval=1.0)
riskPercent  = input.float(1, title="Risk % of Equity", minval=0.1, step=0.1)

// Higher Time Frame for Trend Filter
htfTimeframe = input.timeframe("15", title="Higher Time Frame")
ema50HTF     = request.security(syminfo.tickerid, htfTimeframe, ta.ema(close, 50))

// Indicators
ema9  = ta.ema(close, emaShort)
ema21 = ta.ema(close, emaLong)
vwap  = ta.vwap(close)
rsi   = ta.rsi(close, rsiLength)
atr   = ta.atr(atrLength)
volAvg = ta.sma(volume, 10)

// ADX Calculation with Smoothing
[_, _, adx] = ta.dmi(adxLength, adxSmoothing)

// Entry Conditions
longCondition = (ta.crossover(ema9, ema21) and close > vwap and rsi > 55 and adx > 25 and close > ema50HTF and volume > volAvg * volMultiplier)
shortCondition = (ta.crossunder(ema9, ema21) and close < vwap and rsi < 45 and adx > 25 and close < ema50HTF and volume > volAvg * volMultiplier)

// Position Sizing Based on Risk %
capitalPerTrade = (strategy.equity * (riskPercent / 100)) / atr
longStop  = close - 1.5 * atr
longTarget = close + 3 * atr
shortStop = close + 1.5 * atr
shortTarget = close - 3 * atr

// Entry Logic
if longCondition and not strategy.opentrades
    strategy.entry("Long", strategy.long, qty=capitalPerTrade)
    strategy.exit("Exit Long", from_entry="Long", stop=longStop, limit=longTarget)

if shortCondition and not strategy.opentrades
    strategy.entry("Short", strategy.short, qty=capitalPerTrade)
    strategy.exit("Exit Short", from_entry="Short", stop=shortStop, limit=shortTarget)

// Alerts
alertcondition(longCondition, title="Long Entry Alert", message="Long Condition Triggered!")
alertcondition(shortCondition, title="Short Entry Alert", message="Short Condition Triggered!")

// Plot Indicators
plot(ema9, title="EMA 9", color=color.green)
plot(ema21, title="EMA 21", color=color.red)
plot(vwap, title="VWAP", color=color.blue)
plot(ema50HTF, title="HTF EMA 50", color=color.purple)
hline(55, "RSI Long Threshold", color=color.green)
hline(45, "RSI Short Threshold", color=color.red)