Heikin Ashi dan Kaufman Strategi Perdagangan Purata Pergerakan Adaptif


Tarikh penciptaan: 2023-12-19 15:51:30 Akhirnya diubah suai: 2023-12-19 15:51:30
Salin: 1 Bilangan klik: 605
1
fokus pada
1166
Pengikut

Heikin Ashi dan Kaufman Strategi Perdagangan Purata Pergerakan Adaptif

Gambaran keseluruhan

Heikin Ashi dan Kaufman Adaptive Moving Average Trading Strategy (HLC3/Kaufman Strategy) adalah strategi perdagangan kuantitatif yang menggabungkan garis Heikin Ashi K dan Kaufman Adaptive Moving Average (KAMA). Strategi ini menggunakan garis Heikin Ashi K untuk menentukan arah perdagangan, kemudian menggunakan Kaufman Adaptive Moving Average sebagai penapis isyarat perdagangan.

Prinsip Strategi

Strategi ini terdiri daripada beberapa bahagian:

  1. Hitung harga pembukaan dan penutupan Heikin Ashi. Harga ini mencerminkan harga pertengahan entiti garis K, yang boleh menyaring sebahagian daripada kebisingan.

  2. Kaufman Adaptive Moving Average ((KAMA) │KAMA mampu menyesuaikan kehalusan secara dinamik, dan tidak akan mengalami banyak kemerosotan apabila pasaran berubah secara mendadak.

  3. Bandingkan hubungan harga penutupan Heikin Ashi dengan saiz KAMA untuk menentukan isyarat beli dan jual. Isyarat beli dihasilkan apabila harga penutupan Heikin Ashi melewati KAMA; isyarat jual dihasilkan apabila harga penutupan Heikin Ashi melewati KAMA.

  4. Tambahan ADX boleh digunakan untuk menilai kekuatan dan kelemahan trend dan mengelakkan isyarat yang salah dalam pasaran yang bergolak.

Analisis kelebihan

Kelebihan utama strategi ini adalah gabungan penapisan berganda Heikin Ashi K dan KAMA, yang dapat mengurangkan perdagangan bunyi dan isyarat yang salah. Kelebihan spesifiknya adalah sebagai berikut:

  1. Kabel Heikin Ashi K sendiri mempunyai fungsi penghapusan bising, yang menapis beberapa lonjakan jangka pendek.
  2. KAMA lebih sensitif daripada SMA dan EMA, dan dapat mengesan perubahan trend secara berkesan di peringkat besar.
  3. Mekanisme penapisan berganda Heikin Ashi dan KAMA dapat mengurangkan kesilapan.
  4. Indikator ADX boleh dikonfigurasi untuk menilai trend yang kuat atau lemah, mengelakkan isyarat yang salah.
  5. Isyarat dagangan adalah jelas, mudah dan fleksibel.

Analisis risiko

  1. Dalam beberapa kes gegaran, isyarat yang salah boleh dihasilkan. Parameter harus disesuaikan dengan betul untuk mengelakkan risiko ini.
  2. Pengambilan yang terlalu sensitif mudah mengejar tinggi dan rendah, parameter KAMA harus dilonggarkan dengan sewajarnya.
  3. Dalam trend jangka panjang, KAMA mungkin tertinggal dari perubahan harga. Ini perlu digabungkan dengan indikator ADX untuk menentukan kestabilan trend.

Arah pengoptimuman

  1. Mengoptimumkan harga penutupan Heikin Ashi dan parameter KAMA untuk mencari keadaan penapisan terbaik.
  2. Menambah indikator trend seperti ADX, memastikan isyarat perdagangan dihasilkan apabila trend stabil.
  3. Dalam kombinasi dengan petunjuk lain seperti Boll Line untuk menetapkan standard hentian kerugian.
  4. Uji kestabilan parameter yang berbeza untuk mencari kombinasi parameter yang optimum.

ringkaskan

Heikin Ashi dan Kaufman Adaptive Moving Average Trading Strategy adalah strategi pengesanan trend dengan penyaringan ganda. Ia menggabungkan fungsi penghapusan kebisingan Heikin Ashi K Line dan kelebihan KAMA untuk mengesan perubahan trend dengan cepat, yang dapat menyaring perdagangan kebisingan dengan berkesan, mengurangkan isyarat yang salah, sesuai untuk mengesan trend jangka menengah dan panjang.

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

//@version=2
//Heikin/Kaufman   by Marco

strategy("HLC3/Kaufman Strategy ",shorttitle="HLC3/KAU",overlay=true)
res1 = input(title="Hlc3 Time Frame", defval="D")
test = input(1,"Hlc3 Shift")
sloma = input(20,"Slow EMA Period")

//Kaufman MA
Length = input(5, minval=1)
xPrice = input(hlc3)
xvnoise = abs(xPrice - xPrice[1])
Fastend = input(2.5,step=.5)
Slowend = input(20)
nfastend = 2/(Fastend + 1)
nslowend = 2/(Slowend + 1)
nsignal = abs(xPrice - xPrice[Length])
nnoise = sum(xvnoise, Length)
nefratio = iff(nnoise != 0, nsignal / nnoise, 0)
nsmooth = pow(nefratio * (nfastend - nslowend) + nslowend, 2) 
nAMA = nz(nAMA[1]) + nsmooth * (xPrice - nz(nAMA[1]))

//Heikin Ashi Open/Close Price
//ha_t = heikinashi(tickerid)
//ha_close = request.security(ha_t, period, nAMA)
//mha_close = request.security(ha_t, res1, hlc3)
bha_close = request.security(syminfo.ticker, timeframe.period, nAMA)
bmha_close = request.security(syminfo.ticker, res1, hlc3)

//Moving Average
//fma = ema(mha_close[test],1)
//sma = ema(ha_close,sloma)
//plot(fma,title="MA",color=black,linewidth=2,style=line)
//plot(sma,title="SMA",color=red,linewidth=2,style=line)
bfma = ema(bmha_close[test],1)
bsma = ema(bha_close,sloma)
plot(bfma,title="MA",color=black,linewidth=2,style=line)
plot(bsma,title="SMA",color=red,linewidth=2,style=line)
//Strategy
//golong =  crossover(fma,sma) 
//goshort =   crossunder(fma,sma)
golong =  crossover(bfma,bsma) 
goshort =   crossunder(bfma,bsma)
strategy.entry("Buy",strategy.long,when = golong)
strategy.entry("Sell",strategy.short,when = goshort)