Ini adalah strategi perdagangan reversi rata-rata berdasarkan Volume Weighted Average Price (VWAP) dan saluran standar deviasi. Strategi ini mengidentifikasi peluang perdagangan dengan mengukur deviasi harga dari VWAP, memasuki posisi kontra-tren ketika harga melanggar band deviasi standar, dan menutup posisi ketika harga kembali ke VWAP. Pendekatan ini memanfaatkan karakteristik reversi rata-rata pasar, menggabungkan analisis teknis dan prinsip statistik.
Mekanisme inti didasarkan pada perhitungan VWAP dan deviasi standar volatilitas harga untuk menetapkan rentang perdagangan.
Ini adalah strategi netral pasar berdasarkan prinsip statistik, menangkap deviasi harga dan reversi menggunakan VWAP dan saluran deviasi standar. Strategi ini memiliki karakteristik obyektif dan sistematis tetapi membutuhkan perhatian untuk pengendalian risiko dan optimasi parameter dalam aplikasi praktis. Stabilitas dan keandalan strategi dapat ditingkatkan lebih lanjut melalui penambahan filter tren dan mekanisme manajemen risiko yang ditingkatkan.
/*backtest start: 2024-12-03 00:00:00 end: 2024-12-10 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © jklonoskitrader //@version=5 strategy("ETHUSD VWAP Fade Strategy", overlay=true) // Input for standard deviation multiplier std_multiplier = input.float(2.0, title="Standard Deviation Multiplier") // Calculate cumulative VWAP cumulative_pv = ta.cum(close * volume) // Cumulative price * volume cumulative_vol = ta.cum(volume) // Cumulative volume vwap = cumulative_pv / cumulative_vol // VWAP calculation // Calculate standard deviation of the closing price length = input.int(20, title="Standard Deviation Length") std_dev = ta.stdev(close, length) upper_band = vwap + std_multiplier * std_dev lower_band = vwap - std_multiplier * std_dev // Plot VWAP and its bands plot(vwap, color=color.blue, linewidth=2, title="VWAP") plot(upper_band, color=color.red, linewidth=1, title="Upper Band") plot(lower_band, color=color.green, linewidth=1, title="Lower Band") // Strategy conditions go_long = ta.crossunder(close, lower_band) go_short = ta.crossover(close, upper_band) // Execute trades if (go_long) strategy.entry("Long", strategy.long) if (go_short) strategy.entry("Short", strategy.short) // Exit strategy if (strategy.position_size > 0 and close > vwap) strategy.close("Long") if (strategy.position_size < 0 and close < vwap) strategy.close("Short")