Sumber dimuat naik... memuat...

Strategi Pengesanan Trend Kebalikan Rata-rata Bergerak Berganda

Penulis:ChaoZhang, Tarikh: 2024-01-04 15:48:15
Tag:

img

Ringkasan

Strategi ini adalah strategi gabungan yang menggabungkan tiga strategi yang berbeza untuk menjana isyarat perdagangan. Pertama, ia menggunakan strategi corak pembalikan 123, yang menghasilkan isyarat perdagangan apabila harga membentuk corak tertentu. Kedua, ia menggunakan strategi crossover purata bergerak, yang menilai trend dengan membandingkan persilangan antara purata bergerak dan purata bergerak eksponensial. Akhirnya, strategi ini juga membolehkan memilih sama ada untuk berdagang sebaliknya. Gabungan tiga strategi ini dapat menangkap titik pembalikan trend sambil menapis beberapa isyarat perdagangan yang bising.

Logika Strategi

123 Strategi corak pembalikan

Strategi ini berasal dari kaedah yang dicadangkan dalam buku Ulf Jensen How I Tripped My Money in the Futures Market. Strategi ini berdagang berdasarkan harga penutupan saham dan penunjuk Stochastic Oscillator. Khususnya, peraturan adalah:

Apabila harga penutupan lebih tinggi daripada harga penutupan sebelumnya dan juga lebih tinggi daripada harga penutupan dua hari yang lalu, sementara Stochastic Slow 9-period berada di bawah 50, pergi panjang. Apabila harga penutupan lebih rendah daripada harga penutupan sebelumnya dan juga lebih rendah daripada harga penutupan dua hari yang lalu, sementara Stochastic Fast 9-period berada di atas 50, pergi pendek.

Oleh itu, ia dapat menangkap peluang pembalikan apabila harga membentuk paras tertinggi atau terendah baru tiga hari sambil digabungkan dengan isyarat oversold atau overbought dari penunjuk stokastik.

Strategi Crossover Purata Bergerak

Strategi ini menggunakan persilangan antara purata bergerak mudah tempoh panjang MA dan purata bergerak eksponensial tempoh panjangEMA untuk menjana isyarat perdagangan.

Apabila purata bergerak eksponensial melintasi di atas purata bergerak mudah, pergi panjang. Apabila purata bergerak eksponensial melintasi di bawah purata bergerak mudah, pergi pendek.

Oleh itu, ia dapat menilai secara intuitif titik perubahan trend harga. Juga, purata bergerak eksponensial lebih sensitif terhadap perubahan harga dan dapat mengeluarkan isyarat perdagangan lebih awal.

Perdagangan Berbalik

Strategi ini membolehkan anda memilih sama ada untuk berdagang sebaliknya. Jika perdagangan terbalik dipilih, isyarat panjang menjadi isyarat pendek, dan sebaliknya. Ini mungkin lebih bermanfaat bagi sesetengah peniaga yang yakin terdapat tingkah laku yang mengelirukan di pasaran.

Kelebihan Strategi

Strategi gabungan ini mewarisi kelebihan pelbagai strategi tunggal dalam beberapa tahap, yang dapat mengurangkan risiko strategi tunggal dan meningkatkan pulangan.

Khususnya, strategi corak pembalikan 123 boleh menangkap giliran tepat pada masanya apabila harga menunjukkan tanda-tanda pembalikan; strategi crossover purata bergerak boleh menentukan arah trend; membenarkan perdagangan terbalik dapat mengurangkan kebarangkalian terperangkap.

Secara amnya, strategi ini sensitif, mengesan trend dengan baik, dan boleh dikonfigurasi khusus untuk memenuhi persekitaran pasaran yang berbeza.

Risiko Strategi

Risiko yang paling penting dari strategi ini adalah bahawa strategi gabungan itu sendiri agak rumit, menjadikannya sukar untuk menentukan sebab kegagalan / kejayaan dan tidak menguntungkan untuk pengoptimuman strategi.

Selain itu, seperti mana-mana strategi analisis teknikal yang lain, strategi ini juga menghadapi risiko seperti terperangkap dan kegagalan stop-loss. Khususnya, ia cenderung untuk menghasilkan isyarat palsu apabila harga turun naik dengan tajam. Juga, garis stop-loss cenderung dipecahkan dalam trend yang berterusan dan ganas.

Untuk mengurangkan risiko ini, kita boleh menyesuaikan parameter dengan sewajarnya untuk menjadikan penunjuk lebih stabil, melonggarkan garis stop-loss dengan munasabah, atau menggunakan kaedah seperti stop-loss jumlah.

Pengoptimuman

Strategi ini boleh dioptimumkan lagi dalam aspek berikut:

  1. Tambah syarat penapisan seperti jumlah dagangan dan turun naik untuk menapis isyarat yang tidak sah.

  2. Mengoptimumkan parameter untuk mencari kombinasi parameter terbaik.

  3. Cuba penunjuk crossover purata bergerak yang berbeza untuk mencari yang paling sesuai dengan pasaran semasa.

  4. Meningkatkan model pembelajaran mesin untuk mengoptimumkan parameter secara automatik menggunakan teknologi AI.

Ringkasan

Sebagai strategi gabungan, strategi ini menggabungkan kelebihan pelbagai strategi tunggal dan dapat dengan berkesan mengesan pembalikan trend. Ia sesuai untuk operasi jangka menengah hingga panjang. Dengan pengoptimuman yang betul, pengurusan risiko, dll., Prestasinya dapat ditingkatkan dengan ketara. Ia layak penyelidikan mendalam, penerapan, dan peningkatan oleh pengamal perdagangan kuantitatif.


/*backtest
start: 2023-12-27 00:00:00
end: 2024-01-03 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 19/06/2020
// This is combo strategies for get a cumulative signal. 
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// The Moving Average Crossover trading strategy is possibly the most popular
// trading strategy in the world of trading. First of them were written in the
// middle of XX century, when commodities trading strategies became popular.
// This strategy is a good example of so-called traditional strategies. 
// Traditional strategies are always long or short. That means they are never 
// out of the market. The concept of having a strategy that is always long or 
// short may be scary, particularly in today’s market where you don’t know what 
// is going to happen as far as risk on any one market. But a lot of traders 
// believe that the concept is still valid, especially for those of traders who 
// do their own research or their own discretionary trading. 
// This version uses crossover of moving average and its exponential moving average.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos

MACross(LengthMA,LengthEMA) =>
    pos = 0
    xMA = sma(close, LengthMA)
    xEMA = ema(xMA, LengthEMA)
    pos := iff(xEMA < xMA , 1,
	       iff(xEMA > xMA, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & EMA & MA Crossover", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
LengthMA = input(10, minval=1)
LengthEMA = input(10,minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posMACross = MACross(LengthMA,LengthEMA)
pos = iff(posReversal123 == 1 and posMACross == 1 , 1,
	   iff(posReversal123 == -1 and posMACross == -1, -1, 0)) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1 , 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )

Lebih lanjut