Strategi Perdagangan Pembalikan Arah Purata Bergerak

Penulis:ChaoZhang, Tarikh: 2023-09-28 15:50:01
Tag:

Ringkasan

Strategi perdagangan pembalikan arah purata bergerak adalah strategi yang menilai pembalikan trend apabila purata bergerak menunjukkan terus naik atau turun untuk beberapa lilin.

Logika Strategi

Logik teras strategi perdagangan pembalikan arah purata bergerak adalah:

  1. Mengira purata bergerak yang dipilih, yang boleh menjadi purata bergerak mudah (SMA), purata bergerak eksponen (EMA), purata bergerak bertimbang (WMA) atau purata regresi linear.

  2. Menghakimi hubungan saiz antara purata bergerak tempoh semasa dan purata bergerak tempoh sebelumnya. Jika purata bergerak semasa lebih tinggi daripada tempoh sebelumnya, menetapkan 1, sebaliknya menetapkan 0.

  3. Mencatatkan bilangan tempoh naik dan turun berturut-turut. Jika purata bergerak tempoh semasa lebih tinggi daripada tempoh sebelumnya, tempoh naik berturut-turut +1, dan tempoh turun berturut-turut dihapuskan kepada sifar; jika purata bergerak tempoh semasa lebih rendah daripada tempoh sebelumnya, tempoh turun berturut-turut +1, dan tempoh naik berturut-turut dihapuskan kepada sifar.

  4. Apabila bilangan tempoh naik atau turun berturut-turut melebihi ambang yang ditakrifkan oleh pengguna, lakukan operasi panjang atau pendek yang sepadan.

  5. Pada masa yang sama, warna bar candlestick dan warna latar belakang untuk memaparkan perubahan arah trend secara visual.

  6. Pilihan merangka kurva perubahan purata bergerak untuk menandakan titik belokan.

Strategi ini menilai trend dengan mengira arah purata bergerak untuk beberapa candlestick berturut-turut, dan membuat transaksi dengan tempoh memegang panjang atau pendek yang berterusan, dan bukannya melihat satu candlestick.

Kelebihan

Strategi perdagangan pembalikan arah purata bergerak mempunyai kelebihan berikut:

  1. Menggunakan purata bergerak untuk menentukan arah trend dapat menapis bunyi pasaran dengan berkesan.

  2. Perubahan statistik ke arah purata bergerak dalam tempoh masa tertentu untuk menentukan masa pembalikan trend dan mengurangkan risiko perdagangan.

  3. Parameter purata bergerak dan parameter tempoh statistik yang boleh disesuaikan untuk menyesuaikan diri dengan pelbagai jenis dan keadaan pasaran.

  4. Warna candlestick secara intuitif memaparkan perubahan arah trend sebagai bantuan visual.

  5. Fleksibiliti untuk memilih pelbagai jenis purata bergerak.

  6. Menggambar kurva perubahan purata bergerak dapat dengan jelas memerhatikan sama ada pembalikan berlaku.

  7. Peraturan mudah dan jelas, mudah difahami dan dilaksanakan, sesuai untuk pemula.

Risiko

Strategi perdagangan pembalikan arah purata bergerak juga mempunyai beberapa risiko:

  1. Kelewatan purata bergerak sendiri mempengaruhi penangkapan tepat pada masanya titik infleksi.

  2. Keputusan panjang dan pendek yang ditangguhkan disebabkan oleh tempoh statistik mungkin kehilangan peluang pembalikan yang lebih cepat.

  3. Tetapan kitaran berterusan yang terlalu panjang mungkin tidak akan trend, sementara terlalu pendek cenderung terperangkap.

  4. Sebilangan besar isyarat perdagangan pendek boleh berlaku di pasaran berayun.

  5. Mengandalkan arah purata bergerak sahaja tidak dapat menentukan pembalikan trend sebenar sepenuhnya, dengan beberapa risiko isyarat palsu.

  6. Apabila pasaran berubah secara dramatik, penunjuk purata bergerak itu sendiri juga akan berubah dengan cepat, dengan kemungkinan yang lebih tinggi untuk menghasilkan isyarat palsu.

  7. Kebajikan pemilihan parameter purata bergerak mesti diperhatikan, jika tidak, ia akan gagal.

Penyelesaian:

  1. Memendekkan kitaran purata bergerak dengan sewajarnya untuk meningkatkan kepekaan.

  2. Gunakan penunjuk lain untuk menapis isyarat dan mengesahkan pembalikan trend.

  3. Mengoptimumkan parameter kitaran statistik untuk mencari keseimbangan antara kelajuan tindak balas dan kestabilan.

  4. Meningkatkan julat stop loss untuk lindung nilai untuk mengawal kerugian.

  5. Gunakan pelbagai kombinasi purata bergerak untuk meningkatkan ketepatan.

Arahan pengoptimuman

Strategi perdagangan pembalikan arah purata bergerak boleh dioptimumkan dalam aspek berikut:

  1. Mengoptimumkan parameter purata bergerak, menguji purata bergerak tempoh panjang yang berbeza, dan mencari parameter terbaik.

  2. Menggabungkan penunjuk tambahan lain seperti RSI dan KD untuk meningkatkan kebolehpercayaan isyarat.

  3. Mengoptimumkan parameter tempoh statistik berturut-turut untuk memastikan mencerminkan pembalikan trend sambil menapis isyarat palsu sebanyak mungkin.

  4. Tambah mekanisme stop loss untuk mengawal kerugian transaksi tunggal.

  5. Uji hasil pengoptimuman parameter pada jenis yang berbeza dan sesuaikan parameter mengikut jenis perdagangan yang berbeza.

  6. Pertimbangkan untuk mengubah tempoh statistik tetap kepada tempoh statistik adaptif untuk menjadikan strategi lebih fleksibel.

  7. Cuba buka kedudukan ketika purata bergerak benar-benar menerobos.

  8. Tambah penilaian arah trend keseluruhan untuk mengelakkan perdagangan terhadap trend.

  9. Meningkatkan cara kurva purata bergerak digambarkan, seperti meningkatkan kelancaran kurva.

Ringkasan

Strategi perdagangan pembalikan arah purata bergerak menentukan masa penjejakan trend berterusan dengan mengira tempoh kenaikan atau penurunan purata bergerak berturut-turut. Ia dapat menapis bunyi pasaran dengan berkesan dan merebut peluang apabila pembalikan trend berlaku. Strategi ini dapat menyesuaikan diri dengan fleksibel dengan pelbagai jenis perdagangan dan persekitaran pasaran melalui parameter purata bergerak yang boleh disesuaikan dan bilangan kitaran statistik. Walau bagaimanapun, kelewatan purata bergerak itu sendiri dengan mudah menyebabkan kelewatan pengenalan untuk pembalikan pantas. Oleh itu, parameter perlu dioptimumkan dan diselaraskan, dan penunjuk teknikal lain membantu untuk meningkatkan ketepatan isyarat. Secara umum, strategi perdagangan pembalikan arah purata bergerak mempunyai kelebihan mudah dipahami, dan merupakan strategi perdagangan yang praktikal dan disyorkan.


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

//@version=2
strategy("Moving Average Consecutive Up/Down Strategy (by ChartArt)", overlay=true)

// ChartArt's Moving Average Consecutive Up/Down Strategy
//
// Version 1.0
// Idea by ChartArt on December 30, 2015.
//
// This strategy goes long (or short) if there are several
// consecutive increasing (or decreasing) moving average
// values in a row in the same direction.
//
// The bars can be colored using the raw moving average trend.
// And the background can be colored using the consecutive
// moving average trend setting. In addition a experimental
// line of the moving average change can be drawn.
//
// The strategy is based upon the "Consecutive Up/Down Strategy"
// created by Tradingview.


// Input
Switch1 = input(true, title="Enable Bar Color?")
Switch2 = input(true, title="Enable Background Color?")
Switch3 = input(false, title="Enable Moving Average Trend Line?")

ConsecutiveBars = input(4,title="Consecutive Trend in Bars",minval=1)

// MA Calculation
MAlen = input(1,title="Moving Average Length: (1 = off)",minval=1)
SelectMA = input(2, minval=1, maxval=4, title='Moving Average: (1 = SMA), (2 = EMA), (3 = WMA), (4 = Linear)')
Price = input(close, title="Price Source")
Current =
 SelectMA == 1 ? sma(Price, MAlen) :
 SelectMA == 2 ? ema(Price, MAlen) :
 SelectMA == 3 ? wma(Price, MAlen) :
 SelectMA == 4 ? linreg(Price, MAlen,0) :
 na
Last =
 SelectMA == 1 ? sma(Price[1], MAlen) :
 SelectMA == 2 ? ema(Price[1], MAlen) :
 SelectMA == 3 ? wma(Price[1], MAlen) :
 SelectMA == 4 ? linreg(Price[1], MAlen,0) :
 na

// Calculation
MovingAverageTrend = if Current > Last
    1
else
    0

ConsecutiveBarsUp = MovingAverageTrend > 0.5 ? nz(ConsecutiveBarsUp[1]) + 1 : 0
ConsecutiveBarsDown = MovingAverageTrend < 0.5 ? nz(ConsecutiveBarsDown[1]) + 1 : 0
BarColor = MovingAverageTrend > 0.5 ? green : MovingAverageTrend < 0.5 ? red : blue
BackgroundColor = ConsecutiveBarsUp >= ConsecutiveBars ? green : ConsecutiveBarsDown >= ConsecutiveBars ? red : gray
MovingAverageLine = change(MovingAverageTrend) != 0 ? close : na

// Strategy
if (ConsecutiveBarsUp >= ConsecutiveBars)
    strategy.entry("ConsUpLE", strategy.long, comment="Bullish")
    
if (ConsecutiveBarsDown >= ConsecutiveBars)
    strategy.entry("ConsDnSE", strategy.short, comment="Bearish")

// output
barcolor(Switch1?BarColor:na)
bgcolor(Switch2?BackgroundColor:na)
plot(Switch3?MovingAverageLine:na, color=change(MovingAverageTrend)<0?green:red, linewidth=4)
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)

Lebih lanjut