Sistem pengoptimuman strategi perdagangan kuantitatif berdasarkan saluran Gaussian dan RSI stokastik

RSI EMA stdev SMA
Tarikh penciptaan: 2025-02-18 15:00:11 Akhirnya diubah suai: 2025-02-18 15:00:11
Salin: 3 Bilangan klik: 460
1
fokus pada
1617
Pengikut

Sistem pengoptimuman strategi perdagangan kuantitatif berdasarkan saluran Gaussian dan RSI stokastik

Gambaran keseluruhan

Strategi ini adalah sistem perdagangan kuantitatif berdasarkan Gaussian Channel dan Stochastic RSI. Strategi ini digunakan untuk perdagangan ganda sahaja, tanpa operasi kosong. Strategi ini menggabungkan prinsip pulangan dan dinamika dalam analisis teknikal, untuk masuk ke dalam pasaran apabila harga menyentuh saluran bawah dan RSI rawak menunjukkan isyarat oversell, dan untuk keluar dari pasaran apabila harga menyentuh saluran atas atau RSI rawak menunjukkan isyarat oversell.

Prinsip Strategi

Logik utama strategi ini adalah berdasarkan beberapa pengiraan utama:

  1. Pembinaan saluran Gauss: menggunakan EMA sebagai laluan tengah, dengan dua kali ganda perbezaan piawai sebagai lebar saluran dihitung naik dan turun.
  2. Pengiraan RSI secara rawak: Pertama, RSI dikira untuk 14 kitaran, kemudian nilai tertinggi dan terendah RSI dalam 14 kitaran, dan akhirnya kedudukan relatif RSI semasa dalam julat ini.
  3. Isyarat masuk: Harga menembusi saluran terbawah, sementara RSI rawak menembusi ke atas dari bawah 20.
  4. Isyarat keluar: Harga menembusi saluran ke atas atau RSI rawak menembusi ke bawah dari 80 ke atas.

Kelebihan Strategik

  1. Mekanisme pengesahan berganda: Mengurangkan kesan isyarat palsu dengan menggabungkan saluran harga dan indikator momentum.
  2. Kawalan risiko yang sempurna: menggunakan pengurusan kedudukan peratusan, dan mempertimbangkan kos perdagangan dan faktor slippoint.
  3. Ciri-ciri Regression Mean Value: Saluran Gauss dapat menangkap rentang turun naik harga dengan berkesan, meningkatkan ketepatan perdagangan.
  4. Dinamik: parameter strategi boleh disesuaikan dengan keadaan pasaran yang berbeza.

Risiko Strategik

  1. Risiko Pasaran Trend: Dalam pasaran trend yang kuat, anda mungkin akan terlambat untuk melonggarkan kedudukan anda dan terlepas peluang besar.
  2. Sensitiviti parameter: Pengaturan faktor saluran dan parameter RSI mempunyai kesan besar terhadap prestasi strategi.
  3. Kepercayaan kepada keadaan pasaran: Strategi ini berfungsi dengan baik dalam pasaran yang bergolak, tetapi mungkin tidak berfungsi dengan baik dalam pasaran unilateral.
  4. Pengiraan risiko kelewatan: Pengiraan penunjuk teknikal mempunyai kelewatan tertentu yang boleh menjejaskan masa perdagangan.

Arah pengoptimuman strategi

  1. Memperkenalkan parameter penyesuaian diri: Pekali saluran boleh disesuaikan secara dinamik mengikut turun naik pasaran.
  2. Menambah pengiktirafan keadaan pasaran: Tambah indikator kekuatan trend, gunakan parameter yang berbeza dalam keadaan pasaran yang berbeza.
  3. Pengurusan wang yang dioptimumkan: Rasio pegangan boleh disesuaikan mengikut dinamik kekuatan isyarat.
  4. Peningkatan mekanisme henti kerugian: penambahan fungsi henti kerugian untuk lebih melindungi keuntungan.

ringkaskan

Strategi ini membina sistem perdagangan yang agak stabil dengan menggabungkan saluran Gaussian dan RSI acak. Kelebihan strategi adalah mekanisme pengesahan dua kali dan kawalan risiko yang baik, tetapi juga perlu memperhatikan masalah adaptasi terhadap keadaan pasaran yang berbeza. Dengan memperkenalkan arah pengoptimuman seperti parameter penyesuaian diri dan pengenalan keadaan pasaran, anda dapat meningkatkan lagi kestabilan dan keuntungan strategi.

Kod sumber strategi
/*backtest
start: 2024-02-18 00:00:00
end: 2025-01-30 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Gaussian Channel with Stochastic RSI", overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=200, commission_type=strategy.commission.percent, commission_value=0.1, slippage=0)

// Gaussian Channel Parameters
gc_length = input.int(20, "Gaussian Channel Length", minval=1)
gc_mult = input.float(2.0, "Gaussian Channel Multiplier", minval=0.1)

middle = ta.ema(close, gc_length)
stdev = ta.stdev(close, gc_length)
upper = middle + gc_mult * stdev
lower = middle - gc_mult * stdev

// Plot Channels
plot(middle, "Middle Line", color=color.blue)
plot(upper, "Upper Channel", color=color.red)
plot(lower, "Lower Channel", color=color.green)

// Stochastic RSI Parameters
rsi_length = input.int(14, "RSI Length", minval=1)
stoch_length = input.int(14, "Stochastic Length", minval=1)
smooth_k = input.int(3, "Smooth %K", minval=1)
oversold = input.int(20, "Oversold Level", minval=0, maxval=100)
overbought = input.int(80, "Overbought Level", minval=0, maxval=100)

// Calculate Stochastic RSI
rsi = ta.rsi(close, rsi_length)
lowest_rsi = ta.lowest(rsi, stoch_length)
highest_rsi = ta.highest(rsi, stoch_length)
stoch_rsi = highest_rsi != lowest_rsi ? (rsi - lowest_rsi) / (highest_rsi - lowest_rsi) * 100 : 0
k = ta.sma(stoch_rsi, smooth_k)

// Entry/Exit Conditions
enterLong = ta.crossover(close, lower) and ta.crossover(k, oversold)
exitLong = ta.crossover(close, upper) or ta.crossunder(k, overbought)

// Strategy Execution
if (time >= timestamp(2018, 01, 01, 0, 0) and time < timestamp(2069, 01, 01, 0, 0))
    if enterLong
        strategy.entry("Long", strategy.long)
    if exitLong
        strategy.close("Long")