Strategi ini adalah sistem trend following yang menggabungkan beberapa periode moving average dengan Volume Weighted Average Price (VWAP). Strategi ini mengidentifikasi arah tren melalui penyeberangan tiga Simple Moving Averages (SMA) - 9-periode, 50-periode, dan 200-periode, sambil menggunakan VWAP sebagai indikator konfirmasi kekuatan harga, menerapkan mekanisme konfirmasi sinyal perdagangan multi-dimensi. Strategi ini cocok untuk perdagangan intraday (1 grafik menit) dan perdagangan swing (1 grafik jam).
Logika inti dari strategi ini dibangun di atas beberapa elemen kunci:
Kondisi masuk yang panjang membutuhkan:
Kondisi masuk singkat membutuhkan:
Saran pengendalian risiko:
Ini adalah sistem perdagangan lengkap yang menggabungkan beberapa rata-rata pergerakan periode dan VWAP, memberikan sinyal perdagangan yang dapat diandalkan melalui beberapa mekanisme konfirmasi. Kekuatan strategi terletak pada logika yang jelas, kemudahan eksekusi, dan kemampuan kontrol risiko yang baik. Meskipun memiliki risiko tertentu yang terkait dengan keterlambatan dan sensitivitas parameter, ini dapat ditangani melalui arah optimasi yang disarankan untuk lebih meningkatkan stabilitas dan kemampuan beradaptasi. Strategi ini berfungsi sebagai kerangka dasar yang solid yang dapat disesuaikan oleh pedagang sesuai dengan gaya perdagangan dan lingkungan pasar 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")