Sumber dimuat naik... memuat...

Strategi Perdagangan Satu Arah Penembusan Jangkauan Harian

Penulis:ChaoZhang, Tarikh: 2024-12-11 15:23:37
Tag:OHLCADXATRMARSIBB

img

Ringkasan

Ini adalah strategi perdagangan penembusan julat berdasarkan titik tinggi dan rendah hari sebelumnya. Strategi ini mencari peluang perdagangan dengan mengenal pasti penembusan harga atau kerosakan di luar titik tinggi atau rendah hari sebelumnya, melaksanakan hanya satu perdagangan setiap arah penembusan atau kerosakan. Strategi ini menggunakan tetapan keuntungan dan stop-loss 50 mata tetap dan menetapkan semula bendera perdagangan pada awal setiap hari perdagangan untuk memastikan perdagangan yang teratur. Inti strategi ini adalah untuk menangkap pergerakan penembusan harga satu arah dalam hari sambil mengawal risiko melalui pengurusan perdagangan yang ketat.

Prinsip Strategi

Logik teras strategi ini merangkumi aspek berikut:

  1. Generasi Isyarat Dagangan: Sistem menentukan arah dagangan dengan memeriksa sama ada harga penutupan semasa memecahkan tinggi atau rendah hari sebelumnya. Apabila harga ditutup di atas tinggi hari sebelumnya, sistem menghasilkan isyarat panjang; apabila harga ditutup di bawah rendah hari sebelumnya, sistem menghasilkan isyarat pendek.
  2. Kawalan Frekuensi Dagangan: Strategi ini menggunakan bendera untuk memastikan hanya satu perdagangan setiap arah setiap hari. Reka bentuk ini menghalang perdagangan berulang dalam kawasan harga yang sama dan mengurangkan kos perdagangan.
  3. Pengurusan Risiko: Setiap perdagangan mempunyai keuntungan dan stop-loss 50 mata yang tetap, menyediakan pengurusan risiko simetri yang berkesan mengawal risiko perdagangan tunggal.
  4. Mekanisme Reset Harian: Sistem menetapkan semula bendera perdagangan pada awal setiap hari perdagangan, menyediakan peluang perdagangan baru. Mekanisme ini memastikan strategi dapat menangkap peluang perdagangan baru.

Kelebihan Strategi

  1. Logik Perdagangan yang Jelas: Strategi ini berdasarkan teori harga mudah dengan peraturan perdagangan yang jelas yang mudah difahami dan dilaksanakan.
  2. Kawalan Risiko yang ketat: Mengendalikan risiko untuk setiap perdagangan dengan berkesan melalui titik keuntungan dan stop-loss tetap dan had perdagangan satu arah.
  3. Menghalang Overtrading: Mengizinkan hanya satu perdagangan setiap arah setiap hari membantu mengelakkan kerugian daripada perdagangan yang kerap di pasaran yang bergolak.
  4. Automasi Tinggi: Strategi boleh sepenuhnya automatik tanpa campur tangan manusia.
  5. Kemudahan penyesuaian yang tinggi: Strategi ini boleh digunakan untuk persekitaran pasaran yang berbeza, dengan prestasi yang sangat baik di pasaran yang sedang berkembang.

Analisis Risiko

  1. Risiko pecah palsu: Pasaran mungkin menunjukkan pecah palsu yang membawa kepada kerugian perdagangan. Pertimbangkan untuk mengesahkan dengan penunjuk teknikal lain.
  2. Risiko pasaran berbelit-belit: Pelanggaran dan kerosakan yang kerap di pasaran yang berbeza boleh menyebabkan berhenti berturut-turut.
  3. Risiko Stop-Loss Tetap: Titik stop-loss tetap mungkin tidak sesuai dengan semua keadaan pasaran dan mungkin mencetuskan terlalu awal di pasaran yang sangat tidak menentu.
  4. Risiko slippage: Semasa turun naik pasaran yang sengit, titik stop-loss sebenar mungkin menyimpang dari tahap yang dijangkakan kerana slippage.

Arahan pengoptimuman

  1. Penetapan Stop-Loss Dinamik: Sesuaikan titik mengambil keuntungan dan stop-loss secara dinamik berdasarkan turun naik pasaran (contohnya, penunjuk ATR).
  2. Tambah Penapis Trend: Masukkan penunjuk trend (seperti purata bergerak atau ADX) untuk menapis isyarat perdagangan.
  3. Mengoptimumkan Pengesahan Penembusan: Tambah pengesahan jumlah atau penunjuk teknikal lain untuk meningkatkan kebolehpercayaan penembusan.
  4. Penapisan Masa: Tambah keadaan penapisan masa untuk mengelakkan perdagangan semasa tempoh yang sangat tidak menentu.
  5. Pengoptimuman Pengurusan Posisi: Sesuaikan saiz kedudukan secara dinamik berdasarkan turun naik pasaran dan toleransi risiko akaun.

Kesimpulan

Strategi ini adalah sistem dagangan klasik berdasarkan penembusan julat harian, sesuai untuk mengesan trend pasaran satu arah melalui pengurusan perdagangan dan kawalan risiko yang ketat. Walaupun terdapat beberapa risiko yang melekat, kestabilan dan keuntungan strategi dapat ditingkatkan melalui pengoptimuman dan peningkatan yang munasabah. Kunci kejayaan terletak pada menangani risiko penembusan palsu dengan betul, menetapkan tahap keuntungan dan stop-loss yang sesuai, dan mengekalkan kebolehsesuaian strategi di seluruh keadaan pasaran yang berbeza.


/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-09 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("US 30 Daily Breakout Strategy (Single Trade Per Breakout/Breakdown, New York Time)", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, trim_orders = true)

// Set pip size for US 30 (1 pip = 1 point)
var float pip = 1.0

// Set take profit and stop loss in points (1 pip = 1 point)
take_profit_pips = 50
stop_loss_pips = 50

// Calculate the previous day's high and low (assumes chart timezone is set to New York)
prevDayHigh = request.security(syminfo.tickerid, "D", high[1])
prevDayLow = request.security(syminfo.tickerid, "D", low[1])

// Initialize flags to track if a breakout/breakdown trade has been taken
var bool breakout_traded = false
var bool breakdown_traded = false

// Reset flags at the start of a new day in New York timezone (as per chart setting)
if (ta.change(time("D")))
    breakout_traded := false
    breakdown_traded := false

// Condition for a long entry: candle closes above the previous day's high and no breakout trade has been taken
longCondition = close > prevDayHigh and strategy.opentrades == 0 and not breakout_traded

// Condition for a short entry: candle closes below the previous day's low and no breakdown trade has been taken
shortCondition = close < prevDayLow and strategy.opentrades == 0 and not breakdown_traded

// Execute long trade if the condition is met, and set the breakout flag
if (longCondition)
    strategy.entry("Long", strategy.long)
    strategy.exit("Take Profit/Stop Loss", "Long", limit=close + take_profit_pips * pip, stop=close - stop_loss_pips * pip)
    breakout_traded := true  // Set breakout flag

// Execute short trade if the condition is met, and set the breakdown flag
if (shortCondition)
    strategy.entry("Short", strategy.short)
    strategy.exit("Take Profit/Stop Loss", "Short", limit=close - take_profit_pips * pip, stop=close + stop_loss_pips * pip)
    breakdown_traded := true  // Set breakdown flag

// Plotting the previous day's high and low for visualization
plot(prevDayHigh, color=color.green, linewidth=1, title="Previous Day High")
plot(prevDayLow, color=color.red, linewidth=1, title="Previous Day Low")


Berkaitan

Lebih lanjut