Strategi penilaian tren berdasarkan saluran Gaussian dan penyaringan indeks kekuatan relatif stokastik

GC RSI SMA K D
Tanggal Pembuatan: 2025-02-21 11:42:36 Akhirnya memodifikasi: 2025-02-21 11:42:36
menyalin: 0 Jumlah klik: 425
2
fokus pada
319
Pengikut

Strategi penilaian tren berdasarkan saluran Gaussian dan penyaringan indeks kekuatan relatif stokastik Strategi penilaian tren berdasarkan saluran Gaussian dan penyaringan indeks kekuatan relatif stokastik

Ringkasan

Strategi ini adalah sistem perdagangan yang melacak tren yang menggabungkan Gaussian channel dan indeks relatif kuat acak (Stochastic RSI). Gaussian channel digunakan untuk mengidentifikasi tren harga dan rentang fluktuasi, dan Stochastic RSI berfungsi sebagai filter untuk mengkonfirmasi kondisi overbought dan oversold, sehingga meningkatkan akurasi sinyal perdagangan. Strategi ini menghasilkan sinyal perdagangan dengan mengamati persimpangan harga dengan batas Gaussian channel dan posisi Stochastic RSI.

Prinsip Strategi

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

  1. Kalkulasi saluran Gaussian: menggunakan filter Gaussian untuk menghitung garis tengah, dan berdasarkan pada pengaturan kelipatan atas dan bawah jalur Gaussian. Filter Gaussian menggunakan metode smoothing indeks, yang dapat secara efektif mengurangi kebisingan harga.
  2. Stochastic RSI: Menggabungkan keuntungan dari indikator acak dan RSI, untuk mengidentifikasi kondisi overbought dan oversold melalui dua garis lurus %K dan %D.
  3. Syarat masuk:
    • Multi Head: Harga Menjatuhkan Gaussian Channel dan Stochastic RSI berada di Daerah Oversold
    • Hulu: Harga turun dari Gaussian channel dan Stochastic RSI berada di zona overbought
  4. Kondisi untuk bermain:
    • Ketika harga melewati garis tengah Gaussian
    • Atau Stochastic RSI mencapai level overbought dan oversold yang berlawanan

Keunggulan Strategis

  1. Keandalan sinyal yang tinggi: Kombinasi dengan indikator tren dan momentum, dapat memfilter sinyal palsu secara efektif
  2. Pengendalian risiko yang baik: menggunakan saluran Gauss sebagai titik tekanan pendukung yang dinamis, memberikan kerangka manajemen risiko yang baik
  3. Parameter yang dapat disesuaikan: lebar saluran dan parameter RSI dapat disesuaikan sesuai dengan karakteristik pasar yang berbeda
  4. Efisiensi komputasi tinggi: Filter Gaussian berukuran kecil, cocok untuk transaksi real-time
  5. Adaptif: dapat digunakan dalam berbagai siklus waktu dan lingkungan pasar

Risiko Strategis

  1. Risiko pasar yang bergoyang: sinyal palsu yang sering muncul di pasar horizontal
  2. Risiko keterlambatan: pengolahan indikator yang halus dapat menyebabkan keterlambatan sinyal
  3. Sensitivitas parameter: kombinasi parameter yang berbeda dapat menyebabkan hasil transaksi yang berbeda secara signifikan
  4. Ketergantungan pada kondisi pasar: Performa lebih baik di pasar tren kuat, tetapi kemungkinan retracement lebih besar di pasar reversal cepat

Arah optimasi strategi

  1. Optimasi parameter dinamis:
    • Adaptasi lebar saluran sesuai dengan fluktuasi pasar
    • Parameter Stochastic RSI disesuaikan dengan dinamika siklus pasar
  2. Mekanisme konfirmasi sinyal:
    • Menambahkan indikator konfirmasi transaksi
    • Membuat filter intensitas tren
  3. Manajemen risiko yang lebih baik:
    • Membuat stop loss dinamis
    • Menambahkan modul manajemen posisi
  4. Identifikasi lingkungan pasar:
    • Pengembangan Klasifikasi Status Pasar
    • Menyesuaikan parameter strategi dengan kondisi pasar yang berbeda

Meringkaskan

Strategi ini dengan menggabungkan Gaussian channel dan Stochastic RSI, membangun sebuah sistem perdagangan yang memiliki fitur trend tracking dan momentum. Strategi ini dirancang secara rasional, memiliki skalabilitas dan fleksibilitas yang lebih baik. Dengan arah optimasi yang disarankan, strategi dapat meningkatkan stabilitas dan profitabilitas strategi lebih lanjut.

Kode Sumber Strategi
/*backtest
start: 2025-01-21 00:00:00
end: 2025-02-20 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/

//@version=6
strategy("Gaussian Channel + Stochastic RSI Filter", overlay=true, margin_long=100, margin_short=100)

// === INPUTS ===
input_length = input.int(100, title="Gaussian Channel Length", minval=1)
input_mult = input.float(2.0, title="Gaussian Channel Multiplier", minval=0.1, step=0.1)
stoch_rsi_period = input.int(14, title="Stochastic RSI Period", minval=1)
stoch_rsi_smoothK = input.int(3, title="Stochastic RSI Smooth K", minval=1)
stoch_rsi_smoothD = input.int(3, title="Stochastic RSI Smooth D", minval=1)
stoch_rsi_overbought = input.float(80.0, title="Stochastic RSI Overbought Level", minval=0, maxval=100)
stoch_rsi_oversold = input.float(20.0, title="Stochastic RSI Oversold Level", minval=0, maxval=100)

// === GAUSSIAN CHANNEL ===
// Gaussian filter calculation with proper initialization
gauss(src, len) =>
    b = math.exp(-1.414 * 3.14159 / len)
    a0 = 1 - b
    var float f = na
    f := na(f[1]) ? src : a0 * src + b * f[1]

// Calculate Gaussian channel
gaussian_channel_mid = gauss(close, input_length)
gaussian_channel_high = gaussian_channel_mid + gaussian_channel_mid * input_mult / 100
gaussian_channel_low = gaussian_channel_mid - gaussian_channel_mid * input_mult / 100

// Plot Gaussian Channel
plot(gaussian_channel_mid, color=color.blue, linewidth=2, title="Gaussian Channel Midline")
plot(gaussian_channel_high, color=color.green, linewidth=1, title="Gaussian Channel Upper Band")
plot(gaussian_channel_low, color=color.red, linewidth=1, title="Gaussian Channel Lower Band")

// === STOCHASTIC RSI ===
k = ta.sma(ta.stoch(close, high, low, stoch_rsi_period), stoch_rsi_smoothK)
d = ta.sma(k, stoch_rsi_smoothD)
is_oversold = k < stoch_rsi_oversold and d < stoch_rsi_oversold
is_overbought = k > stoch_rsi_overbought and d > stoch_rsi_overbought

// Plot Stochastic RSI
hline(stoch_rsi_overbought, "Overbought", color=color.red, linestyle=hline.style_dotted)
hline(stoch_rsi_oversold, "Oversold", color=color.green, linestyle=hline.style_dotted)
plot(k, color=color.blue, title="Stochastic RSI %K")
plot(d, color=color.orange, title="Stochastic RSI %D")

// === ENTRY AND EXIT LOGIC ===
// Long entry: Price crosses above Gaussian Channel lower band and Stochastic RSI is oversold
long_condition = ta.crossover(close, gaussian_channel_low) and is_oversold

// Short entry: Price crosses below Gaussian Channel upper band and Stochastic RSI is overbought
short_condition = ta.crossunder(close, gaussian_channel_high) and is_overbought

// Exit logic
long_exit = ta.crossunder(close, gaussian_channel_mid) or is_overbought
short_exit = ta.crossover(close, gaussian_channel_mid) or is_oversold

// Execute trades
if (long_condition)
    strategy.entry("Long", strategy.long)

if (short_condition)
    strategy.entry("Short", strategy.short)

if (long_exit)
    strategy.close("Long")

if (short_exit)
    strategy.close("Short")

// === SETTINGS ===
// Backtest date range
start_date = timestamp(2023, 1, 1, 0, 0)
end_date = timestamp(2069, 1, 1, 0, 0)
if (time < start_date or time > end_date)
    strategy.close_all()