Strategi perdagangan kitaran dua faktor


Tarikh penciptaan: 2023-12-05 17:56:27 Akhirnya diubah suai: 2023-12-05 17:56:27
Salin: 2 Bilangan klik: 614
1
fokus pada
1619
Pengikut

Strategi perdagangan kitaran dua faktor

Gambaran keseluruhan

Strategi perdagangan pusingan dua faktor adalah strategi perdagangan kuantitatif. Ia menggabungkan dua jenis penunjuk teknikal yang berbeza untuk menghasilkan isyarat perdagangan untuk mengikuti trend pasaran dan memperoleh keuntungan tambahan.

Kelebihan strategi ini adalah bahawa anda boleh mencari peluang perdagangan dengan menggabungkan faktor yang berbeza, pengesahan ganda dapat meningkatkan kebolehpercayaan isyarat dan mengurangkan kemungkinan perdagangan yang salah. Pada masa yang sama, strategi ini memanfaatkan sepenuhnya kelebihan perdagangan berputar, iaitu menghentikan kerugian tepat pada masanya dan membuka posisi terbalik, yang dapat mengawal risiko dengan berkesan.

Prinsip Strategi

Strategi ini terdiri daripada dua bahagian:

  1. 123 Strategi berbalik Strategi ini berasal dari Ulf Jensen’s How I Flipped My Money in the Futures Market. Logik perdagangannya adalah: apabila harga penutupan dua hari berturut-turut lebih tinggi daripada harga penutupan hari sebelumnya, dan 9 hari K perlahan di bawah 50, anda boleh membuat keuntungan; apabila harga penutupan dua hari berturut-turut lebih rendah daripada harga penutupan hari sebelumnya, dan 9 hari K cepat di atas 50.

  2. Strategi penyokong/penyokong rintangan Strategi ini menghasilkan isyarat dengan menilai sama ada harga akan menembusi sokongan atau rintangan penting. Ia akan menjadi bullish apabila harga menembusi harga tertinggi pada hari perdagangan sebelumnya, dan bearish apabila harga menembusi harga terendah pada hari perdagangan sebelumnya.

Isyarat gabungan kedua-dua strategi di atas, masuk ke kedudukan apabila kedua-dua isyarat sepadan, jika tidak, kosongkan. Pada masa yang sama, mod pembukaan kedudukan terbalik telah ditetapkan, untuk menghentikan kerugian tepat pada masanya dan membalikkan perdagangan apabila perubahan pasaran, untuk mencapai operasi kitaran dana.

Analisis kelebihan

Strategi ini mempunyai kelebihan berikut:

  1. Reka bentuk pelbagai faktor memastikan kebolehpercayaan isyarat yang tinggi. Strategi pembalikan 123 dan strategi sokongan rintangan saling disahkan, yang dapat mengurangkan isyarat yang salah.

  2. Mekanisme perdagangan kitaran membolehkan strategi untuk menyesuaikan diri dengan perubahan pasaran dan mengawal kerugian unilateral dengan berkesan.

  3. Penunjuk stochastics 9 hari digunakan untuk menyaring kebisingan pasaran dan menjadikan isyarat lebih jelas.

  4. Risiko lebih rendah dan penarikan balik yang lebih kecil daripada strategi faktor tunggal. Faktor-faktor berbilang dapat membentuk gabungan dan menekan pengaruh perubahan tidak rasional terhadap strategi.

Analisis risiko

Strategi ini mempunyai beberapa risiko:

  1. Tidak dapat menangkap trend dengan baik dalam keadaan yang bergolak, ia akan sering menghentikan kerugian untuk membuka semula kedudukan dan meningkatkan kos perdagangan.

  2. Pengaturan parameter Stochastics mempengaruhi kualiti isyarat. Parameter yang tidak betul boleh menyebabkan isyarat salah letak, kualiti menurun. Parameter perlu dioptimumkan untuk ujian berulang.

  3. Walaupun reka bentuk dua faktor meningkatkan kualiti isyarat, ia juga meningkatkan kesan penutup bising pasaran terhadap strategi. Ia memerlukan lebih banyak kebijaksanaan dalam membina dan mengesahkan strategi.

Arah pengoptimuman

Kita boleh mengoptimumkan lagi strategi ini dalam beberapa cara:

  1. Uji Stochastics untuk tempoh yang berbeza untuk mencari kombinasi parameter terbaik untuk menghapuskan bunyi pasaran

  2. Menambah penapis trend untuk menyaring pergerakan bergolak dan hanya membuka kedudukan di bawah trend yang jelas

  3. Mengoptimumkan algoritma tetapan garis berhenti untuk mengurangkan kos urus niaga sambil memastikan halangan berkesan

  4. Uji kombinasi faktor yang berbeza untuk mencari isyarat perdagangan yang lebih jelas dan strategi yang lebih stabil

ringkaskan

Strategi ini memperoleh kualiti isyarat yang lebih tinggi dan keuntungan penyesuaian risiko melalui reka bentuk dua faktor. Pada masa yang sama, menggunakan mekanisme perdagangan bergilir untuk mengawal kerugian perdagangan unilateral dengan berkesan. Strategi ini mencapai keseimbangan yang baik antara risiko dan keuntungan.

Kod sumber strategi
/*backtest
start: 2023-11-04 00:00:00
end: 2023-12-04 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 13/11/2019
// 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
// Cueing Off Support And Resistance Levels, by Thom Hartle 
// modified by HPotter for trade signals.
// The related article is copyrighted material from Stocks & Commodities.
//
// 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

COSRL(SigVal) =>
    pos = 0.0
    xLow = low
    xHigh = high
    xHighD = security(syminfo.tickerid,"W", high[1])
    xLowD  = security(syminfo.tickerid,"W", low[1])
    sigpre1 = iff(xHigh <= xLowD, -1,
                 iff(xLow >= xHighD, 1, nz(pos[1], 0))) 
    sigpre2 = iff( xHigh <= xHighD, -1,
                 iff(xLow >= xLowD, 1, nz(pos[1], 0))) 
    pos := SigVal ? sigpre1 : sigpre2
    pos

strategy(title="Combo Backtest 123 Reversal & Cueing Off Support And Resistance Levels", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
SigVal = input(true, title="To Line \ From Line")
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posCOSRL = COSRL(SigVal)
pos = iff(posReversal123 == 1 and posCOSRL == 1 , 1,
	   iff(posReversal123 == -1 and posCOSRL == -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 )