
Strategi ini menggabungkan pergerakan pasaran dengan menggunakan MACD dan VWMA untuk menangkap pergerakan pasaran. Strategi ini menggunakan grafik MACD dan VWMA untuk menentukan isyarat masuk, dan keluar bergantung sepenuhnya pada MACD. Strategi ini direka khusus untuk pasaran derivatif yang dikuasai, menyesuaikan diri dengan keadaan perdagangan yang berbeza dengan menyesuaikan kadar dan ketepatan dengan fleksibel.
Logik teras strategi adalah berdasarkan komponen utama berikut:
Strategi meningkatkan ketepatan masuk dengan menggabungkan trend tracking ((VWMA) dan indikator momentum ((MACD) sambil menggunakan silang MACD sebagai isyarat keluar dengan tindak balas cepat untuk mengawal risiko.
Untuk mengurangkan risiko ini, disarankan untuk: 1) melakukan pengoptimuman dan pengembalian parameter yang menyeluruh; 2) menetapkan sasaran stop loss dan keuntungan yang munasabah; 3) menilai dan menyesuaikan tahap leverage secara berkala; 4) pertimbangkan untuk memperkenalkan syarat penapisan tambahan untuk mengurangkan isyarat palsu.
Arahan pengoptimuman ini bertujuan untuk meningkatkan daya serap dan kestabilan strategi, sambil mengurangkan isyarat palsu dan risiko kawalan. Dengan pengulangan dan penambahbaikan yang berterusan, strategi mempunyai potensi untuk mengekalkan prestasi yang baik dalam keadaan pasaran yang berbeza.
Strategi Perdagangan Dinamik Dinamis Beradaptasi Multi-Indikator menunjukkan potensi untuk sinergi dan penyesuaian dinamik pelbagai indikator dalam perdagangan kuantitatif. Dengan menggabungkan MACD dan VWMA dengan bijak, strategi ini dapat memberikan isyarat masuk dan keluar yang agak dipercayai sambil menangkap dinamik pasaran.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-09-24 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
leverage = input.int(1, title='Leverage', minval=1, maxval=100, step=1)
commission_value_input = input.int(3, title='Commission Value %', minval=1, maxval=100, step=1)
precision = input.int(2,title='Precision')
strategy("MACD & VWMA Equal Basis", overlay=true)
commission_value = (commission_value_input / 100) / leverage
leveragedContracts = math.max(math.round(strategy.equity * leverage / close, precision), 0)
// MACD settings
[macdLine, signalLine, histogram] = ta.macd(close, 12, 26, 9)
// VWMA settings
vwma20 = ta.vwma(close, 20)
vwma50 = ta.vwma(close, 50)
// Plot VWMA on chart
plot(vwma20, color=color.green, title="VWMA 20")
plot(vwma50, color=color.orange, title="VWMA 50")
// MACD buy/sell signals
macdLongEntrySignal = histogram > 0
macdLongExitSignal = histogram < 0
macdShortEntrySignal = histogram < 0
macdShortExitSignal = histogram > 0
// VWMA conditions for long and short positions
vwmaLongEntrySignal = vwma20 > vwma50
vwmaShortEntrySignal = vwma20 < vwma50
// Combined long entry signal: MACD buy signal with VWMA conditions
longEntry = macdLongEntrySignal and vwmaLongEntrySignal
longExit = ta.crossunder(macdLine, signalLine)
// Combined short entry signal: MACD sell signal with VWMA conditions
shortEntry = macdShortEntrySignal and vwmaShortEntrySignal
shortExit = ta.crossover(macdLine, signalLine)
// Execute long and short orders based on the conditions
if (longEntry)
strategy.entry("Long", strategy.long, qty = leveragedContracts)
if (longExit)
strategy.close("Long")
if (shortEntry)
strategy.entry("Short", strategy.short, qty = leveragedContracts)
if (shortExit)
strategy.close("Short")