
Strategi ini menghantar isyarat perdagangan dengan mengira purata bergerak dari dua tempoh yang berbeza dan memetakan titik persimpangan mereka. Apabila purata bergerak jangka pendek melintasi purata bergerak jangka panjang, lakukan lebih banyak; apabila purata bergerak jangka pendek melintasi purata bergerak jangka panjang, lakukan kurang.
Strategi ini berdasarkan kepada kelebihan moving averages kerana ia dapat menghapuskan keacakan dalam urutan harga dan mengekstrak trend utama. Strategi ini menggunakan garis 7 dan garis 20 untuk membina sistem moving averages ganda, kedua-dua tempoh yang lebih biasa digunakan dan lebih jelas.
Apabila pergerakan jangka pendek di atas rata-rata bergerak melewati rata-rata bergerak jangka panjang, bermakna harga memasuki trend naik; apabila pergerakan jangka pendek di bawah rata-rata bergerak melewati rata-rata bergerak jangka panjang, bermakna harga memasuki trend menurun. Berdasarkan prinsip ini, kita membeli lebih banyak atau menjual lebih sedikit.
Khususnya, strategi ini menggunakan pengiraan purata bergerak mudah 7 hari dan purata bergerak mudah 20 hari untuk menentukan perubahan trend dan menghantar isyarat perdagangan apabila dua rata-rata bersilang. Untuk membezakan jenis persilangan, tentukan bahawa garis pendek lebih besar daripada garis panjang sebagai kenaikan harga dan sebaliknya sebagai penurunan harga.
(1) Strategi yang jelas dan mudah difahami dan dilaksanakan.
(2) Rata-rata bergerak sebagai satu petunjuk trend yang boleh menyaring dengan berkesan sebahagian daripada bunyi yang terkandung dalam harga, penggunaan sistem purata bergerak ganda dapat meningkatkan kestabilan lebih lanjut.
(3) Komposisi parameter yang fleksibel dan boleh disesuaikan secara kitaran untuk memenuhi keperluan perdagangan dalam keadaan pasaran yang berbeza.
(4) Menggunakan dua kitaran purata bergerak yang lebih biasa, mudah untuk menilai isyarat perdagangan yang jelas.
(5) analisis bantuan visual yang kuat, melalui kesan visual intuitif menilai trend, titik-titik penting dan sebagainya.
(6) Selepas ujian semula strategi, parameter boleh disesuaikan mengikut hasil pengoptimuman untuk meningkatkan kadar pulangan strategi.
(1) Strategi purata bergerak berganda lebih sensitif terhadap turun naik pasaran dan mudah mengalami kerugian perdagangan yang kerap berlaku dalam keadaan yang bergolak.
(2) Hanya bergantung pada persilangan garis rata tidak semestinya dapat menentukan titik perubahan trend dengan tepat, dan mungkin menyebabkan isyarat yang salah.
(3) Peraturan yang lebih kaku, apabila kejadian yang tidak dijangka mempengaruhi pasaran, strategi yang tidak dapat disesuaikan boleh menyebabkan kerugian yang lebih besar.
(4) Parameter yang tidak betul juga boleh menyebabkan isyarat yang salah atau kehilangan peluang perdagangan, yang memerlukan pengujian dan pengoptimuman yang berhati-hati.
Untuk mengurangkan risiko ini, anda boleh menyesuaikan set parameter dengan sewajarnya; menambah petunjuk lain untuk membantu; menetapkan strategi berhenti kerugian untuk mengawal kerugian; menyesuaikan parameter atau strategi penutupan mengikut keadaan pasaran, dll.
(1) Gabungan dengan penunjuk teknikal lain, membentuk strategi gabungan, dapat meningkatkan ketepatan isyarat. Sebagai contoh, penambahan penunjuk kuantiti transaksi, dengan penambahan kuantiti transaksi yang ditentukan pada saat persilangan rata-rata bergerak, dapat meningkatkan peluang Entry.
(2) Menggabungkan strategi berhenti kerugian, dapat mengawal kerugian tunggal dengan berkesan. Sebagai contoh, keluar dari kedudukan kepala semasa apabila harga melampaui jarak tertentu di antara purata bergerak.
(3) Uji kombinasi parameter kitaran untuk mengoptimumkan purata bergerak. Anda boleh mencuba pelbagai padanan kitaran perlahan dan cepat untuk mencari kombinasi parameter terbaik. Selain itu, anda juga boleh menguji indikator purata bergerak lain seperti purata bergerak indeks, purata bergerak berat.
(4) Sesuaikan parameter mengikut pelbagai jenis dan keadaan pasaran. Untuk jenis yang bergelombang, anda boleh memendekkan kitaran purata bergerak dan mengurangkan frekuensi perdagangan. Untuk keadaan pasaran yang cenderung, anda boleh meningkatkan selang masa antara dua garis rata-rata.
Strategi pergerakan rata-rata dua persilangan secara keseluruhan adalah strategi pengesanan trend yang sangat tipikal dan asas. Ia menilai perubahan trend harga dengan mengira purata bergerak dari dua kitaran yang berbeza dan melihat persimpangan mereka. Isyarat perdagangan dihasilkan ketika bergerak pendek melintasi atau melintasi rata-rata bergerak jangka panjang.
/*backtest
start: 2022-12-01 00:00:00
end: 2023-12-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("Ma stratégie", overlay=true)
// Multi-timeframe and price input
pricetype = input(close, title="Price Source For The Moving Averages")
useCurrentRes = input(true, title="Use Current Timeframe As Resolution?")
resCustom = input(title="Use Different Timeframe? Then Uncheck The Box Above", defval="W")
res = useCurrentRes ? timeframe.period : resCustom
price = request.security(syminfo.tickerid, res, pricetype)
// MA period input
shortperiod = input(7, title="Short Period Moving Average")
longperiod = input(20, title="Long Period Moving Average")
short = ema(price, shortperiod)
long = ema(price, longperiod)
// MA trend direction color
shortcolor = short > short[1] ? lime : short < short[1] ? red : blue
longcolor = long > long[1] ? lime : long < long[1] ? red : blue
// MA output
MA1 = plot(short, title="Short Period Moving Average", style=linebr, linewidth=2, color=shortcolor)
MA2 = plot(long, title="Long Period Moving Average", style=linebr, linewidth=4, color=longcolor)
fill(MA1, MA2, color=silver, transp=50)
// MA trend bar color
TrendingUp() => short > long
TrendingDown() => short < long
barcolor(TrendingUp() ? green : TrendingDown() ? red : blue)
// MA cross alert
MAcrossing = cross(short, long) ? short : na
plot(MAcrossing, style = cross, linewidth = 4,color=black)
// MA cross background color alert
Uptrend() => TrendingUp() and TrendingDown()[1]
Downtrend() => TrendingDown() and TrendingUp()[1]
bgcolor(Uptrend() ? green : Downtrend() ? red : na,transp=50)
// Buy and sell alert
Buy = Uptrend() and close > close[1]
Sell = Downtrend() and close < close[1]
plotshape(Buy, color=black, style=shape.arrowup, text="Buy", location=location.bottom)
plotshape(Sell, color=black, style=shape.arrowdown, text="Sell", location=location.top)
if (Buy)
strategy.entry("My Long Entry Id", strategy.long)
if (Sell)
strategy.entry("My Short Entry Id", strategy.short)