Strategi Pengekstrakan Trend Penapisan Bandpass

Penulis:ChaoZhang, Tarikh: 2024-01-03 15:22:49
Tag:

img

Ringkasan

Strategi Pengekstrakan Trend Pengekstrakan Bandpass adalah strategi pengesanan trend saham berdasarkan penapis bandpass. Ia menggunakan purata bergerak yang ditimbang secara eksponensial dan penapisan bandpass untuk memproses siri harga dan mengekstrak komponen trend dalam harga sebagai isyarat untuk kemasukan dan keluar.

Prinsip-prinsip

Strategi pertama membina purata bergerak eksponensial berganda dengan menyesuaikan parameter Panjang dan Delta untuk mengawal panjang purata bergerak dan kelancaran. Kemudian ia menggunakan satu set transformasi matematik untuk mengekstrak komponen trend dari siri harga dan menyimpannya dalam pembolehubah xBandpassFilter. Akhirnya, ia mengira purata bergerak mudah xBandpassFilter, xMean, sebagai penunjuk untuk entri dan keluar.

Ia menjadi panjang apabila xMean melintasi di atas tahap Trigger, dan menjadi pendek apabila melintasi di bawah. Sensitiviti entri dan keluar boleh dikawal dengan menyesuaikan tahap Trigger.

Kelebihan

  1. EMA berganda berkesan menapis beberapa bunyi dalam harga untuk strategi yang lebih stabil.
  2. Penapisan bandpass hanya mengekstrak komponen trend dalam harga, mengelakkan whipsaws.
  3. Lebih sedikit parameter memudahkan pengoptimuman dan kawalan risiko.

Risiko

  1. Kelewatan masa menyebabkan peluang yang hilang daripada pembalikan cepat.
  2. EMA berganda dan penapisan jalur mempunyai kesan lulus rendah, mengurangkan kepekaan.
  3. Penapisan berlebihan boleh menyebabkan kehilangan trend yang kuat jika parameter tidak disesuaikan dengan baik.

Memendekkan panjang boleh memperbaiki masalah kelewatan.

Peningkatan

  1. Tambah stop loss untuk mengawal kerugian perdagangan tunggal.
  2. Sistem purata bergerak berganda boleh meningkatkan kestabilan.
  3. Gabungkan dengan bunyi atau isyarat pembalikan lain untuk mengelakkan whipsaws.
  4. Gunakan pembelajaran mesin atau algoritma genetik untuk mengoptimumkan parameter.

Kesimpulan

Strategi ini agak stabil dengan prestasi yang baik dalam pasaran yang kuat. Pengoptimuman lanjut dalam pelbagai persekitaran pasaran dapat menjadikannya lebih menguntungkan. Ia menjamin penyelidikan dan aplikasi lanjut.


/*backtest
start: 2022-12-27 00:00:00
end: 2024-01-02 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version = 2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 14/12/2016
// The related article is copyrighted material from Stocks & Commodities Mar 2010
//
// You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="Extracting The Trend Strategy Backtest")
Length = input(20, minval=1)
Delta = input(0.5)
Trigger = input(0)
reverse = input(false, title="Trade reverse")
hline(Trigger, color=blue, linestyle=line)
xPrice = hl2
beta = cos(3.1415 * (360 / Length) / 180)
gamma = 1 / cos(3.1415 * (720 * Delta / Length) / 180)
alpha = gamma - sqrt(gamma * gamma - 1)
xBandpassFilter = 0.5 * (1 - alpha) * (xPrice - xPrice[2]) + beta * (1 + alpha) * nz(xBandpassFilter[1]) - alpha * nz(xBandpassFilter[2])
xMean = sma(xBandpassFilter, 2 * Length)
pos = iff(xMean > Trigger, 1,
	   iff(xMean < Trigger, -1, nz(pos[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)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(xMean, color=red, title="ExTrend")

Lebih lanjut