Chiến lược này sử dụng nến Heiken Ashi trên ba khung thời gian để tạo ra tín hiệu khi tất cả các khung thời gian liên kết tăng hoặc giảm.
Nến Heiken Ashi khác với nến thông thường bằng cách làm mịn hành động giá để xác định xu hướng dễ dàng hơn.
Chiến lược sử dụng nến Heiken Ashi hàng ngày, hàng tuần và hàng tháng. Khi cả ba đều thẳng hàng tăng, với nến xanh, tín hiệu dài được tạo ra. Khi tất cả nến đỏ, tín hiệu ngắn được tạo ra.
Rút ra khi bất kỳ khung thời gian nào chuyển hướng sau khi nhập.
Xác nhận nhiều khung thời gian làm giảm tín hiệu sai và tăng độ bền.
Heiken Ashi làm mịn tiếng ồn để xác định xu hướng.
Những quy tắc đơn giản, đơn giản, dễ thực hiện.
Thời gian linh hoạt thích nghi với các sản phẩm khác nhau.
Không cần tối ưu hóa tham số, rất dễ sử dụng.
Những điều kiện nghiêm ngặt có thể làm mất đi cơ hội, có thể làm giảm các yêu cầu về điều kiện.
Heiken Ashi lag vẫn còn, có khả năng trì hoãn tín hiệu.
Không có dừng lỗ không thể kiểm soát rủi ro có thể thêm dừng lỗ di chuyển
Phí rủi ro cố định thiếu tính linh hoạt. Có thể thực hiện dừng động.
Chỉ có chỉ số dễ bị tín hiệu sai, có thể thêm xác nhận giá-tháng lượng.
Kiểm tra khung thời gian bổ sung như 15m hoặc 60m.
Tối ưu hóa các thông số Heiken Ashi cho độ nhạy.
Thêm stop loss di chuyển để kiểm soát rủi ro.
Bao gồm các chỉ số cấu trúc thị trường để tránh phạm vi.
Phát triển các điều kiện nhập cảnh để kéo dài thời gian giữ.
Chiến lược này sử dụng Heiken Ashi trên các khung thời gian để theo dõi xu hướng, nhưng chỉ có thiết kế chỉ báo dễ bị tín hiệu sai. Có thể cải thiện thông qua các chỉ báo bổ sung, dừng, tối ưu hóa tham số để làm cho nó đáng tin cậy hơn.
/*backtest start: 2023-01-01 00:00:00 end: 2023-03-23 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] args: [["v_input_5",true]] */ //@version=4 strategy("Heiken Ashi MTF Strategy") ha_t = heikinashi(syminfo.tickerid) res = input('D', title="TM 1") ha_open = security(ha_t, res, open) ha_close = security(ha_t, res, close) ha_dif = ha_open-ha_close ha_diff=iff(ha_dif > 0, 1, iff(ha_dif<0, 2, 3)) res2 = input('W', title="TM 2") ha_open2 = security(ha_t, res2, open) ha_close2 = security(ha_t, res2, close) ha_dif2 = ha_open2-ha_close2 ha_diff2=iff(ha_dif2 > 0, 1, iff(ha_dif2<0, 2, 3)) res3 = input('M', title="TM 3") ha_open3 = security(ha_t, res3, open) ha_close3 = security(ha_t, res3, close) ha_dif3 = ha_open3-ha_close3 ha_diff3=iff(ha_dif3 > 0, 1, iff(ha_dif3<0, 2, 3)) plot(15, title="TF1", color=iff(ha_diff==1, color.red, iff(ha_diff==2, color.green, color.white)), style=plot.style_circles, linewidth=5, join=true) plot(14, title="TF2", color=iff(ha_diff2==1, color.red, iff(ha_diff2==2, color.green, color.white)), style=plot.style_circles, linewidth=5, join=true) plot(13, title="TF3", color=iff(ha_diff3==1, color.red, iff(ha_diff3==2, color.green, color.white)), style=plot.style_circles, linewidth=5, join=true) short = ha_diff ==1 and ha_diff2==1 and ha_diff3 ==1 long = ha_diff ==2 and ha_diff2==2 and ha_diff3 ==2 exitlong = ha_diff ==1 or ha_diff2==1 or ha_diff3 ==1 exitshort = ha_diff ==2 or ha_diff2==2 or ha_diff3 ==2 longA = input(true) shortA = input(false) if(longA) strategy.entry("long",1,when=long) strategy.close("long",when=exitlong) if(shortA) strategy.entry("short",0,when=short) strategy.close("short",when=exitshort)