Chiến lược này tính toán các ngọn nến Heikin-Ashi để làm mịn đường giá và kết hợp chỉ số MACD để tạo ra các tín hiệu giao dịch, thực hiện một chiến lược định lượng theo dõi xu hướng trung bình đến dài hạn.
Tính toán giá mở, đóng, cao và thấp Heikin-Ashi để vẽ các ngọn nến Heikin-Ashi và xu hướng giá trơn tru.
Đặt tham số MACD: chiều dài nhanh 12, chiều dài chậm 26, chiều dài tín hiệu 9.
Tính toán đường DEA chậm, đường DEA nhanh và biểu đồ MACD.
Đi dài khi biểu đồ MACD vượt trên 0; Đi ngắn khi vượt dưới 0.
Thêm bộ lọc năm, tháng và ngày để giới hạn giao dịch trong khoảng thời gian xác định.
Các ngọn nến Heikin-Ashi lọc tiếng ồn thị trường hiệu quả để xác định xu hướng.
MACD cung cấp các tín hiệu giao dịch xu hướng rõ ràng.
Kết hợp Heikin-Ashi và MACD cải thiện chất lượng tín hiệu và lợi nhuận.
Các bộ lọc thời gian giúp tối ưu hóa lịch giao dịch dựa trên hiệu suất lịch sử.
Khả năng mất mát lớn trong quá trình đảo ngược xu hướng.
Các thông số MACD không chính xác có thể tạo ra các tín hiệu vô giá trị quá mức.
Các bộ lọc thời gian cứng có thể bỏ lỡ các cơ hội giao dịch tốt.
Các biện pháp đối phó:
Thiết lập stop loss/take profit để hạn chế lỗ.
Tối ưu hóa các thông số MACD để xác định sự kết hợp tốt nhất.
Thêm các chỉ số để xác định xu hướng địa phương.
Kiểm tra các kết hợp tham số khác nhau để tìm ra tối ưu.
Thêm các cơ chế dừng lỗ như dừng lỗ sau.
Thêm các chỉ số như EMA, KDJ để xác định điểm đảo ngược.
Thêm các chỉ số âm lượng để tránh sự khác biệt.
Chiến lược này làm mịn hành động giá với các ngọn nến Heikin-Ashi và xác định hướng xu hướng và tín hiệu nhập cảnh với chỉ số MACD Tradingview để thực hiện chiến lược lượng theo xu hướng. So với các chiến lược MACD thông thường, nó lọc ra một số tiếng ồn để xác định xu hướng rõ ràng hơn.
/*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")