Strategi Rata-rata Bergerak Ganda

Penulis:ChaoZhang, Tanggal: 2023-11-02 15:10:04
Tag:

img

Gambaran umum

Strategi rata-rata bergerak ganda adalah strategi perdagangan jangka pendek yang umum digunakan. Ini menilai arah tren pasar dengan menghitung rata-rata bergerak dari periode yang berbeda dan menggunakannya untuk memasuki perdagangan. Ketika rata-rata bergerak periode pendek melintasi di atas rata-rata bergerak periode panjang, pergi panjang. Ketika rata-rata bergerak periode pendek melintasi di bawah rata-rata bergerak periode panjang, pergi pendek.

Logika Strategi

Logika inti dari strategi ini adalah:

  1. Menghitung dua rata-rata bergerak dari periode yang berbeda, satu adalah MA periode panjang, yang lain adalah MA periode pendek.

  2. Pertimbangkan apakah MA jangka pendek telah melintasi MA jangka panjang. Ketika MA jangka pendek melintasi di atas MA jangka panjang, itu menunjukkan tren kenaikan di pasar dan kita bisa pergi panjang. Ketika MA jangka pendek melintasi di bawah MA jangka panjang, itu menunjukkan tren penurunan dan kita bisa pergi pendek.

  3. Masukkan perdagangan sesuai arah tren. Secara khusus, ketika MA periode pendek melintasi di atas MA periode panjang, pergi panjang. Ketika MA periode pendek melintasi di bawah MA periode panjang, pergi pendek.

  4. Tetapkan stop loss dan ambil keuntungan berdasarkan kondisi pasar yang sebenarnya.

Strategi ini memanfaatkan kemampuan menilai tren MA untuk menentukan hubungan antara tren jangka pendek dan jangka panjang, untuk menangkap pergerakan jangka pendek. Logika sederhana dan jelas, menggunakan MA silang untuk menilai pergeseran ritme antara kelanjutan tren dan pembalikan, dan perdagangan berdasarkan itu.

Keuntungan

Strategi MA ganda memiliki keuntungan berikut:

  1. Logikanya sederhana dan mudah dimengerti dan diterapkan.

  2. Ini memiliki kriteria masuk dan keluar yang jelas.

  3. Periode MA dapat disesuaikan untuk menyesuaikan dengan lingkungan pasar yang berbeda.

  4. Ini menangkap baik tren dan pembalikan rata-rata, yang memungkinkan untuk mendapatkan keuntungan dari pergerakan jangka menengah.

  5. Ada logika stop loss untuk mengendalikan risiko.

Risiko

Ada juga beberapa risiko dengan strategi MA ganda:

  1. Stop loss dapat dipicu sering selama pasar yang terikat rentang.

  2. Sinyal MA mungkin terlalu sering terjadi selama pasar yang volatile, sehingga sulit untuk mempertahankan posisi.

  3. MAs sendiri memiliki keterlambatan dan mungkin melewatkan peluang pembalikan jangka pendek.

  4. Periode MA harus dioptimalkan agar strategi berhasil.

  5. MA cross memiliki beberapa lag, menyebabkan keterlambatan entri.

Arah Peningkatan

Beberapa cara untuk meningkatkan strategi ini:

  1. Mengoptimalkan periode MA untuk kondisi pasar yang berbeda melalui backtesting.

  2. Menambahkan indikator lain sebagai filter untuk menghindari whipsaws di pasar berkisar.

  3. Tambahkan indikator kekuatan tren untuk menghindari perdagangan ketika tidak ada tren yang jelas.

  4. Pertimbangkan indikator volume untuk menilai arah celah.

  5. Optimalkan stop loss di dekat level support/resistance utama.

Ringkasan

Strategi MA ganda adalah strategi jangka pendek yang sederhana berdasarkan persilangan MA untuk menentukan tren. Keuntungannya adalah kesederhanaan dan kemudahan penggunaannya. Kelemahannya adalah bahwa strategi ini dapat dipotong oleh berbagai pasar dan memiliki keterlambatan.


/*backtest
start: 2022-10-26 00:00:00
end: 2023-11-01 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("GetTrendStrategy timing", overlay=true)
tim=input('370')
 
//////////////////////////////////////////////////////////////////////
// Component Code Start
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(10, "Backtest Start Month")
testStartDay = input(25, "Backtest Start Day")
testStartHour = input(7, "Backtest Start Hour")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,testStartHour,0)
testStopYear = input(2017, "Backtest Stop Year")
testStopMonth = input(10, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testStopHour = input(13, "Backtest stop Hour")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,testStartHour,0)
 
testPeriod() => true
// Component Code Stop
//////////////////////////////////////////////////////////////////////
 
 
out1 = request.security(syminfo.tickerid, tim, open)
out2 = request.security(syminfo.tickerid, tim, close)
plot(out1,color=red)
plot(out2,color=green)
longCondition = crossover(request.security(syminfo.tickerid, tim, close),request.security(syminfo.tickerid, tim, open))
 
if testPeriod()
    if (longCondition)
        strategy.entry("long", strategy.long)
shortCondition = crossunder(request.security(syminfo.tickerid, tim, close),request.security(syminfo.tickerid, tim, open))
 
if testPeriod()
    if (shortCondition)
        strategy.entry("short", strategy.short)

Lebih banyak