Strategi ini menghitung lilin Heikin-Ashi untuk meratakan garis harga dan menggabungkan indikator MACD untuk menghasilkan sinyal perdagangan, menerapkan strategi kuantitatif yang melacak tren jangka menengah hingga panjang.
Hitung harga buka, tutup, tinggi dan rendah Heikin-Ashi untuk memetakan lilin Heikin-Ashi dan tren harga yang halus.
Atur parameter MACD: panjang cepat 12, panjang lambat 26, panjang sinyal 9.
Hitung garis lambat DEA, garis cepat DEA dan histogram MACD.
Pergi panjang ketika histogram MACD melintasi di atas 0; Pergi pendek ketika melintasi di bawah 0.
Tambahkan filter tahun, bulan dan hari untuk membatasi perdagangan ke rentang waktu yang ditentukan.
Lilin Heikin-Ashi menyaring kebisingan pasar secara efektif untuk mengidentifikasi tren.
MACD memberikan sinyal perdagangan tren yang jelas.
Menggabungkan Heikin-Ashi dan MACD meningkatkan kualitas sinyal dan profitabilitas.
Filter waktu membantu mengoptimalkan jadwal perdagangan berdasarkan kinerja historis.
Potensi kerugian besar selama pembalikan tren.
Parameter MACD yang tidak tepat dapat menghasilkan sinyal yang berlebihan dan tidak berharga.
Filter waktu kaku mungkin kehilangan peluang perdagangan yang baik.
Pengendalian:
Tetapkan stop loss/take profit untuk membatasi kerugian.
Mengoptimalkan parameter MACD untuk menentukan kombinasi terbaik.
Tambahkan indikator untuk menentukan tren lokal.
Uji kombinasi parameter yang berbeda untuk menemukan yang optimal.
Tambahkan mekanisme stop loss seperti trailing stop loss.
Tambahkan indikator seperti EMA, KDJ untuk menentukan titik pembalikan.
Tambahkan indikator volume untuk menghindari perbedaan.
Strategi ini meluruskan aksi harga dengan lilin Heikin-Ashi dan menentukan arah tren dan sinyal masuk dengan indikator MACD Tradingview untuk menerapkan strategi kuantum yang mengikuti tren. Dibandingkan dengan strategi MACD biasa, ini menyaring beberapa kebisingan untuk identifikasi tren yang lebih jelas. Peningkatan lebih lanjut pada optimasi parameter, stop loss, dan indikator combo dapat meningkatkan stabilitas dan profitabilitasnya.
/*backtest start: 2023-11-18 00:00:00 end: 2023-12-18 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("MACD ASHI BARS .v1 ", overlay=false,default_qty_type = strategy.percent_of_equity, default_qty_value = 100,commission_type=strategy.commission.percent,commission_value=0.1,slippage=1) // Calculation HA Values haopen = 0.0 haclose = (open + high + low + close) / 4 haopen := na(haopen[1]) ? (open + close) / 2 : (haopen[1] + haclose[1]) / 2 hahigh = max(high, max(haopen, haclose)) halow = min(low, min(haopen, haclose)) // HA colors hacolor = haclose > haopen ? color.green : color.red src=haclose fastmacd = input(12,title='MACD Fast Line Length') slowmacd = input(26,title='MACD Slow Line Length') signalmacd = input(9,title='Signal Line Length') macdslowline1 = sma(src,slowmacd) macdslowline2 = sma(macdslowline1,slowmacd) DEMAslow = ((2 * macdslowline1) - macdslowline2 ) macdfastline1 = sma(src,fastmacd) macdfastline2 = sma(macdfastline1,fastmacd) DEMAfast = ((2 * macdfastline1) - macdfastline2) MACDLine = (DEMAfast - DEMAslow) SignalLine = sma(MACDLine, signalmacd) delta = MACDLine-SignalLine swap1 = delta>0?color.green:color.red plot(delta,color=swap1,style=plot.style_columns,title='Histo',histbase=0,transp=20) p1 = plot(MACDLine,color=color.blue,title='MACD Line') p2 = plot(SignalLine,color=color.red,title='Signal') fill(p1, p2, color=color.blue) hline(0) yearfrom = input(2020) yearuntil =input(2042) monthfrom =input(1) monthuntil =input(12) dayfrom=input(1) dayuntil=input(31) if ( crossover(delta,0) and year >= yearfrom and year <= yearuntil and month>=monthfrom and month <=monthuntil and dayofmonth>=dayfrom and dayofmonth < dayuntil) strategy.entry("MMAL", strategy.long, stop=close, oca_name="TREND", comment="AL") else strategy.cancel(id="MMAL") if ( crossunder(delta,0) and year >= yearfrom and year <= yearuntil and month>=monthfrom and month <=monthuntil and dayofmonth>=dayfrom and dayofmonth < dayuntil ) strategy.entry("MMSAT", strategy.short,stop=close, oca_name="TREND", comment="SAT") else strategy.cancel(id="MMSAT")