Strategi perdagangan kuantitatif jangka pendek berdasarkan persilangan rata-rata pergerakan ganda, RSI dan indikator stokastik

SMA RSI ATR
Tanggal Pembuatan: 2024-06-17 15:35:40 Akhirnya memodifikasi: 2024-06-17 15:35:40
menyalin: 1 Jumlah klik: 617
1
fokus pada
1617
Pengikut

Strategi perdagangan kuantitatif jangka pendek berdasarkan persilangan rata-rata pergerakan ganda, RSI dan indikator stokastik

Ringkasan

Strategi ini menggabungkan crossover dua rata-rata, RSI dan indikator acak, mencari peluang perdagangan yang tinggi dalam perdagangan garis pendek melalui konfirmasi bersama dari beberapa indikator teknis. Strategi ini menggunakan crossover dua rata-rata bergerak pada tanggal 20 dan 50 sebagai sinyal perdagangan utama, sementara menggabungkan RSI dan indikator acak sebagai penilaian tambahan, untuk melakukan konfirmasi kedua pada sinyal perdagangan. Selain itu, strategi ini juga menggunakan ATR sebagai dasar stop loss dan stop loss, mengelola posisi dengan risiko tetap dibandingkan dengan keuntungan, berusaha untuk mendapatkan keuntungan yang stabil sambil mengendalikan risiko.

Prinsip Strategi

  1. Perhitungan dua rata-rata bergerak pada 20 dan 50 hari, menghasilkan sinyal plus ketika rata-rata jangka pendek melewati rata-rata jangka panjang; sebaliknya, menghasilkan sinyal minus.
  2. Memperkenalkan indikator RSI sebagai penilaian tambahan, hanya mempertimbangkan posisi ketika indikator RSI belum mencapai batas overbought atau oversold.
  3. Memperkenalkan indikator acak sebagai penilaian tambahan, hanya mempertimbangkan untuk berposisi ketika indikator acak K tidak mencapai batas overbought atau oversold.
  4. Menggunakan ATR untuk menghitung posisi stop loss dan stop loss, berdasarkan 1: 2 risiko / keuntungan dari harga stop loss dan stop loss yang ditetapkan.
  5. Ketika melakukan over, posisi stop loss adalah harga terendah dikurangi ATR, posisi stop loss adalah harga tertinggi ditambah 2 kali ATR; ketika melakukan short, posisi stop loss adalah harga tertinggi ditambah ATR, posisi stop loss adalah harga terendah dikurangi 2 kali ATR.

Keunggulan Strategis

  1. Binary Equilibrium Crossover adalah indikator trend yang mudah digunakan, yang dikombinasikan dengan RSI dan indikator acak yang dapat secara efektif memfilter sinyal palsu.
  2. RSI dan indikator acak dapat membantu menentukan apakah pasar berada dalam kondisi overbought atau oversold, dan menghindari masuk dalam situasi ekstrem.
  3. Manajemen posisi dengan rasio risiko-penghasilan tetap, dapat memperoleh keuntungan yang relatif stabil dengan asumsi pengendalian risiko keseluruhan.
  4. Parameter dapat disesuaikan untuk lingkungan pasar dan gaya perdagangan yang berbeda.

Risiko Strategis

  1. Strategi tren cenderung menghasilkan lebih banyak sinyal palsu di pasar yang bergoyang, yang menyebabkan perdagangan yang lebih sering dan kehilangan dana.
  2. Stop loss dengan rasio tetap dapat menyebabkan kerugian tunggal yang terlalu besar dan melemahkan kurva modal.
  3. Kurangnya pertimbangan dalam pengelolaan posisi dan pengelolaan dana membuat sulit untuk menanggapi situasi ekstrem.

Arah optimasi strategi

  1. Masukkan lebih banyak indikator teknis yang efektif untuk meningkatkan akurasi dan keandalan sinyal.
  2. Mengoptimalkan pengaturan stop loss dengan cara yang lebih dinamis dan cerdas untuk meningkatkan tingkat keuntungan strategi.
  3. Dalam hal manajemen posisi, dapat digabungkan dengan indikator volatilitas seperti ATR, untuk melakukan penyesuaian posisi secara dinamis.
  4. Dalam pengelolaan dana, metode seperti penganggaran risiko, rumus Kelly, dan lain-lain dapat digunakan untuk meningkatkan efisiensi dana.

Meringkaskan

Strategi ini adalah strategi perdagangan short-line yang didasarkan pada indikator biner, RSI, dan acak, dengan pengakuan bersama dari beberapa indikator teknis, untuk mengendalikan risiko perdagangan sambil menangkap peluang tren. Strategi ini memiliki logika yang jelas, parameter yang mudah dioptimalkan, dan cocok untuk digunakan oleh investor yang melakukan perdagangan short-line. Namun, strategi ini juga memiliki beberapa kelemahan, seperti kemampuan untuk menangkap tren yang terbatas, kurangnya manajemen posisi dan modal yang dinamis, dll.

Kode Sumber Strategi
/*backtest
start: 2024-05-17 00:00:00
end: 2024-06-16 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Cruce de Medias con Filtros de RSI y Estocástico", overlay=true)

// Definir parámetros de las medias móviles
fast_length = input(20, title="Periodo de Media Rápida")
slow_length = input(50, title="Periodo de Media Lenta")

// Calcular medias móviles
fast_ma = ta.sma(close, fast_length)
slow_ma = ta.sma(close, slow_length)

// Añadir filtro RSI
rsi_length = input(7, title="Periodo del RSI")
rsi = ta.rsi(close, rsi_length)
rsi_overbought = input(70, title="RSI Sobrecomprado")
rsi_oversold = input(30, title="RSI Sobrevendido")

// Añadir filtro Estocástico
k_period = input(7, title="K Periodo del Estocástico")
d_period = input(3, title="D Periodo del Estocástico")
smooth_k = input(3, title="Suavización del Estocástico")
stoch_k = ta.sma(ta.stoch(close, high, low, k_period), smooth_k)
stoch_d = ta.sma(stoch_k, d_period)
stoch_overbought = input(80, title="Estocástico Sobrecomprado")
stoch_oversold = input(20, title="Estocástico Sobrevendido")

// Definir niveles de stop-loss y take-profit con ratio 2:1
risk = input(1, title="Riesgo en ATR")
reward_ratio = input(2, title="Ratio Riesgo/Beneficio")
atr_length = input(14, title="Periodo del ATR")
atr = ta.atr(atr_length)
stop_loss = risk * atr
take_profit = reward_ratio * stop_loss

// Señal de compra
long_condition = ta.crossover(fast_ma, slow_ma) and rsi < rsi_overbought and stoch_k < stoch_overbought
if (long_condition)
    strategy.entry("Compra", strategy.long)

// Señal de venta
short_condition = ta.crossunder(fast_ma, slow_ma) and rsi > rsi_oversold and stoch_k > stoch_oversold
if (short_condition)
    strategy.entry("Venta", strategy.short)

// Configurar Stop-Loss y Take-Profit para posiciones largas
if (strategy.position_size > 0)
    strategy.exit("Take Profit/Stop Loss", from_entry="Compra", stop=low - stop_loss, limit=high + take_profit)

// Configurar Stop-Loss y Take-Profit para posiciones cortas
if (strategy.position_size < 0)
    strategy.exit("Take Profit/Stop Loss", from_entry="Venta", stop=high + stop_loss, limit=low - take_profit)

// Plotear las medias móviles en el gráfico
plot(fast_ma, title="Media Rápida (50)", color=color.blue)
plot(slow_ma, title="Media Lenta (200)", color=color.red)

// Plotear RSI y Estocástico en subgráficos
hline(rsi_overbought, "RSI Sobrecomprado", color=color.red)
hline(rsi_oversold, "RSI Sobrevendido", color=color.green)
plot(rsi, title="RSI", color=color.orange, linewidth=2)
hline(stoch_overbought, "Estocástico Sobrecomprado", color=color.red)
hline(stoch_oversold, "Estocástico Sobrevendido", color=color.green)
plot(stoch_k, title="Estocástico K", color=color.purple, linewidth=2)
plot(stoch_d, title="Estocástico D", color=color.purple, linewidth=1, style=plot.style_stepline)