Ini adalah strategi perdagangan kuantitatif canggih yang menggabungkan penunjuk Supertrend dengan analisis jumlah. Strategi ini mengenal pasti titik pembalikan trend yang berpotensi dengan memantau secara dinamik persimpangan harga dengan garis Supertrend dan tingkah laku jumlah yang tidak normal. Ia menggunakan tetapan stop-loss dan mengambil keuntungan dinamik berdasarkan Julat Benar Purata (ATR), memastikan fleksibiliti perdagangan dan kawalan risiko yang boleh dipercayai.
Logik teras strategi ini adalah berdasarkan unsur-unsur utama berikut: 1. Menggunakan penunjuk Supertrend sebagai alat penentuan trend utama, dikira berdasarkan ATR untuk penyesuaian turun naik pasaran dinamik. 2. Tetapkan jumlah purata bergerak 20 tempoh sebagai penanda aras, dengan ambang 1.5x untuk pengesanan anomali jumlah. 3. mencetuskan isyarat perdagangan apabila harga memecahkan garis Supertrend dan syarat jumlah dipenuhi. 4. Melaksanakan tetapan stop-loss dinamik (1.5x ATR) dan mengambil keuntungan (3x ATR) untuk nisbah risiko-balasan yang optimum.
Strategi ini membina sistem perdagangan yang boleh dipercayai dan dapat disesuaikan dengan menggabungkan penunjuk Supertrend dengan analisis jumlah. Kekuatannya terletak pada pengesahan isyarat berbilang dimensi dan pengurusan risiko dinamik, walaupun keadaan pasaran masih mempengaruhi prestasi strategi. Melalui pengoptimuman dan penyempurnaan yang berterusan, strategi ini mempunyai potensi untuk mengekalkan prestasi yang stabil di pelbagai persekitaran pasaran.
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-11 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Supertrend with Volume Strategy", overlay=true) // Input parameters for Supertrend atrLength = input(10, title="ATR Length") multiplier = input(3.0, title="Multiplier") // Calculate Supertrend [supertrend, direction] = ta.supertrend(multiplier, atrLength) // Plot Supertrend plot(supertrend, color=direction == 1 ? color.green : color.red, title="Supertrend") // Volume condition volumeThreshold = input(1.5, title="Volume Threshold (x Average)") avgVolume = ta.sma(volume, 20) // 20-period average volume highVolume = volume > (avgVolume * volumeThreshold) // Define entry conditions longCondition = ta.crossover(close, supertrend) and highVolume shortCondition = ta.crossunder(close, supertrend) and highVolume // Execute trades if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short) // Optional: Add stop loss and take profit stopLoss = input(1.5, title="Stop Loss (in ATRs)") takeProfit = input(3.0, title="Take Profit (in ATRs)") if (longCondition) strategy.exit("Take Profit/Stop Loss", from_entry="Long", limit=close + (takeProfit * ta.atr(atrLength)), stop=close - (stopLoss * ta.atr(atrLength))) if (shortCondition) strategy.exit("Take Profit/Stop Loss", from_entry="Short", limit=close - (takeProfit * ta.atr(atrLength)), stop=close + (stopLoss * ta.atr(atrLength)))