Strategi perdagangan gabungan penunjuk berbilang


Tarikh penciptaan: 2023-10-26 15:22:28 Akhirnya diubah suai: 2023-10-26 15:22:28
Salin: 0 Bilangan klik: 693
1
fokus pada
1617
Pengikut

Strategi perdagangan gabungan penunjuk berbilang

Gambaran keseluruhan

Strategi ini menggunakan CCI, ADX, dan AO dalam kombinasi untuk mencapai keputusan kosong dan menghasilkan isyarat perdagangan. Di antaranya, CCI digunakan untuk menentukan sama ada pasaran terlalu banyak membeli, ADX digunakan untuk menentukan arah trend, dan AO digunakan untuk membantu menentukan pasaran goyah. Kombinasi pelbagai petunjuk dapat meningkatkan kestabilan dan kecekapan sistem perdagangan.

Prinsip Strategi

  1. Indeks CCI digunakan untuk menentukan sama ada pasaran terlalu beli atau terlalu jual. Apabila CCI rendah daripada -100, ia adalah terlalu jual, dan apabila ia lebih tinggi daripada 100 ia adalah terlalu beli.

  2. Indikator ADX menilai kekuatan trend. DI+ mewakili kekuatan trend naik, DI- mewakili kekuatan trend turun. ADX mewakili kekuatan trend purata. Strategi ini dilakukan lebih banyak apabila DI+ berada di bawah 25.

  3. Penunjuk AO menilai tenaga aerodinamis. AO terdiri daripada SMA cepat dikurangkan daripada SMA perlahan. Naik AO mewakili peningkatan kekuatan aerodinamis semasa, turun AO mewakili peningkatan kekuatan aerodinamis.

  4. Menggabungkan beberapa petunjuk di atas, membentuk strategi perdagangan sebagai: melakukan lebih banyak apabila CCI < 0 dan DI + < 25 dan AO < 0; apabila DI + > 25 dan posisi kosong.

  5. Dinamika mengira jumlah pesanan sebagai hak dan faedah akaun yang dibahagikan dengan harga penutupan dan penurunan, untuk mencapai jumlah pesanan yang disesuaikan dengan perubahan hak dan faedah akaun.

  6. Gunakan strategi.entry untuk memberi isyarat berganda, strategi.close untuk memberi isyarat kedudukan rata.

Analisis kelebihan

  1. Dengan menggunakan CCI untuk menilai keadaan overbought dan oversold, ia dapat menyaring dengan berkesan isyarat palsu yang dihasilkan oleh pergerakan pergerakan.

  2. Indeks ADX menilai kewujudan dan kekuatan trend, dan dapat menangkap isyarat trend yang lebih kuat.

  3. Penunjuk AO membantu menilai kehangatan dan momentum trend, dan mengelakkan perdagangan dalam keadaan goyah.

  4. Kombinasi pelbagai indikator dapat saling mengesahkan isyarat, meningkatkan kebolehpercayaan isyarat, dan mengurangkan isyarat palsu secara berkesan.

  5. Jumlah pesanan yang dikira secara dinamik boleh menyesuaikan saiz kedudukan dengan perubahan hak dan kepentingan akaun, dan mempunyai kesedaran pengurusan wang yang lebih kuat.

  6. Strategi logiknya jelas dan mudah difahami dan dikesan.

Analisis risiko

  1. Indeks CCI mempunyai keupayaan yang lemah untuk mengenal pasti pergerakan gegaran vsdk, yang mungkin menghasilkan isyarat yang salah.

  2. Indeks ADX ketinggalan dan mungkin terlepas titik perubahan trend.

  3. Penunjuk AO tidak berkesan dalam penilaian penyusunan penyimpangan.

  4. Walaupun kombinasi pelbagai penunjuk dapat meningkatkan kebolehpercayaan isyarat, penyetelan penunjuk yang tidak betul juga boleh menyebabkan penapisan yang berlebihan yang menyebabkan peluang perdagangan yang hilang.

  5. DYNAMICAOR berkaitan dengan turun naik pasaran, perlu menyesuaikan parameter mengikut pelbagai jenis dan keadaan pasaran.

  6. Kemungkinan pengeluaran strategi adalah besar dan memerlukan pengurusan dana yang ketat untuk mengawal risiko.

Arah pengoptimuman

  1. Mengoptimumkan parameter CCI untuk mengenal pasti kawasan yang lebih banyak dibeli dan dijual di pasaran yang berbeza.

  2. Mengoptimumkan parameter ADX untuk menangkap perubahan trend dalam pelbagai jenis dan keadaan pasaran.

  3. Menyesuaikan parameter AO untuk mengenal pasti trend sebenar di bawah persekitaran yang berbeza.

  4. Uji kombinasi berat yang berbeza untuk mencari parameter yang optimum.

  5. Menambah strategi hentikan kerugian untuk mengawal penarikan balik.

  6. Kaedah ini digunakan untuk mengelakkan penembusan palsu.

  7. Menyesuaikan kedudukan tetap mengikut ciri-ciri pelbagai jenis.

ringkaskan

Strategi ini menggunakan gabungan tiga indikator CCI, ADX dan AO, untuk membentuk isyarat melakukan banyak yang lebih dipercayai. Pada masa yang sama, dengan pengendalian jumlah pesanan dan kedudukan yang dikira secara dinamik, risiko dapat dikawal dengan berkesan.

Kod sumber strategi
/*backtest
start: 2022-10-19 00:00:00
end: 2023-10-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Strategy Niel", shorttitle="Strategy Niel", max_bars_back=2000, initial_capital=1000)

//Input variables
buywhenadxabove = input(25)
buywhendiplusbelow = input(10)
buywhenccibelow = input(0)
buywhenawesomeoscillatorbelow = input(0)
sellwhendiplusabove = input(25)

//CCI script
numberofbarsforcci = input(20)
CCI = cci(close,numberofbarsforcci)

//+DI and ADX
adxlen = input(14, title="ADX Smoothing")
dilen = input(14, title="DI Length")
dirmov(len) =>
	up = change(high)
	down = -change(low)
	truerange = rma(tr, len)
	plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, len) / truerange)
	minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, len) / truerange)
	[plus, minus]

adx(dilen, adxlen) => 
	[plus, minus] = dirmov(dilen)
	sum = plus + minus
	adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)
	[adx, plus, minus]

[sig, up, down] = adx(dilen, adxlen)

//plot(sig, color=red, title="ADX")
//plot(up, color=blue, title="+DI")
//plot(down, color=orange, title="-DI")


//Awesome Oscillator
nLengthSlow = input(34, minval=1, title="Length Slow")
nLengthFast = input(5, minval=1, title="Length Fast")
xSMA1_hl2 = sma(hl2, nLengthFast)
xSMA2_hl2 = sma(hl2, nLengthSlow)
xSMA1_SMA2 = xSMA1_hl2 - xSMA2_hl2
cClr = xSMA1_SMA2 > xSMA1_SMA2[1] ? blue : red
//plot(xSMA1_SMA2, style=histogram, linewidth=1, color=cClr)

buy = sig > buywhenadxabove and up < buywhendiplusbelow  and CCI < buywhenccibelow and xSMA1_SMA2 < buywhenawesomeoscillatorbelow 

ordersize=floor(strategy.equity/close) // Floor returns largest integer, strategy.equity gives total equity remaining - allows to dynamically calculate the order size as the account equity increases or decreases.
strategy.entry("long",strategy.long,ordersize,when= buy) //strategy.entry let's you enter the market variables id ("long"), strategy.long (long position entry), size of the order and when the order should happen
bought = strategy.position_size[0] > strategy.position_size[1]
entry_price = valuewhen(bought, open, 0)
sell = up > sellwhendiplusabove 
strategy.close("long", when=sell ) //strategy.close let's you close your position with variables id ('long') and when this should happen