Artikel ini memperkenalkan strategi dagangan yang menggabungkan dua penunjuk teknikal: MACD dan Supertrend. Strategi ini menggunakan isyarat persilangan penunjuk MACD dan arah trend penunjuk Supertrend untuk menentukan titik masuk dan keluar, bertujuan untuk mendapat keuntungan dari pasaran yang sedang berkembang. Idea utama strategi ini adalah untuk pergi panjang apabila MACD melintasi di atas garis isyarat dan Supertrend hijau, dan untuk pergi pendek apabila MACD melintasi di bawah garis isyarat dan Supertrend merah. Persalinan garis isyarat MACD dan garis MACD berfungsi sebagai isyarat keluar.
Strategi ini menggunakan penunjuk MACD dan penunjuk Supertrend untuk menjana isyarat dagangan. MACD dikira dengan mengurangkan purata bergerak perlahan (default 26-period) dari purata bergerak pantas (default 12-period), dan kemudian mengira purata bergerak 9-period MACD sebagai garis isyarat. Crossover bullish berlaku apabila garis MACD melintasi di atas garis isyarat, menunjukkan isyarat panjang, sementara crossover bearish berlaku apabila garis MACD melintasi di bawah garis isyarat, menunjukkan isyarat pendek.
Artikel ini memperkenalkan strategi dagangan berdasarkan penunjuk MACD dan penunjuk Supertrend. Strategi ini berdagang di pasaran trend dengan menggunakan penghakiman trend MACD dan penapisan arah Supertrend, sambil menggunakan persilangan garis isyarat untuk keluar dari kedudukan dengan cara yang tepat pada masanya untuk mengawal penarikan. Kelebihan strategi terletak pada logiknya yang mudah dan keupayaan menangkap trend yang kuat, tetapi ia juga menghadapi risiko seperti penerapan parameter, kelewatan isyarat, dan perdagangan yang kerap. Pada masa akan datang, strategi ini boleh disempurnakan dalam aspek seperti pengoptimuman parameter, penapisan isyarat, pengurusan kedudukan, jangka masa dan pemilihan aset, untuk mengejar pulangan yang lebih stabil.
/*backtest start: 2024-05-01 00:00:00 end: 2024-05-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy(title="MACD + Supertrend Strategy", overlay=true) // MACD Calculation fastLength = 12 slowLength = 26 signalSmoothing = 9 macdSrc = close // MACD Line fastMA = ta.ema(macdSrc, fastLength) slowMA = ta.ema(macdSrc, slowLength) macdLine = fastMA - slowMA // MACD Signal Line signalMA = ta.ema(macdLine, signalSmoothing) // MACD Histogram histogram = macdLine - signalMA // Supertrend Calculation supertrendATRLength = 10 supertrendFactor = 3.0 [supertrend, _] = ta.supertrend(supertrendFactor, supertrendATRLength) // Entry and Exit Conditions longCondition = (macdLine > signalMA) and (supertrend < close) shortCondition = (signalMA > macdLine) and (supertrend > close) // Long Entry if longCondition strategy.entry("Long", strategy.long) // Long Exit (Sell) if signalMA > macdLine strategy.close("Long") // Short Entry if shortCondition strategy.entry("Short", strategy.short) // Short Exit (Cover) if macdLine > signalMA strategy.close("Short") // Close Long Position if short condition is met if shortCondition strategy.close("Long") // Close Short Position if long condition is met if longCondition strategy.close("Short") // Plotting plotshape(series=longCondition, title="Long Entry Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="Long") plotshape(series=shortCondition, title="Short Entry Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="Short") // Alerts alertcondition(longCondition, title='Long Entry Signal', message='MACD crossover and Supertrend below close price') alertcondition(signalMA > macdLine, title='Long Exit Signal', message='MACD signal line crosses above MACD line') alertcondition(shortCondition, title='Short Entry Signal', message='MACD crossunder and Supertrend above close price') alertcondition(macdLine > signalMA, title='Short Exit Signal', message='MACD line crosses above MACD signal line')