
Strategi Perdagangan Swing Berasaskan Momentum, Oscillation dan Moving Average Crossover adalah strategi yang menggunakan penyambungan indikator momentum, indikator osilasi dan purata bergerak untuk memberi isyarat membeli dan menjual. Ia boleh digunakan untuk perdagangan dalam dan dalam pasaran komoditi, forex dan lain-lain.
Strategi ini menggunakan purata bergerak, RSI, MACD, dan BRI untuk mengenal pasti isyarat beli dan jual. Logiknya ialah:
Apabila purata bergerak jangka pendek memakai purata bergerak jangka panjang dan RSI lebih besar daripada 50, lakukan lebih banyak; apabila purata bergerak jangka pendek memakai purata bergerak jangka panjang di bawah dan RSI kurang daripada 50, lakukan kosong.
Kombinasi seperti ini boleh menggunakan persilangan emas dan persilangan mati untuk menilai trend, sambil menambah risiko RSI untuk mengelakkan pembalikan trend. Peranan MACD adalah untuk menentukan titik jual beli, manakala Brines menetapkan titik hentian.
Kelebihan utama strategi ini adalah bahawa kombinasi indikator yang tepat dapat memanfaatkan saling melengkapi antara indikator trend dan indikator guncangan. Secara khusus:
Dengan kombinasi ini, kelebihan setiap indikator dapat dimanfaatkan sepenuhnya dan saling melengkapi.
Risiko utama strategi ini ialah:
Untuk mengawal risiko ini, ia boleh diuruskan dengan cara seperti parameter pengoptimuman, menetapkan halangan berhenti, dan mengawal kedudukan kedudukan dengan munasabah.
Strategi ini boleh dioptimumkan dalam beberapa aspek:
Strategi perdagangan lintas rata-rata pergerakan pergerakan menggunakan indikator trend dan indikator goyah untuk mengenal pasti isyarat jual beli yang saling melengkapi. Dalam keadaan pengoptimuman parameter dan pengurusan risiko, anda boleh mendapatkan hasil yang baik. Strategi ini dapat mengoptimumkan parameter indikator, logik henti rugi dan sebagainya, sehingga dapat memperoleh prestasi yang lebih baik.
//@version=5
strategy("Swing Trading Strategy", overlay=true)
// Input for moving averages
shortMA = input(20, title="Short-term MA")
longMA = input(50, title="Long-term MA")
// Input for RSI
rsiLength = input(14, title="RSI Length")
// Input for MACD
macdShort = input(12, title="MACD Short")
macdLong = input(26, title="MACD Long")
macdSignal = input(9, title="MACD Signal")
// Input for Bollinger Bands
bbLength = input(20, title="Bollinger Bands Length")
bbMultiplier = input(2, title="Bollinger Bands Multiplier")
// Calculate moving averages
shortTermMA = ta.sma(close, shortMA)
longTermMA = ta.sma(close, longMA)
// Calculate RSI
rsiValue = ta.rsi(close, rsiLength)
// Calculate MACD
[macdLine, signalLine, _] = ta.macd(close, macdShort, macdLong, macdSignal)
// Calculate Bollinger Bands
basis = ta.sma(close, bbLength)
upperBand = basis + bbMultiplier * ta.stdev(close, bbLength)
lowerBand = basis - bbMultiplier * ta.stdev(close, bbLength)
// Plot moving averages
plot(shortTermMA, color=color.blue, title="Short-term MA")
plot(longTermMA, color=color.red, title="Long-term MA")
// Plot RSI
hline(50, "RSI 50", color=color.gray)
// Plot MACD
plot(macdLine - signalLine, color=color.green, title="MACD Histogram")
// Plot Bollinger Bands
plot(upperBand, color=color.orange, title="Upper Bollinger Band")
plot(lowerBand, color=color.orange, title="Lower Bollinger Band")
// Strategy conditions
longCondition = ta.crossover(shortTermMA, longTermMA) and rsiValue > 50
shortCondition = ta.crossunder(shortTermMA, longTermMA) and rsiValue < 50
// Execute trades
strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)
// Plot trade signals on the chart
plotshape(series=longCondition, title="Long Signal", color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=shortCondition, title="Short Signal", color=color.red, style=shape.triangledown, size=size.small)