Strategi Harga Purata Bertimbang Volume

Penulis:ChaoZhang, Tarikh: 2023-12-29 16:31:33
Tag:

img

Ringkasan

Strategi Harga Purata Bertimbang Volume (VWAP) adalah strategi yang mengesan harga purata saham dalam masa yang ditentukan. Strategi ini menggunakan VWAP sebagai penanda aras dan mengambil kedudukan panjang atau pendek apabila harga melintasi di atas atau di bawah VWAP. Ia juga menetapkan syarat berhenti kerugian dan mengambil keuntungan untuk menguruskan perdagangan.

Logika Strategi

Strategi pertama mengira harga biasa (rata-rata harga tinggi, rendah dan dekat) dikalikan dengan jumlah, dan jumlah jumlah. Kemudian VWAP dikira dengan membahagikan jumlah produk harga-volume biasa dengan jumlah jumlah. Apabila harga melintasi VWAP, pergi panjang. Apabila harga melintasi di bawah, pergi pendek.

Syarat mengambil keuntungan untuk kedudukan panjang adalah untuk menutup apabila harga meningkat 3% di atas harga kemasukan. Syarat stop loss adalah apabila harga jatuh 1% di bawah harga kemasukan. Syarat yang sama berlaku untuk kedudukan pendek.

Analisis Kelebihan

Kelebihan utama strategi VWAP adalah:

  1. Menggunakan statistik VWAP yang diiktiraf sebagai penanda aras untuk isyarat perdagangan, menjadikan strategi lebih berkesan.

  2. Menggunakan kedua-dua isyarat vwap dan stop loss / mengambil keuntungan, mampu mendapat keuntungan daripada trend dan had kerugian.

  3. Logik yang mudah dan jelas, mudah difahami dan dilaksanakan.

Analisis Risiko

Terdapat juga beberapa risiko dengan strategi ini:

  1. VWAP tidak dapat meramalkan harga masa depan, jadi isyarat mungkin terlambat.

  2. Stop loss mungkin terlalu luas, meningkatkan potensi kerugian.

  3. Ujian semula yang lebih lama bermakna lebih banyak isyarat, prestasi sebenar mungkin berbeza.

Risiko ini boleh dikurangkan melalui penyesuaian parameter, mengoptimumkan algoritma stop loss dll.

Arahan pengoptimuman

Beberapa cara untuk mengoptimumkan strategi termasuk:

  1. Mengoptimumkan parameter VWAP untuk mencari tempoh pengiraan terbaik.

  2. Uji algoritma hentian pengesanan lain, contohnya hentian purata bergerak, SAR parabolik.

  3. Menggabungkan penunjuk lain untuk menapis isyarat VWAP, contohnya jumlah, Bollinger Bands.

Kesimpulan

Ringkasnya, strategi VWAP menggunakan kuasa ramalan statistik penting ini, dengan mengambil stop loss / keuntungan untuk mencapai jangka masa panjang jangkaan positif.


/*backtest
start: 2023-11-28 00:00:00
end: 2023-12-28 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("VWAP Strategy by Royce Mars", overlay=true)

cumulativePeriod = input(14, "Period")

var float cumulativeTypicalPriceVolume = 0.0
var float cumulativeVolume = 0.0

typicalPrice = (high + low + close) / 3
typicalPriceVolume = typicalPrice * volume
cumulativeTypicalPriceVolume := cumulativeTypicalPriceVolume + typicalPriceVolume
cumulativeVolume := cumulativeVolume + volume
vwapValue = cumulativeTypicalPriceVolume / cumulativeVolume

// Buy condition: Price crosses over VWAP
buyCondition = crossover(close, vwapValue)

// Short condition: Price crosses below VWAP
shortCondition = crossunder(close, vwapValue)

// Profit-taking condition for long positions: Sell long position when profit reaches 3%
profitTakingLongCondition = close / strategy.position_avg_price >= 1.03

// Profit-taking condition for short positions: Cover short position when profit reaches 3%
profitTakingShortCondition = close / strategy.position_avg_price <= 0.97

// Stop loss condition for long positions: Sell long position when loss reaches 1%
stopLossLongCondition = close / strategy.position_avg_price <= 0.99

// Stop loss condition for short positions: Cover short position when loss reaches 1%
stopLossShortCondition = close / strategy.position_avg_price >= 1.01

// Strategy Execution
strategy.entry("Buy", strategy.long, when=buyCondition)
strategy.close("Buy", when=shortCondition or profitTakingLongCondition or stopLossLongCondition)

strategy.entry("Short", strategy.short, when=shortCondition)
strategy.close("Short", when=buyCondition or profitTakingShortCondition or stopLossShortCondition)

// Plot VWAP on the chart
plot(vwapValue, color=color.blue, title="VWAP")


Lebih lanjut