Strategi Crossover Purata Bergerak Dinamis adalah strategi trend yang biasa. Ia menghasilkan isyarat beli dan jual dengan mengira purata bergerak pantas (Fast MA) dan purata bergerak perlahan (Slow MA) dan mengesan persilangan di antara mereka untuk menangkap titik pembalikan trend di pasaran.
Logik teras strategi ini adalah: apabila purata bergerak pantas melintasi di atas purata bergerak perlahan dari bawah, isyarat beli dihasilkan; apabila purata bergerak pantas melintasi di bawah purata bergerak perlahan dari atas, isyarat jual dihasilkan.
Purata bergerak dapat menapis bunyi bising pasaran dan menangkap trend harga dengan berkesan. Purata bergerak pantas lebih sensitif dan dapat menangkap perubahan dalam trend tepat pada masanya; purata bergerak perlahan lebih stabil dan dapat menapis kesan turun naik jangka pendek dengan berkesan. Apabila MA pantas dan perlahan mempunyai salib emas (bergerak dari bawah), ia menunjukkan bahawa pasaran telah memasuki fasa kenaikan; apabila mereka melihat salib kematian (bergerak dari atas), ia menunjukkan bahawa pasaran telah memasuki fasa penurunan.
Strategi ini akan segera mengeluarkan isyarat perdagangan apabila purata bergerak menyeberang, mengamalkan strategi mengejar trend untuk mengikuti trend pasaran dan memperoleh keuntungan yang lebih besar. Pada masa yang sama, strategi menetapkan stop loss dan mengambil keuntungan untuk mengawal risiko dengan ketat.
Peningkatan boleh dibuat dengan mengoptimumkan parameter, menyesuaikan tempoh purata bergerak, menambah keadaan penapis dll.
Strategi Crossover Purata Bergerak Dinamis secara keseluruhan melakukan dengan cukup baik. Penambahbaikan lanjut boleh dibuat dengan mengoptimumkan parameter. Strategi ini mudah dilaksanakan dan sesuai untuk amalan pemula. Tetapi risiko isyarat palsu harus diperhatikan, dan perlu digunakan bersama dengan penunjuk lain untuk melakukan dengan lebih baik.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Simple Moving Average Crossover", shorttitle="SMAC", overlay=true) // Define input parameters fast_length = input.int(9, title="Fast MA Length") slow_length = input.int(21, title="Slow MA Length") stop_loss = input.float(1, title="Stop Loss (%)", minval=0, maxval=100) take_profit = input.float(2, title="Take Profit (%)", minval=0, maxval=100) // Calculate moving averages fast_ma = ta.sma(close, fast_length) slow_ma = ta.sma(close, slow_length) // Define conditions for long and short signals long_condition = ta.crossover(fast_ma, slow_ma) short_condition = ta.crossunder(fast_ma, slow_ma) // Plot moving averages on the chart plot(fast_ma, title="Fast MA", color=color.blue) plot(slow_ma, title="Slow MA", color=color.red) // Execute long and short trades if (long_condition) strategy.entry("Long", strategy.long) if (short_condition) strategy.entry("Short", strategy.short) // Set stop loss and take profit levels stop_loss_price = close * (1 - stop_loss / 100) take_profit_price = close * (1 + take_profit / 100) strategy.exit("Take Profit/Stop Loss", stop=stop_loss_price, limit=take_profit_price) // Plot signals on the chart plotshape(series=long_condition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small) plotshape(series=short_condition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)