Strategi crossover purata bergerak berganda klasik

Penulis:ChaoZhang, Tarikh: 2023-10-27 16:47:30
Tag:

img

Ringkasan

Strategi crossover purata bergerak berganda adalah strategi analisis teknikal yang sangat klasik dan biasa digunakan. Strategi ini menggunakan persilangan purata bergerak yang lebih cepat dan purata bergerak yang lebih perlahan sebagai isyarat perdagangan untuk membeli dan menjual. Apabila purata bergerak yang lebih cepat melintasi di atas purata bergerak yang lebih perlahan dari bawah, isyarat beli dihasilkan. Apabila purata bergerak yang lebih cepat melintasi di bawah purata bergerak yang lebih perlahan dari atas, isyarat jual dihasilkan.

Logika Strategi

Bahagian utama kod strategi termasuk:

  1. Tentukan panjang dan jenis purata bergerak pantas dan perlahan: MA pantas mempunyai tempoh 5, MA perlahan mempunyai tempoh 21, kedua-duanya menggunakan purata bergerak mudah.

  2. Mengira MA cepat dan perlahan: menggunakan fungsi sma untuk mengira purata bergerak mudah 5 tempoh dan 21 tempoh.

  3. Merangka carta: merangka garis trend MA yang cepat dan perlahan.

  4. Tentukan peraturan kemasukan dan keluar: beli apabila MA pantas melintasi di atas MA perlahan, jual apabila MA pantas melintasi di bawah MA perlahan.

  5. Melakukan perdagangan: gunakan fungsi panjang dan pendek strategi untuk melaksanakan perdagangan secara automatik apabila syarat dipenuhi.

Kunci strategi ini adalah menggunakan purata bergerak dari tempoh yang berbeza untuk membentuk MA yang cepat dan perlahan, dan menggunakan silang mereka sebagai isyarat perdagangan. MA yang cepat menangkap perubahan harga lebih cepat manakala MA yang perlahan mencerminkan trend jangka panjang dengan lebih baik. Persalinan MA yang cepat di atas MA yang perlahan menunjukkan kemerosotan menaik, yang merupakan isyarat beli. Dan persilangan di bawah adalah isyarat jual. Logik strategi ini mudah dan mudah dilaksanakan.

Analisis Kelebihan

Strategi crossover purata bergerak berganda mempunyai kelebihan berikut:

  1. Prinsip mudah, mudah difahami, sesuai untuk pemula.

  2. Ikuti trend harga, sedikit penurunan.

  3. Frekuensi perdagangan yang sederhana, mengelakkan perdagangan berlebihan.

  4. Parameter yang boleh disesuaikan, fleksibel untuk menyesuaikan diri dengan perubahan pasaran.

  5. Mudah untuk mengoptimumkan dan mencari set parameter peribadi yang sesuai.

  6. Boleh menetapkan stop loss untuk mengawal risiko.

  7. Boleh digunakan di pelbagai pasaran, aplikasi tinggi.

  8. Boleh digabungkan dengan penunjuk lain untuk meningkatkan prestasi.

Analisis Risiko

Terdapat juga beberapa risiko dengan strategi ini:

  1. Reaksi yang tertunda apabila trend kuat, boleh terlepas masa masuk terbaik.

  2. Lebih banyak isyarat palsu semasa pasaran yang terhad, boleh menambah penapis untuk mengelakkan perdagangan yang salah.

  3. Terlalu banyak perdagangan boleh menjejaskan keuntungan. boleh meluaskan jarak MA untuk mengurangkan silang.

  4. Sukar untuk menentukan trend, risiko perdagangan kontra-trend.

  5. Pengoptimuman parameter memerlukan data sejarah yang mencukupi, risiko overfit dengan produk baru.

  6. Satu penunjuk mudah terdedah kepada faktor luaran, prestasi mungkin tidak stabil.

Arahan pengoptimuman

Terdapat beberapa cara untuk mengoptimumkan lagi strategi MA berganda:

  1. Uji panjang MA cepat dan perlahan yang berbeza untuk mencari parameter optimum untuk produk dagangan tertentu.

  2. Tambah penapis seperti jumlah dagangan, ATR stop loss untuk mengurangkan peluang yang lebih rendah.

  3. Gabungkan penunjuk momentum untuk mengesahkan isyarat perdagangan dan mengelakkan pecah palsu.

  4. Mengoptimumkan strategi stop loss untuk mengelakkan keluar awal atau lewat.

  5. Menggabungkan penunjuk trend dan gelombang untuk membolehkan perdagangan trend dan perdagangan kontra-trend.

  6. Menggunakan MA adaptif untuk menyesuaikan parameter berdasarkan keadaan pasaran dan bukannya tempoh tetap.

  7. Menggunakan kombinasi parameter untuk sesi dan ciri pasaran yang berbeza.

  8. Melakukan pengoptimuman masa nyata melalui algoritma pembelajaran mesin untuk terus meningkatkan parameter.

Ringkasan

Dengan logiknya yang mudah dan mudah dilaksanakan, strategi crossover purata bergerak berganda telah menjadi salah satu strategi analisis teknikal yang paling penting dan digunakan secara meluas. Ia mengikuti trend harga dengan penarikan balik yang terkawal dan risiko yang boleh diterima. Tetapi terdapat juga potensi yang besar untuk pengoptimuman, dengan penyesuaian parameter, menggabungkan penunjuk lain dan algoritma automatik, penerapan dan prestasi dapat ditingkatkan lagi. Secara keseluruhan, strategi crossover MA berganda layak mendapat perhatian dan aplikasi jangka panjang oleh pelabur.


/*backtest
start: 2023-09-26 00:00:00
end: 2023-10-26 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
// strategy("Stochastic Strategy of BiznesFilosof", shorttitle="SS of BiznesFilosof", overlay=false, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=20, commission_type=strategy.commission.percent, commission_value=0.15, pyramiding=0)

//Period
startY = input(title="Start Year", defval = 2011)
startM = input(title="Start Month", defval = 1, minval = 1, maxval = 12)
startD = input(title="Start Day", defval = 1, minval = 1, maxval = 31)
finishY = input(title="Finish Year", defval = 2050)
finishM = input(title="Finish Month", defval = 12, minval = 1, maxval = 12)
finishD = input(title="Finish Day", defval = 31, minval = 1, maxval = 31)
//finish = input(2019, 02, 28, 00, 00)
timestart = timestamp(startY, startM, startD, 00, 00)
timefinish = timestamp(finishY, finishM, finishD, 23, 59)
window = true // Lenghth strategy

length1 = input(21, minval=1), smoothK1 = input(3, minval=1), smoothD1 = input(3, minval=1)
//length2 = input(5, minval=1), smoothK2 = input(1, minval=1), smoothD2 = input(1, minval=1)
inh0 = input(title="Bottom Line", defval = 14, minval=0), inh1 = input(title="Upper Line", defval = 86, minval=0)

k1 = sma(stoch(close, high, low, length1), smoothK1)
d1 = sma(k1, smoothD1)
plot(k1, color=blue)
plot(d1, color=red)
//k2 = sma(stoch(close, high, low, length2), smoothK2)
//d2 = sma(k2, smoothD2)
//plot(k2, color=orange)

h1 = hline(inh1)
h0 = hline(inh0)
fill(h0, h1, color = aqua, transp=90)

//open
strategy.entry("LongEntryID", strategy.long, comment="LONG", when = crossover(k1, d1) and crossover(k1, inh0) and window)
strategy.entry("ShortEntryID", strategy.short, comment="SHORT", when = crossunder(k1, d1) and crossunder(k1, inh1) and window)

if crossunder(k1, d1) and crossunder(k1, inh1) and strategy.position_size > 0
    strategy.close_all()
if crossover(k1, d1) and crossover(k1, inh0) and strategy.position_size < 0
    strategy.close_all()
  
    


Lebih lanjut