Strategi penetrasi naik turun harga dinamis VWMA selama jam perdagangan

VWMA ATR 交易时段 动态支撑阻力 价格穿透 交易信号
Tanggal Pembuatan: 2025-02-28 10:22:57 Akhirnya memodifikasi: 2025-02-28 10:22:57
menyalin: 0 Jumlah klik: 441
2
fokus pada
319
Pengikut

Strategi penetrasi naik turun harga dinamis VWMA selama jam perdagangan Strategi penetrasi naik turun harga dinamis VWMA selama jam perdagangan

Ringkasan

Strategi penetrasi harga VWMA yang bergerak ke atas dan ke bawah adalah sistem perdagangan kuantitatif yang didasarkan pada rata-rata bergerak berimbang dengan volume transaksi (VWMA) pada waktu perdagangan dalam sehari. Strategi ini sangat cocok untuk jangka waktu 1 menit, menghasilkan sinyal jual beli dengan memantau hubungan antara harga dan VWMA yang disetel ulang setiap hari perdagangan. Logika inti dari strategi ini adalah untuk memicu sinyal perdagangan ketika harga benar-benar menembus VWMA.

Prinsip Strategi

Prinsip inti dari strategi ini adalah menggunakan VWMA yang dihitung ulang setiap hari perdagangan sebagai garis referensi dinamis untuk mengidentifikasi peluang perdagangan potensial melalui hubungan posisi harga dengan garis referensi tersebut. Prinsip kerja strategi secara rinci adalah sebagai berikut:

  1. Perhitungan VWMA pada saat transaksiStrategi: Menggunakan indikator VWMA dengan panjang 55, tetapi berbeda dengan VWMA tradisional, indikator ini dihitung ulang pada awal setiap hari perdagangan untuk memastikan bahwa VWMA lebih akurat mencerminkan sentimen pasar hari itu.

  2. Mekanisme pembuatan sinyal

    • Sinyal beli: dipicu ketika harga minimum dari grafik pivot benar-benar lebih tinggi dari VWMA dan pivot sebelumnya tidak memenuhi kondisi ini
    • SELL SIGNAL: Triggered when the highest price of the chart is completely below the VWMA and the previous chart does not meet this condition
  3. Logika kontrol transaksiStrategi: Menerapkan mekanisme kontrol perdagangan yang cerdas untuk mencegah masuknya sinyal yang sama berulang kali, yaitu sinyal yang dibeli harus ada sinyal yang dijual untuk dibeli lagi, dan sebaliknya.

  4. Penutupan otomatisStrategi: Menghilangkan semua pemegang posisi secara otomatis setiap hari pada pukul 15:29 (waktu India) untuk memastikan tidak ada pemegang posisi overnight, dan menghindari risiko overnight.

  5. Manajemen multiposisiStrategi ini mendukung penambahan posisi piramida hingga 10 tingkat, dan pengelolaan dana menggunakan 10% dari ekuitas akun untuk mengendalikan posisi.

Keunggulan Strategis

Setelah menganalisis kode secara mendalam, strategi ini menunjukkan keuntungan yang signifikan:

  1. Adaptasi waktuDengan melakukan perhitungan VWMA pada setiap hari perdagangan, strategi dapat lebih baik disesuaikan dengan kondisi pasar harian tanpa terlalu dipengaruhi oleh data historis.

  2. Sinyal masuk yang jelasStrategi ini memerlukan harga untuk menembus seluruh VWMA sebelum memicu sinyal, mengurangi kesalahan penilaian dalam kasus penembusan palsu dan pergerakan.

  3. Kontrol arahDengan logika kontrol perdagangan, strategi ini menghindari masuk berturut-turut di arah yang sama, dan mengharuskan perubahan arah untuk masuk kembali, yang secara efektif mengurangi risiko perdagangan yang sering terjadi.

  4. Pengendalian Risiko: Sistem posisi otomatis dengan waktu tetap setiap hari efektif menghindari risiko malam hari, cocok untuk pedagang garis pendek di siang hari.

  5. Potensi Rasio Kemenangan TinggiMenurut deskripsi strategi, sinyal-sinyal jual, khususnya, berkinerja sangat baik, dengan tingkat kemenangan lebih dari 65%, memberikan peluang sukses yang lebih tinggi bagi para pedagang.

  6. Manajemen posisi yang fleksibel: mendukung strategi kenaikan posisi piramida, yang dapat meningkatkan posisi dan memaksimalkan potensi keuntungan jika tren berlanjut.

Risiko Strategis

Meskipun ada banyak keuntungan dari strategi ini, ada risiko potensial:

  1. Keterbatasan waktuStrategi ini secara eksplisit menyatakan bahwa 1 menit adalah frame waktu yang paling tepat, dan mungkin tidak bekerja dengan baik pada frame waktu lainnya, yang membatasi skenario aplikasi dari strategi tersebut.

  2. Sinyal pembelian relatif lemahDeskripsi strategi menyebutkan bahwa sinyal beli memerlukan pengaturan stop loss dan stop loss yang tetap, menyiratkan bahwa sinyal beli tidak lebih dapat diandalkan daripada sinyal jual, yang dapat menyebabkan keterbatasan profitabilitas operasi beli.

  3. Kondisi pasar tergantungVWMA sebagai indikator utama dapat menghasilkan banyak sinyal palsu di pasar yang bergoyang horizontal, dan strategi dapat bekerja lebih baik di pasar yang sedang tren kuat.

  4. Resiko waktu yang tetapJika Anda tetap berada di posisi imbang pada 15:29, Anda mungkin akan keluar lebih awal dalam kondisi yang menguntungkan dan kehilangan beberapa peluang untuk mendapatkan keuntungan.

  5. Parameter SensitivitasPanjang VWMA: 55 adalah parameter tetap, yang mungkin memerlukan pengaturan parameter yang berbeda dalam lingkungan pasar yang berbeda, dan parameter tetap mungkin tidak sesuai dengan semua kondisi pasar.

Metode untuk mengurangi risiko:

  • Untuk masalah sinyal beli yang relatif lemah, disarankan untuk menerapkan pengaturan stop loss dan target profit yang ketat.
  • Pertimbangkan untuk menambahkan kondisi penyaringan lingkungan pasar, dan gunakan strategi hanya dalam lingkungan pasar yang sesuai
  • Mengembangkan mekanisme penyesuaian parameter adaptif sehingga panjang VWMA dapat disesuaikan secara otomatis sesuai dengan perubahan pasar

Arah optimasi strategi

Berdasarkan analisis kode, strategi ini dapat dioptimalkan dalam beberapa arah:

  1. Meningkatkan filter lingkungan pasarIntroduksi indikator volatilitas atau intensitas tren sebagai kondisi penyaringan, menghasilkan sinyal hanya dalam lingkungan pasar yang sesuai, misalnya dapat menilai apakah pasar saat ini sesuai dengan strategi melalui indikator ATR atau ADX.

  2. Optimalkan parameter VWMA: Mampu menyesuaikan panjang VWMA, menyesuaikan parameter berdasarkan dinamika pasar yang berfluktuasi, sehingga strategi lebih cocok untuk berbagai kondisi pasar. Hal ini dapat dicapai dengan menghubungkan panjang VWMA dengan tingkat fluktuasi pasar.

  3. Penguatan mekanisme konfirmasi sinyal: Memperkenalkan indikator teknis tambahan atau pola harga sebagai syarat konfirmasi, meningkatkan kualitas sinyal. Misalnya, dapat digabungkan dengan indikator seperti RSI, MACD untuk konfirmasi sinyal.

  4. Meningkatkan strategi penutupanSelain penutupan jangka waktu tetap, penambahan aturan penutupan dinamis berdasarkan kondisi pasar, seperti penarikan keuntungan, pencapaian target, atau pembalikan indikator teknis.

  5. Pemrosesan sinyal jual beli diferensial: Mengembangkan strategi manajemen yang ditargetkan untuk karakteristik kinerja yang berbeda dari sinyal beli dan jual, seperti manajemen posisi yang lebih konservatif dan strategi stop loss yang lebih ketat untuk sinyal beli.

  6. Pengelolaan dana yang optimalMembuat mekanisme pengelolaan dana yang lebih fleksibel, menyesuaikan proporsi dana untuk setiap transaksi sesuai dengan kekuatan sinyal, volatilitas pasar, dan dinamika kinerja historis.

Tujuan dari pengoptimalan ini adalah untuk meningkatkan stabilitas dan adaptasi strategi, sambil mempertahankan karakteristik tingkat keberhasilan yang tinggi.

Meringkaskan

Strategi penetrasi harga VWMA yang dinamis di atas dan di bawah pada saat perdagangan adalah sistem perdagangan harian yang dirancang dengan baik untuk menghasilkan sinyal perdagangan dengan menggunakan VWMA yang ditempatkan ulang setiap hari sebagai garis referensi yang dinamis, dikombinasikan dengan kondisi harga yang benar-benar menerobos garis referensi tersebut. Strategi ini sangat cocok untuk kerangka waktu 1 menit, dan sinyal penjualannya sangat bagus, dengan tingkat kemenangan lebih dari 65%.

Keuntungan utama dari strategi adalah kemampuan untuk beradaptasi dengan kondisi pasar saat ini, persyaratan masuk yang jelas, dan mekanisme pengendalian risiko yang efektif. Namun, strategi juga memiliki risiko potensial seperti keterbatasan jangka waktu, sinyal pembelian yang relatif lemah, dan ketergantungan pada kondisi pasar.

Strategi ini memiliki potensi untuk meningkatkan stabilitas dan profitabilitas lebih lanjut dengan menambahkan filter lingkungan pasar, menerapkan parameter adaptasi, meningkatkan mekanisme konfirmasi sinyal, dan meningkatkan strategi posisi kosong. Secara keseluruhan, ini adalah strategi perdagangan yang terstruktur dengan jelas dan logis, sangat cocok untuk pedagang intraday yang mencari keuntungan tinggi dan mengendalikan risiko.

Bagi pedagang yang ingin menerapkan strategi ini, disarankan untuk melakukan pengujian penuh di lingkungan simulasi terlebih dahulu, dengan perhatian khusus pada kinerja sinyal beli, dan menyesuaikan pengaturan parameter dan aturan pengelolaan dana sesuai dengan toleransi risiko dan tujuan perdagangan mereka.

Kode Sumber Strategi
/*backtest
start: 2024-02-29 00:00:00
end: 2025-02-26 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/

//@version=5
strategy("SVWMA Lx", overlay=true, initial_capital=100000, 
     default_qty_type=strategy.percent_of_equity, default_qty_value=10, pyramiding=10, calc_on_every_tick=true)

//──────────────────────────────
// Session VWMA Inputs
//──────────────────────────────
vwmaLen   = input.int(55, title="VWMA Length", inline="VWMA", group="Session VWMA")
vwmaColor = input.color(color.orange, title="VWMA Color", inline="VWMA", group="Session VWMA", tooltip="VWMA resets at the start of each session (at the opening of the day).")

//──────────────────────────────
// Session VWMA Calculation Function
//──────────────────────────────
day_vwma(_start, s, l) =>
    bs_nd = ta.barssince(_start)
    v_len = math.max(1, bs_nd < l ? bs_nd : l)
    ta.vwma(s, v_len)

//──────────────────────────────
// Determine Session Start
//──────────────────────────────
newSession = ta.change(time("D")) != 0

//──────────────────────────────
// Compute Session VWMA
//──────────────────────────────
vwmaValue = day_vwma(newSession, close, vwmaLen)
plot(vwmaValue, color=vwmaColor, title="Session VWMA")

//──────────────────────────────
// Define Signal Conditions (only on transition)
//──────────────────────────────
bullCond = low > vwmaValue      // Bullish: candle low above VWMA
bearCond = high < vwmaValue     // Bearish: candle high below VWMA

// Trigger signal only on the bar where the condition first becomes true
bullSignal = bullCond and not bullCond[1]
bearSignal = bearCond and not bearCond[1]

//──────────────────────────────
// **Exit Condition at 15:29 IST**
//──────────────────────────────
sessionEnd = hour == 15 and minute == 29

// Exit all positions at 15:29 IST
if sessionEnd
    strategy.close_all(comment="Closing all positions at session end")

//──────────────────────────────
// **Trade Control Logic** (Prevents consecutive same-side signals)
//──────────────────────────────
var bool lastTradeWasBuy = false  // Track last trade direction **Reset Direction At Session End**
var bool lastTradeWasSell = false // Track last trade direction **Reset Direction At Session End**
// Reset at new session
if newSession
    lastTradeWasBuy := true
    lastTradeWasSell := true

//──────────────────────────────
// **Position Management: Entry & Labels**
//──────────────────────────────
if bullSignal and not lastTradeWasBuy  //
    if strategy.position_size < 0
        strategy.close("Short", comment="Exit Short on Bull Signal")
        strategy.entry("Long", strategy.long, comment="Enter Long: Buy Call & Sell Put at ATM")
    else
        strategy.entry("Long", strategy.long, comment="Add Long: Buy Call & Sell Put at ATM")

    // Add BUY Label above entry candle
    label.new(x=bar_index, y=low - ta.atr(5) * 0.5, text="BUY", color=color.green, textcolor=color.white, size=size.small,  style=label.style_label_up, xloc=xloc.bar_index)

    lastTradeWasBuy := true  // Mark that the last trade was a Buy

if bearSignal and lastTradeWasBuy  //
    if strategy.position_size < 0
        strategy.close("Long", comment="Exit Long on Bear Signal")
        strategy.entry("Short", strategy.short, comment="Enter Short: Buy Put & Sell Call at ATM")
    else
        strategy.entry("Short", strategy.short, comment="Add Short: Buy Put & Sell Call at ATM")

    // Add SELL Label below candle 
    label.new(x=bar_index, y=high + ta.atr(5) * 0.5,  text="SELL", color=color.red, textcolor=color.white, size=size.small, style=label.style_label_down, xloc=xloc.bar_index)

    lastTradeWasBuy := false  // Mark that the last trade was a Sell

//──────────────────────────────
// **Updated Alert Conditions**
//──────────────────────────────
alertcondition(bullSignal and not lastTradeWasBuy, 
     title="Long Entry Alert", 
     message="Bullish signal: BUY CALL & SELL PUT at ATM. Entry allowed.")

alertcondition(bearSignal and lastTradeWasBuy, 
     title="Short Entry Alert", 
     message="Bearish signal: BUY PUT & SELL CALL at ATM. Entry allowed.")