Strategi VWAP breakout tracking adalah strategi trend-following yang menggunakan indikator VWAP untuk mengidentifikasi arah tren. Ini mendeteksi price breakout di seluruh VWAP berdasarkan harga penutupan 5 bar terakhir. Ketika 3 bar berturut-turut mematahkan VWAP ke arah yang sama, harga tertinggi/terendah dari bar ke-3 dicatat. Sinyal perdagangan kemudian dihasilkan ketika harga menembus level harga tertinggi/terendah yang tercatat.
Keuntungan utama dari strategi ini adalah respon cepat untuk menangkap peluang breakout untuk perdagangan momentum jangka pendek. Namun, ada juga risiko akumulasi posisi yang terlalu besar. Ini dapat dioptimalkan dengan menyesuaikan parameter ukuran posisi.
Indikator inti yang digunakan dalam strategi ini adalah VWAP. VWAP adalah singkatan dari Volume Weighted Average Price, yang merupakan garis harga rata-rata yang ditimbang berdasarkan volume.
Strategi ini menghitung harga penutupan 5 bar terbaru dan indikator VWAP secara real time.
Sinyal perdagangan dihasilkan berdasarkan harga tertinggi / terendah baru yang diciptakan oleh price breakout.
Jadi ide utamanya adalah untuk mengidentifikasi arah harga breakout, dan perdagangan harga tertinggi baru / terendah yang dihasilkan dari breakout.
Ukuran posisi default ditetapkan pada 100% dari ekuitas. Ini mewakili posisi penuh pada setiap perdagangan. Mengingat sifat jangka pendek dari strategi ini, ukuran posisi dapat dikurangi untuk mengendalikan risiko.
Aturan keluar adalah crossunder/crossover VWAP. VWAP berfungsi sebagai stop loss trailing untuk menghindari kerugian kabur.
Keuntungan terbesar dari strategi VWAP Breakout Tracking adalah respon cepat untuk menangkap momentum harga jangka pendek dan peluang trend.
Strategi ini sangat cocok untuk perdagangan jangka pendek frekuensi tinggi, yang memungkinkan penguncian keuntungan yang cepat.
Meskipun strategi ini memiliki kemampuan pelacakan yang efisien, masih ada risiko yang perlu dipertimbangkan:
Optimalisasi berikut dapat membantu mengurangi risiko tersebut:
Sebagai strategi pelacakan jangka pendek, optimasi lebih lanjut dapat dilakukan dari bidang-bidang berikut:
Integrasi multi-indikator: Menggabungkan indikator volatilitas dan momentum lainnya untuk menetapkan aturan filter yang lebih ketat dan meningkatkan akurasi
Dimensi posisi dinamis: Sesuaikan ukuran posisi secara dinamis berdasarkan perubahan kondisi pasar. Kurangi ketika volatilitas meningkat dan meningkat selama tren yang kuat.
Perhentian adaptif: Upgrade VWAP stop tetap ke mekanisme adaptif trailing stop berdasarkan ATR dan sinyal price action lainnya.
Manajemen Risiko: Menetapkan lebih banyak kendala metrik risiko seperti periode pemegang maksimum, batas laba / rugi per hari, batas penarikan dll untuk mengendalikan risiko.
Pembelajaran mesin: Mengumpulkan data perdagangan historis dan mengadopsi model pembelajaran mesin untuk menemukan parameter strategi optimal untuk stabilitas yang lebih tinggi.
Secara keseluruhan, strategi pelacakan breakout VWAP adalah sistem perdagangan frekuensi tinggi yang sangat praktis. Ini merespon dengan cepat pada peluang breakout jangka pendek dan melacak harga menggunakan posisi penuh untuk scalping cepat.
Dengan optimasi lebih lanjut seperti penyaringan multi-indikator, ukuran posisi dinamis, berhenti adaptif dan pembelajaran mesin, strategi ini dapat mencapai efisiensi dan stabilitas yang lebih baik.
/*backtest start: 2023-12-12 00:00:00 end: 2023-12-19 00:00:00 period: 5m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy(title="VWAP Push", initial_capital = 100000, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, currency = 'USD', overlay=true) //VWAP vwap = ta.vwap(close) plot(vwap, color=color.black, title="vwap") //Last 5 Closes closeBarPrevious5 = close[5] closeBarPrevious4 = close[4] closeBarPrevious3 = close[3] closeBarPrevious2 = close[2] closeBarPrevious1 = close[1] closeBarCurrent = close //is_1530 = (hour == 15) and (minute == 30) is_push_up = (closeBarCurrent > closeBarPrevious1) and (closeBarPrevious1 > closeBarPrevious2) and (closeBarPrevious2 > closeBarPrevious3) and (closeBarPrevious4 < vwap) and (closeBarPrevious3 > vwap) is_push_down = (closeBarCurrent < closeBarPrevious1) and (closeBarPrevious1 < closeBarPrevious2) and (closeBarPrevious2 < closeBarPrevious3) and (closeBarPrevious4 > vwap) and (closeBarPrevious3 < vwap) var float hi = na var float lo = na hi := is_push_up ? high : hi lo := is_push_down and (close < vwap) ? low : lo plot(hi, "High", color.green, 1, plot.style_circles) plot(lo, "Low", color.red, 1, plot.style_circles) // Conditions longCondition = ta.crossover(close,hi) exitLong = ta.crossunder(close,vwap) shortCondition = ta.crossunder(close,lo) and (close < vwap) exitShort = ta.crossover(close,vwap) // Entries Exits if (longCondition) strategy.entry("Long", strategy.long) if (exitLong) strategy.close("Long") if (shortCondition) strategy.entry("Sell", strategy.short) if (exitShort) strategy.close("Sell")