Strategi perdagangan persilangan MACD adalah strategi yang mengikuti trend. Ia menggunakan persilangan garis purata bergerak pantas dan perlahan sebagai isyarat beli dan jual. Apabila garis purata bergerak pantas melintasi di atas garis purata bergerak perlahan, isyarat beli dihasilkan. Apabila garis purata bergerak pantas melintasi di bawah garis purata bergerak perlahan, isyarat jual dihasilkan.
Indikator MACD adalah perbezaan antara dua garis purata bergerak dengan parameter yang berbeza, yang mencerminkan perubahan dalam momentum harga. Khususnya, ia adalah perbezaan antara garis purata bergerak pantas (parameter lalai adalah garis 12 hari) dan garis purata bergerak perlahan (parameter lalai adalah garis 26 hari), yang dipanggil bar MACD. Untuk menghapuskan goyangan, penunjuk MACD juga memperkenalkan garis DEA atau garis isyarat, biasanya purata bergerak bertimbang 9 hari MACD.
Apabila bar MACD menembusi garis DEA dari bawah ke atas dan memasuki kawasan positif, ia menunjukkan bahawa garis purata jangka pendek melintasi di atas garis purata jangka panjang, menunjukkan bahawa trend harga bertukar ke atas dan isyarat beli dihasilkan.
Strategi ini menggunakan persilangan bar MACD dan garis DEA untuk menentukan masa pembelian dan penjualan. Ia membeli apabila bar MACD melintasi di atas garis DEA dan menjual apabila bar MACD melintasi di bawah garis DEA.
Kelebihan strategi ini termasuk:
Strategi ini juga mempunyai beberapa risiko:
Untuk mengurangkan risiko, parameter boleh diselaraskan, atau digabungkan dengan penunjuk lain seperti penunjuk jumlah dan turun naik.
Strategi ini boleh dioptimumkan dalam aspek berikut:
Pengoptimuman parameter untuk mencari parameter optimum sambil mengelakkan pengoptimuman berlebihan.
Menggabungkan dengan penunjuk lain untuk membentuk strategi gabungan yang lebih kuat.
Menetapkan titik stop loss dan mengambil keuntungan yang betul untuk mengawal risiko dengan berkesan.
Pengoptimuman penyesuaian untuk menerapkan strategi ini ke pasaran dan jangka masa yang berbeza berdasarkan keadaan sebenar.
Strategi perdagangan silang MACD menangkap perubahan trend dengan kos yang rendah dengan mengikuti trend harga. Ia mudah, praktikal dan mudah dilaksanakan, menjadikannya strategi permulaan yang sesuai untuk pemula. Tetapi strategi ini juga mempunyai beberapa kelemahan. Dengan sentiasa mengoptimumkan dan meningkatkan, kesan sebenar strategi ini boleh menjadi lebih baik. Ia bernilai disyorkan.
/*backtest start: 2022-12-29 00:00:00 end: 2024-01-04 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("MACD Strategy by Forbes",default_qty_type=strategy.percent_of_equity, default_qty_value=100, overlay=false) fastLength = input(20) slowlength = input(40) MACDLength = input(4) // === INPUT BACKTEST RANGE === FromYear = input(defval = 2011, title = "From Year", minval = 2009) FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12) FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31) ToYear = input(defval = 9999, title = "To Year", minval = 2009) ToMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12) ToDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31) // === FUNCTION EXAMPLE === start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window window() => true // create function "within window of time" MACD = ema(close, fastLength) - ema(close, slowlength) aMACD = ema(MACD, MACDLength) delta = MACD - aMACD // Plot colors col_grow_above = #26A69A col_grow_below = #FFCDD2 col_fall_above = #B2DFDB col_fall_below = #EF5350 f1 = plot(MACD,color=red) s1 = plot(aMACD,color=blue) plotColor = if delta > 0 delta > delta[1] ? lime : green else delta < delta[1] ? maroon : red plot(delta, color=plotColor, style=columns) if (crossover(delta, 0)) strategy.entry("Buy", true, when=window(), comment="Buy") if (crossunder(delta, 0)) strategy.close_all(when=window()) //plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)