Ramalan mata tinggi dan rendah automatik dan strategi perdagangan


Tarikh penciptaan: 2024-03-15 17:22:36 Akhirnya diubah suai: 2024-03-15 17:22:36
Salin: 0 Bilangan klik: 653
1
fokus pada
1617
Pengikut

Ramalan mata tinggi dan rendah automatik dan strategi perdagangan

Gambaran keseluruhan

Strategi ini menggunakan indikator yang agak kuat (RSI) untuk menilai keadaan overbought dan oversold, menggabungkan penembusan pada titik tinggi dan rendah 9:15 untuk menentukan peluang masuk.

Prinsip Strategi

  1. Tentukan 9:00 hingga 9:15 sebagai tempoh untuk membentuk titik tinggi rendah.
  2. Harga tertinggi dan terendah yang direkodkan pada 9:15 adalah sesiHigh dan sesiLow.
  3. Hitung harga sasaran berbilang kepala ((sessionHigh+200)), harga sasaran kepala kosong ((sessionLow-200) dan harga hentian yang sesuai.
  4. Dapatkan harga penutupan semasa dan RSI.
  5. Syarat untuk membuka posisi berbilang mata: harga penutupan menembusi sesi tinggi dan RSI lebih besar daripada tahap overbought.
  6. Syarat untuk membuka kedudukan kosong: harga penutupan jatuh ke bawah sesi rendah dan RSI lebih kecil daripada tahap oversold.
  7. Merangka harga yang relevan dan secara automatik membuka mata wang atau mata wang kosong mengikut syarat pembukaan.

Analisis kelebihan

  1. Sederhana: Strategi ini berdasarkan pada titik tinggi dan rendah 9:15 yang jelas dan RSI, logiknya jelas, mudah difahami dan dilaksanakan.
  2. Tingkat automasi yang tinggi: Strategi ini merangkumi pengiraan harga sasaran dan harga henti rugi serta keputusan mengenai syarat untuk membuka kedudukan, yang dapat mengotomatiskan pelaksanaan perdagangan.
  3. Hentikan pada masa yang tepat: Berdasarkan harga hentikan yang ditetapkan pada titik tinggi dan rendah 9:15, titik hentikan yang jelas akan dapat mengawal risiko dengan berkesan sebaik sahaja anda membuka kedudukan.
  4. Pengesanan trend: menilai overbought dan oversold melalui indikator RSI, campur tangan pada awal trend, membantu trend.

Analisis risiko

  1. Risiko pengoptimuman parameter: parameter strategi seperti panjang RSI dan paras overbought dan oversold perlu dioptimumkan mengikut ciri-ciri pasaran, dan parameter yang berbeza mungkin membawa hasil yang berbeza.
  2. Risiko Indeks Tunggal: Strategi bergantung kepada Indeks RSI, yang mungkin gagal dalam keadaan pasaran tertentu.
  3. Risiko turun naik dalam pasaran: turun naik harga selepas 9:15 boleh mencetuskan hentian kerugian dan kehilangan trend.
  4. Kekurangan pengurusan kedudukan: Strategi kekurangan kawalan dan pengurusan dana terhadap kedudukan, terlalu kerap membuka kedudukan mungkin membawa risiko tambahan.

Arah pengoptimuman

  1. Hentian dinamik: menyesuaikan kedudukan hentian secara dinamik mengikut ketinggian turun naik harga atau ATR, dan mengesan perubahan harga.
  2. Gabungan dengan penunjuk lain: pengenalan penunjuk lain seperti MACD, sistem rata-rata dan lain-lain untuk menilai trend dan meningkatkan ketepatan pembukaan kedudukan.
  3. Keadaan kemasukan yang dioptimumkan: RSI harus disesuaikan dengan nilai terhad RSI untuk mengelakkan keterbatasan yang disebabkan oleh nilai terhad tetap.
  4. Memperkenalkan pengurusan kedudukan: Kawalan kedudukan berdasarkan keadaan turun naik pasaran, contohnya menggunakan kaedah seperti model risiko peratusan.

ringkaskan

Strategi ini adalah berdasarkan 9:15 tinggi rendah, menggunakan indikator RSI untuk menilai trend, mengira harga sasaran dan harga hentian secara automatik, dan secara automatik membuka kedudukan multihead atau kosong berdasarkan keadaan pembukaan kedudukan. Logik strategi mudah dan jelas, tahap automasi yang tinggi, dapat menangkap trend dengan cepat. Walau bagaimanapun, strategi ini juga mempunyai risiko dalam pengoptimuman parameter, satu indikator, pelaburan tengah, dan pengurusan kedudukan.

Kod sumber strategi
/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-29 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("9:15 AM High/Low with Automatic Forecasting", overlay=true)

// Parameters
showSignals = input(true, title="Show Signals")

// Define session time
sessionStartHour = input(9, title="Session Start Hour")
sessionStartMinute = input(0, title="Session Start Minute")
sessionEndHour = input(9, title="Session End Hour")
sessionEndMinute = input(15, title="Session End Minute")

// Calculate session high and low
var float sessionHigh = na
var float sessionLow = na
if (hour == sessionStartHour and minute == sessionStartMinute)
    sessionHigh := high
    sessionLow := low

// Update session high and low if within session time
if (hour == sessionStartHour and minute >= sessionStartMinute and minute < sessionEndMinute)
    sessionHigh := high > sessionHigh or na(sessionHigh) ? high : sessionHigh
    sessionLow := low < sessionLow or na(sessionLow) ? low : sessionLow

// Plot horizontal lines for session high and low
plot(sessionHigh, color=color.green, title="9:00 AM High", style=plot.style_stepline, linewidth=1)
plot(sessionLow, color=color.red, title="9:00 AM Low", style=plot.style_stepline, linewidth=1)

// Calculate targets and stop loss
longTarget = sessionHigh + 200
longStopLoss = sessionLow
shortTarget = sessionLow - 200
shortStopLoss = sessionHigh

// Plot targets and stop loss
plot(longTarget, color=color.blue, title="Long Target", style=plot.style_cross, linewidth=1)
plot(longStopLoss, color=color.red, title="Long Stop Loss", style=plot.style_cross, linewidth=1)
plot(shortTarget, color=color.blue, title="Short Target", style=plot.style_cross, linewidth=1)
plot(shortStopLoss, color=color.red, title="Short Stop Loss", style=plot.style_cross, linewidth=1)

// RSI
rsiLength = input(14, title="RSI Length")
overboughtLevel = input(60, title="Overbought Level")
oversoldLevel = input(40, title="Oversold Level")
rsi = ta.rsi(close, rsiLength)

// Entry conditions
longCondition = close > sessionHigh and rsi > overboughtLevel
shortCondition = close < sessionLow and rsi < oversoldLevel

// Long entry
if (showSignals and longCondition)
    strategy.entry("Long", strategy.long)

// Short entry
if (showSignals and shortCondition)
    strategy.entry("Short", strategy.short)