Strategi ini adalah sistem perdagangan kuantitatif yang menggabungkan metode statistik Z-Score, Indeks Kekuatan Relatif (RSI), dan indikator Supertrend. Strategi ini memantau penyimpangan harga statistik, menggabungkan indikator momentum dan konfirmasi tren untuk mengidentifikasi peluang perdagangan kemungkinan tinggi di pasar. Strategi ini tidak hanya menangkap peluang pasar yang terlalu banyak dibeli dan terlalu banyak dijual tetapi juga menyaring sinyal palsu melalui konfirmasi tren, memungkinkan perdagangan dua arah.
Logika inti dari strategi ini dibangun pada sinergi tiga indikator teknis utama: Pertama, ia menghitung Z-score harga untuk mengukur deviasi harga saat ini dari rata-rata historisnya, menggunakan rata-rata bergerak 75 periode dan deviasi standar. Ketika Z-score melebihi 1,1 atau turun di bawah -1.1, itu menunjukkan deviasi statistik yang signifikan. Kedua, indikator RSI diperkenalkan sebagai konfirmasi momentum, yang mengharuskan RSI sejajar dengan arah (RSI>60 untuk posisi panjang, RSI<40 untuk posisi pendek).
Ini adalah strategi perdagangan kuantitatif yang menggabungkan metode statistik dan analisis teknis, menggunakan beberapa konfirmasi sinyal untuk meningkatkan keandalan perdagangan. Keuntungan inti strategi terletak pada model matematis obyektif dan mekanisme kontrol risiko yang komprehensif, sementara perhatian harus diberikan pada optimasi parameter dan kemampuan beradaptasi pasar. Melalui arah optimasi yang disarankan, ada ruang untuk perbaikan lebih lanjut, terutama dalam beradaptasi secara dinamis dengan lingkungan pasar dan pengendalian risiko. Strategi ini cocok untuk pasar dengan volatilitas tinggi dan tren yang jelas, menjadikannya pertimbangan yang layak bagi pedagang kuantitatif yang mengejar pengembalian yang stabil.
/*backtest start: 2024-01-01 00:00:00 end: 2024-11-26 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Z-Score Long and Short Strategy with Supertrend", overlay=true) // Inputs for Z-Score len = input.int(75, "Z-Score Lookback Length") z_long_threshold = 1.1 // Threshold for Z-Score to open long z_short_threshold = -1.1 // Threshold for Z-Score to open short // Z-Score Calculation z = (close - ta.sma(close, len)) / ta.stdev(close, len) // Calculate Driver RSI driver_rsi_length = input.int(14, "Driver RSI Length") // Input for RSI Length driver_rsi = ta.rsi(close, driver_rsi_length) // Calculate the RSI // Supertrend Parameters atrPeriod = input.int(11, "ATR Length", minval=1) factor = input.float(2.0, "Factor", minval=0.01, step=0.01) // Supertrend Calculation [supertrend, direction] = ta.supertrend(factor, atrPeriod) // Conditions for Long and Short based on Z-Score z_exceeds_long = z >= z_long_threshold and driver_rsi > 60 z_exceeds_short = z <= z_short_threshold and driver_rsi < 40 // Entry Conditions if (z_exceeds_long and direction < 0) // Enter Long if Z-Score exceeds threshold and Supertrend is down strategy.entry("Long", strategy.long) label.new(bar_index, low, text="Open Long", style=label.style_label_up, color=color.green, textcolor=color.white, size=size.small) alert("Open Long", alert.freq_once_per_bar) // Alert for Long entry if (z_exceeds_short and direction > 0) // Enter Short if Z-Score exceeds threshold and Supertrend is up strategy.entry("Short", strategy.short) label.new(bar_index, high, text="Open Short", style=label.style_label_down, color=color.red, textcolor=color.white, size=size.small) alert("Open Short", alert.freq_once_per_bar) // Alert for Short entry // Plot Supertrend upTrend = plot(direction < 0 ? supertrend : na, "Up Trend", color=color.green, style=plot.style_linebr) downTrend = plot(direction > 0 ? supertrend : na, "Down Trend", color=color.red, style=plot.style_linebr) fill(upTrend, downTrend, color=color.new(color.green, 90), fillgaps=false) // Alert conditions for Supertrend changes (optional) alertcondition(direction[1] > direction, title='Downtrend to Uptrend', message='The Supertrend value switched from Downtrend to Uptrend') alertcondition(direction[1] < direction, title='Uptrend to Downtrend', message='The Supertrend value switched from Uptrend to Downtrend')