Strategi crossover rata-rata bergerak dengan stop-loss dan take-profit

Penulis:ChaoZhang, Tanggal: 2023-12-21 15:52:57
Tag:

img

Gambaran umum

Strategi ini menghitung rata-rata bergerak dari periode yang berbeda, menetapkan titik stop-loss dan take-profit untuk menerapkan perdagangan otomatis. Ia pergi panjang ketika rata-rata bergerak periode pendek melintasi di atas rata-rata bergerak periode panjang, dan pergi pendek ketika rata-rata bergerak periode pendek melintasi di bawah rata-rata bergerak periode panjang. Sementara itu, ia menetapkan titik stop-loss dan take-profit untuk mengendalikan risiko.

Logika Strategi

Strategi ini didasarkan pada prinsip crossover rata-rata bergerak. Ini menghitung rata-rata bergerak sederhana 9 hari dan 55 hari secara bersamaan. Ketika MA 9 hari melintasi di atas MA 55 hari, itu menandakan bahwa tren jangka pendek telah terbalik ke atas, jadi pergi panjang. Ketika MA 9 hari melintasi di bawah MA 55 hari, itu menandakan bahwa tren jangka pendek telah terbalik ke bawah, jadi pergi pendek.

Sementara itu, strategi ini menggunakan indikator ATR untuk menetapkan titik stop-loss dan take-profit. Indikator ATR dapat mengukur tingkat volatilitas harga di pasar. Titik stop-loss ditetapkan pada harga penutupan dikurangi nilai ATR, sehingga dapat menetapkan stop-loss yang wajar berdasarkan volatilitas pasar. Titik take-profit menggunakan rasio risiko-manfaat, yang ditetapkan pada 2 di sini - ambil keuntungan = harga penutupan + 2 * nilai ATR.

Keuntungan

Ini adalah strategi perdagangan jangka pendek yang sangat sederhana dan praktis dengan keuntungan berikut:

  1. Prinsip crossover rata-rata bergerak mudah dimengerti dan dikuasai;
  2. Kombinasi stop loss dan take profit secara efektif mengendalikan risiko dan meningkatkan kepraktisan;
  3. Parameter rata-rata bergerak dapat disesuaikan secara fleksibel untuk menyesuaikan diri dengan lingkungan pasar yang berbeda;
  4. ATR stop-loss dapat mengatur titik stop-loss berdasarkan volatilitas pasar, cukup cerdas;
  5. Pengaturan rasio risiko-manfaat dapat disesuaikan sesuai dengan preferensi risiko pribadi.

Risiko

Ada juga beberapa risiko dengan strategi ini:

  1. Sinyal crossover rata-rata bergerak mungkin memiliki kegagalan yang salah, menyebabkan perdagangan yang salah;
  2. Pengaturan stop loss atau take profit yang tidak tepat dapat meningkatkan kerugian atau mengurangi keuntungan;
  3. Parameter rata-rata bergerak yang tidak tepat dapat menyebabkan frekuensi perdagangan yang terlalu tinggi atau sinyal yang tertinggal;
  4. Pengaturan parameter ATR yang tidak benar juga dapat membuat titik stop-loss terlalu dekat atau terlalu jauh.

Risiko ini dapat dikurangi dengan mengoptimalkan parameter, stop loss yang ketat, dan ukuran posisi yang wajar.

Optimalisasi

Strategi ini dapat dioptimalkan lebih lanjut:

  1. Menggunakan alat optimalisasi untuk menemukan kombinasi parameter rata-rata bergerak yang optimal;
  2. Tambahkan indikator lain untuk menyaring sinyal crossover rata-rata bergerak untuk menghindari kebocoran palsu;
  3. Cobalah jenis rata-rata bergerak lainnya, seperti rata-rata bergerak eksponensial, dll.;
  4. Pertimbangkan untuk menambahkan parameter ATR ke optimasi juga untuk membuat stop-loss dan take-profit lebih cerdas.

Kesimpulan

Logika keseluruhan strategi ini jelas dan mudah diterapkan, terutama cocok untuk pemula untuk menguasai. Sebagai strategi perdagangan jangka pendek dasar, ia memiliki keuntungan operasi sederhana dan pengoptimalan mudah. Ketika dikombinasikan dengan COMPLETE atau kerangka kerja lainnya, ia dapat ditingkatkan lebih lanjut untuk menjadi sistem perdagangan kuantitatif yang praktis.


/*backtest
start: 2022-12-14 00:00:00
end: 2023-12-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("MA Crossover Strategy with Stop-Loss and Take-Profit", overlay=true)

// Input for selecting the length of the moving averages
maShortLength = input(9, title="Short MA Length")
maLongLength = input(55, title="Long MA Length")

// Input for setting the risk-reward ratio
riskRewardRatio = input(2, title="Risk-Reward Ratio")

// Calculate moving averages
maShort = ta.sma(close, maShortLength)
maLong = ta.sma(close, maLongLength)

// Buy condition: 9-period MA crosses above 55-period MA
buyCondition = ta.crossover(maShort, maLong)

// Sell condition: 9-period MA crosses below 55-period MA
sellCondition = ta.crossunder(maShort, maLong)

// Set stop-loss and take-profit levels
atrValue = ta.atr(14)
stopLossLevel = close - atrValue  // Use ATR for stop-loss (adjust as needed)
takeProfitLevel = close + riskRewardRatio * atrValue  // Risk-reward ratio of 1:2

// Execute buy and sell orders with stop-loss and take-profit
strategy.entry("Buy", strategy.long, when = buyCondition)
strategy.exit("Sell", from_entry="Buy", loss=stopLossLevel, profit=takeProfitLevel)

// Plot moving averages on the chart
plot(maShort, color=color.blue, title="Short MA")
plot(maLong, color=color.red, title="Long MA")

Lebih banyak