Strategi purata bergerak berganda

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

img

Ringkasan

Strategi purata bergerak berganda adalah strategi perdagangan jangka pendek yang biasa digunakan. Ia menilai arah trend pasaran dengan mengira purata bergerak dari tempoh yang berbeza dan menggunakannya untuk memasuki perdagangan. Apabila purata bergerak jangka pendek melintasi di atas purata bergerak jangka panjang, pergi panjang. Apabila purata bergerak jangka pendek melintasi di bawah purata bergerak jangka panjang, pergi pendek.

Logika Strategi

Logik teras strategi ini ialah:

  1. Hitung dua purata bergerak dari tempoh yang berbeza, satu adalah MA tempoh panjang, yang lain adalah MA tempoh pendek.

  2. Periksa sama ada MA tempoh pendek telah melintasi MA tempoh panjang. Apabila MA jangka pendek melintasi di atas MA jangka panjang, ia menunjukkan trend menaik di pasaran dan kita boleh pergi panjang. Apabila MA jangka pendek melintasi di bawah MA jangka panjang, ia menunjukkan trend menurun dan kita boleh pergi pendek.

  3. Masukkan perdagangan mengikut arah trend. Khususnya, apabila MA tempoh pendek melintasi di atas MA tempoh panjang, pergi panjang. Apabila MA tempoh pendek melintasi di bawah MA tempoh panjang, pergi pendek.

  4. Tetapkan stop loss dan ambil keuntungan berdasarkan keadaan pasaran sebenar.

Strategi ini menggunakan keupayaan menilai trend MA untuk menentukan hubungan antara trend jangka pendek dan jangka panjang, untuk menangkap pergerakan jangka pendek. Logiknya mudah dan jelas, menggunakan salib MA untuk menilai pergeseran irama antara kesinambungan trend dan pembalikan, dan perdagangan berdasarkan itu.

Kelebihan

Strategi MA berganda mempunyai kelebihan berikut:

  1. Logiknya mudah dan mudah difahami dan dilaksanakan.

  2. Ia mempunyai kriteria masuk dan keluar yang jelas.

  3. Tempoh MA boleh disesuaikan untuk menyesuaikan diri dengan persekitaran pasaran yang berbeza.

  4. Ia menangkap kedua-dua trend dan pembalikan purata, yang membolehkannya mendapat keuntungan dari pergerakan jangka sederhana.

  5. Terdapat logik stop loss untuk mengawal risiko.

Risiko

Terdapat juga beberapa risiko dengan strategi MA berganda:

  1. Stop loss boleh diaktifkan dengan kerap semasa pasaran yang terikat julat.

  2. Isyarat MA mungkin terlalu kerap semasa pasaran yang tidak menentu, menjadikannya sukar untuk memegang kedudukan.

  3. MAs sendiri mempunyai kelewatan dan mungkin terlepas peluang pembalikan jangka pendek.

  4. Tempoh MA perlu dioptimumkan agar strategi berfungsi.

  5. MA cross mempunyai beberapa lag, menyebabkan entri tertunda.

Arahan Penambahbaikan

Beberapa cara untuk meningkatkan strategi ini:

  1. Mengoptimumkan tempoh MA untuk keadaan pasaran yang berbeza melalui backtesting.

  2. Tambah penunjuk lain sebagai penapis untuk mengelakkan whipsaws di pasaran berkisar. MACD, KD boleh dipertimbangkan.

  3. Tambah penunjuk kekuatan trend untuk mengelakkan perdagangan apabila tidak ada trend yang jelas.

  4. Pertimbangkan penunjuk jumlah untuk menilai arah jurang.

  5. Mengoptimumkan stop loss berhampiran tahap sokongan / rintangan utama.

Ringkasan

Strategi MA berganda adalah strategi jangka pendek yang mudah berdasarkan persilangan MA untuk menentukan trend. Kelebihannya adalah kesederhanaan dan kemudahan penggunaannya. Kelemahannya adalah bahawa ia boleh dipukul oleh pasaran yang berbeza dan mempunyai lag. Kita boleh mengoptimumkannya dengan penyesuaian parameter, menambah penapis dll untuk menjadikannya lebih mantap untuk persekitaran pasaran yang kompleks.


/*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 lanjut