Strategi ini adalah sistem berikut trend yang menggabungkan purata bergerak pelbagai tempoh dengan harga purata bertimbang volum (VWAP). Strategi ini mengenal pasti arah trend melalui persilangan tiga Purata Bergerak Sederhana (SMA) - 9 tempoh, 50 tempoh, dan 200 tempoh, sambil menggunakan VWAP sebagai penunjuk pengesahan kekuatan harga, melaksanakan mekanisme pengesahan isyarat perdagangan berbilang dimensi. Strategi ini sesuai untuk perdagangan intraday (1 carta minit) dan perdagangan ayunan (1 carta jam).
Logik teras strategi ini dibina di atas beberapa elemen utama:
Keadaan kemasukan yang panjang memerlukan:
Syarat kemasukan pendek memerlukan:
Cadangan kawalan risiko:
Ini adalah sistem perdagangan lengkap yang menggabungkan pelbagai purata bergerak tempoh dan VWAP, menyediakan isyarat perdagangan yang boleh dipercayai melalui pelbagai mekanisme pengesahan. Kekuatan strategi terletak pada logiknya yang jelas, kemudahan pelaksanaan, dan keupayaan kawalan risiko yang baik. Walaupun ia mempunyai risiko tertentu yang berkaitan dengan kelewatan dan sensitiviti parameter, ini boleh ditangani melalui arah pengoptimuman yang dicadangkan untuk meningkatkan kestabilan dan daya adaptasi. Strategi ini berfungsi sebagai rangka kerja asas yang kukuh yang boleh disesuaikan oleh peniaga mengikut gaya perdagangan dan persekitaran pasaran mereka.
/*backtest start: 2024-12-06 00:00:00 end: 2025-01-05 00:00:00 period: 2h basePeriod: 2h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("SMA Crossover Strategy with VWAP", overlay=true) // Input lengths for SMAs sma9Length = 9 sma50Length = 50 sma200Length = 200 // Calculate SMAs sma9 = ta.sma(close, sma9Length) // 9-period SMA sma50 = ta.sma(close, sma50Length) // 50-period SMA sma200 = ta.sma(close, sma200Length) // 200-period SMA // Calculate VWAP vwapValue = ta.vwap(close) // Long entry condition: SMA 9 crosses above SMA 50 and SMA 200 is less than SMA 50, and close is above VWAP longCondition = ta.crossover(sma9, sma50) and (sma200 < sma50) and (close > vwapValue) if (longCondition) strategy.entry("Long", strategy.long) // Exit condition for long: SMA 9 crosses below SMA 50 longExitCondition = ta.crossunder(sma9, sma50) if (longExitCondition) strategy.close("Long") // Short entry condition: SMA 9 crosses below SMA 50 and SMA 200 is greater than SMA 50, and close is below VWAP shortCondition = ta.crossunder(sma9, sma50) and (sma200 > sma50) and (close < vwapValue) if (shortCondition) strategy.entry("Short", strategy.short) // Exit condition for short: SMA 9 crosses above SMA 50 shortExitCondition = ta.crossover(sma9, sma50) if (shortExitCondition) strategy.close("Short") // Plotting the indicators on the chart plot(sma9, color=color.blue, title="SMA 9") plot(sma50, color=color.orange, title="SMA 50") plot(sma200, color=color.red, title="SMA 200") plot(vwapValue, color=color.green, title="VWAP")