Sumber dimuat naik... memuat...

Z-Score Normal Isyarat Linear Strategi Dagangan Kuantitatif

Penulis:ChaoZhang, Tarikh: 2025-01-06 16:14:07
Tag:RSISMAZ-ScoreLSBTPSL

img

Ringkasan

Strategi ini adalah sistem perdagangan kuantitatif berdasarkan isyarat linear dan normalisasi Z-score. Ia membina isyarat perdagangan standard dengan menggabungkan pembolehubah eksojen seperti RSI dengan data harga dan mencetuskan perdagangan menggunakan ambang. Strategi ini sesuai untuk senario perdagangan intraday dan frekuensi tinggi, menawarkan daya adaptasi dan konfigurasi yang kuat.

Prinsip Strategi

Prinsip-prinsip teras termasuk beberapa langkah utama:

  1. Pembinaan Isyarat Linear: Menggunakan berat yang boleh dikonfigurasikan (signal_alpha) untuk menggabungkan petunjuk RSI secara linear dengan data harga untuk membentuk isyarat awal.
  2. Normalisasi Z-Score: Mengira purata dan penyimpangan standard isyarat linear berdasarkan tempoh kemunculan semula, menormalkan isyarat ke dalam skor Z.
  3. Mekanisme Pencetus Sempadan: Membuka kedudukan panjang apabila Z-score jatuh di bawah ambang negatif dan kedudukan pendek apabila di atas ambang positif, dikawal oleh risk_adjustment_factor.
  4. Pengurusan Risiko: Menetapkan paras stop-loss dan mengambil keuntungan untuk setiap perdagangan, dengan pelarasan nisbah risiko-balasan yang fleksibel melalui parameter peratusan.

Kelebihan Strategi

  1. Standardisasi isyarat: Transformasi Z-score memberikan sifat statistik yang baik, memudahkan tetapan ambang universal.
  2. Fleksibiliti yang tinggi: Dapat menyeimbangkan pengaruh pembolehubah eksogen dan harga melalui pelarasan signal_alpha.
  3. Risiko Terkawal: Mekanisme stop-loss dan mengambil keuntungan yang lengkap, boleh dikonfigurasi berdasarkan ciri pasaran.
  4. Kebolehsesuaian yang baik: Boleh digunakan untuk pelbagai jangka masa, boleh diperluaskan ke instrumen perdagangan lain yang sangat cair.

Risiko Strategi

  1. Sensitiviti Parameter: Prestasi strategi sensitif terhadap pemilihan parameter, yang memerlukan pengujian balik yang menyeluruh.
  2. Kebergantungan persekitaran pasaran: Boleh menghasilkan perdagangan yang kerap di pasaran terhad dengan trend yang lemah.
  3. Lag isyarat: Pengiraan purata bergerak boleh memperkenalkan lag yang mempengaruhi masa kemasukan.
  4. Risiko Kecairan: Perdagangan frekuensi tinggi mungkin menghadapi kerugian lipatan semasa tempoh kecairan yang rendah.

Arahan Pengoptimuman Strategi

  1. Penyesuaian Parameter Dinamik: Memperkenalkan mekanisme penyesuaian untuk menyesuaikan ambang dan kedudukan stop-loss secara dinamik berdasarkan turun naik pasaran.
  2. Pengesahan Sinyal Berbilang: Tambah penunjuk teknikal lain sebagai keadaan penapisan untuk meningkatkan kebolehpercayaan isyarat.
  3. Pengoptimuman Pengurusan Kedudukan: Reka bentuk sistem pengurusan kedudukan dinamik berdasarkan turun naik dan kekuatan isyarat.
  4. Kawalan Kos Transaksi: Mengoptimumkan logik kemasukan dan keluar untuk mengurangkan kos dari perdagangan yang kerap.

Ringkasan

Ini adalah strategi perdagangan kuantitatif yang berstruktur baik dan secara logik ketat. Ia membina sistem isyarat perdagangan yang kukuh melalui kombinasi linear dan pemprosesan standardisasi. Strategi ini menawarkan konfigurasi yang kuat dan pengurusan risiko yang komprehensif tetapi memerlukan perhatian kepada pengoptimuman parameter dan kesesuaian pasaran. Melalui arah pengoptimuman yang dicadangkan, kestabilan dan keuntungan strategi dapat ditingkatkan lagi.


/*backtest
start: 2024-12-29 00:00:00
end: 2025-01-05 00:00:00
period: 15m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Linear Signal-Based Strategy", shorttitle = "LSB_V1", overlay=true)

// Inputs
lookback_period = input.int(14, title="Lookback Period for Moving Averages")
signal_alpha = input.float(0.5, title="Signal Weight Alpha (Exogenous Variable)")
take_profit_percent = input.float(0.02, title="Take Profit (%)")
stop_loss_percent = input.float(0.01, title="Stop Loss (%)")
risk_adjustment_factor = input.float(1.5, title="Risk Adjustment Factor")

// Fetch Exogenous Variable (Example: RSI as a Proxy)
rsi_value = ta.rsi(close, lookback_period)

// Linear Signal Calculation
linear_signal = signal_alpha * rsi_value + (1 - signal_alpha) * close

// Z-Score Normalization for Signal
mean_signal = ta.sma(linear_signal, lookback_period)
stddev_signal = ta.stdev(linear_signal, lookback_period)
z_score_signal = (linear_signal - mean_signal) / stddev_signal

// Entry Conditions
long_condition = z_score_signal < -risk_adjustment_factor
short_condition = z_score_signal > risk_adjustment_factor

// Risk Management
long_take_profit = close * (1 + take_profit_percent)
long_stop_loss = close * (1 - stop_loss_percent)
short_take_profit = close * (1 - take_profit_percent)
short_stop_loss = close * (1 + stop_loss_percent)

// Execute Trades
if (long_condition)
    strategy.entry("Long", strategy.long, qty=1)
    strategy.exit("Exit Long", "Long", stop=long_stop_loss, limit=long_take_profit)

if (short_condition)
    strategy.entry("Short", strategy.short, qty=1)
    strategy.exit("Exit Short", "Short", stop=short_stop_loss, limit=short_take_profit)




Berkaitan

Lebih lanjut