
Strategi ini menggunakan teknik purata bergerak sebagai isyarat perdagangan utama, digabungkan dengan strategi Heiken Curve Indicator untuk mengesan trend pasaran berbalik dan menangkap pergerakan harga jangka pendek. Strategi ini mengoptimumkan strategi Heiken Linear dari Gustavo Branow, untuk menghasilkan output isyarat tanpa lag dengan menghilangkan fungsi cat berat.
HACKEN NAMAN, sebagai garis utama harga.
Hiraikan harga penutupan Heiken dengan purata bergerak pantas fma dan purata bergerak perlahan sma.
Apabila fma di atas memakai sma menghasilkan isyarat beli; apabila fma di bawah memakai sma menghasilkan isyarat jual.
Strategi ini menghapuskan fungsi overlay dari strategi asal dan dapat menghasilkan isyarat dagangan dalam masa nyata untuk mengelakkan data pengesanan semula.
Dengan menggunakan indikator Heiken Curve, ia dapat mengesan dengan lebih tepat titik-titik perubahan trend pasaran.
Menggunakan gabungan purata dua, ia boleh menyaring penembusan palsu dengan berkesan.
Keluaran isyarat tanpa lag, prestasi cakera tetap boleh dipercayai.
Parameter pengoptimuman fleksibel, boleh disesuaikan untuk pelbagai jenis.
Strategi logiknya mudah difahami dan mudah dilaksanakan.
Ia boleh dikonfigurasikan sebagai strategi perdagangan automatik sepenuhnya, mengurangkan risiko operasi manusia.
Haiken Average tidak beraksi dengan baik dalam pasaran harga yang bergolak.
Strategi perdagangan dua hala mudah menghasilkan lebih banyak isyarat palsu.
Parameter purata yang tidak betul boleh menyebabkan kehilangan trend atau peningkatan pengunduran.
Ia mempunyai kos urus niaga dan akan memberi kesan kepada keuntungan bersih.
Ia memerlukan kaedah penangguhan yang ketat untuk mengawal kerugian tunggal.
Strategi perdagangan automatik mempunyai risiko penarikan balik dan memerlukan pengurusan dana yang baik.
Kaedah pengurusan risiko:
Menggabungkan indikator turun naik untuk mengelakkan kawasan yang bergolak.
Menambah syarat penapisan untuk memastikan kualiti isyarat dagangan.
Optimumkan ujian parameter, pilih kombinasi garis rata yang sesuai.
Mengubah frekuensi transaksi untuk mengurangkan kos transaksi.
Menetapkan kedudukan stop loss yang munasabah untuk mengawal kerugian tunggal.
Pengurusan wang yang optimum, kawalan ketat terhadap saiz kedudukan.
Mengoptimumkan kombinasi parameter dua hala rata untuk meningkatkan kualiti isyarat.
Meningkatkan penapis trend untuk mengelakkan kawasan yang bergolak.
Gabungan penunjuk kuantiti pertukaran untuk memastikan trend boleh dipercayai.
Tetapkan hentian dinamik dan hentian penjejakan untuk mengoptimumkan pengumpulan keuntungan.
Mengintegrasikan modul pengurusan wang untuk mengawal saiz kedudukan.
Menambah modul perdagangan algoritma untuk automasi penuh.
Strategi ini mengintegrasikan penghakiman trend garis lurus Heiken dan teknologi penapisan gabungan garis lurus dua, untuk mewujudkan strategi pengesanan trend jangka pendek yang mudah dan praktikal. Strategi menghasilkan isyarat yang dipercayai dalam masa nyata, prestasi yang baik di lapangan. Dengan pengoptimuman parameter, pengaturan langkah-langkah kawalan angin, dan pengembangan modul perdagangan algoritma, ia dapat dioptimumkan sebagai strategi perdagangan automatik yang boleh dipercayai.
/*backtest
start: 2022-10-25 00:00:00
end: 2023-10-31 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
//Heikin/Kaufman by Gustavo v5
// strategy('Heikin Ashi EMA v5 no repaint ', shorttitle='Heikin Ashi EMA v5 no repaint', overlay=true, max_bars_back=500, default_qty_value=1000, initial_capital=100000, currency=currency.EUR)
// Settings - H/K
res1 = input.timeframe(title='Heikin Ashi EMA Time Frame', defval='D')
test = input(0, 'Heikin Ashi EMA Shift')
sloma = input(20, 'Slow EMA Period')
nAMA = hlc3
//Kaufman MA
Length = input.int(5, minval=1)
xPrice = input(hlc3)
xvnoise = math.abs(xPrice - xPrice[1])
Fastend = input.float(2.5, step=.5)
Slowend = input(20)
nfastend = 2 / (Fastend + 1)
nslowend = 2 / (Slowend + 1)
nsignal = math.abs(xPrice - xPrice[Length])
nnoise = math.sum(xvnoise, Length)
nefratio = nnoise != 0 ? nsignal / nnoise : 0
nsmooth = math.pow(nefratio * (nfastend - nslowend) + nslowend, 2)
nAMAn = nz(nAMA[1]) + nsmooth * (xPrice - nz(nAMA[1]))
//Heikin Ashi Open/Close Price
ha_t = ticker.heikinashi(syminfo.tickerid)
ha_close = request.security(ha_t, timeframe.period, nAMAn)
mha_close = request.security(ha_t, res1, hlc3)
//Moving Average
fma = ta.ema(mha_close[test], 1)
sma = ta.ema(ha_close, sloma)
plot(fma, title='MA', color=color.new(color.black, 0), linewidth=2, style=plot.style_line)
plot(sma, title='SMA', color=color.new(color.red, 0), linewidth=2, style=plot.style_line)
//Strategy
golong = ta.crossover(fma, sma)
goshort = ta.crossunder(fma, sma)
strategy.entry('Buy', strategy.long, when=golong)
strategy.entry('Sell', strategy.short,when=goshort)