Chiến lược giao thoa nhiều khung thời gian Heiken Ashi

Tác giả:ChaoZhang, Ngày: 2023-09-18 21:50:05
Tags:

Tổng quan

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.

Nguyên tắc

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.

Ưu điểm

  1. Xác nhận nhiều khung thời gian làm giảm tín hiệu sai và tăng độ bền.

  2. Heiken Ashi làm mịn tiếng ồn để xác định xu hướng.

  3. Những quy tắc đơn giản, đơn giản, dễ thực hiện.

  4. Thời gian linh hoạt thích nghi với các sản phẩm khác nhau.

  5. Không cần tối ưu hóa tham số, rất dễ sử dụng.

Rủi ro và giảm thiểu

  1. 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.

  2. Heiken Ashi lag vẫn còn, có khả năng trì hoãn tín hiệu.

  3. 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

  4. Phí rủi ro cố định thiếu tính linh hoạt. Có thể thực hiện dừng động.

  5. Chỉ có chỉ số dễ bị tín hiệu sai, có thể thêm xác nhận giá-tháng lượng.

Cơ hội gia tăng

  1. Kiểm tra khung thời gian bổ sung như 15m hoặc 60m.

  2. Tối ưu hóa các thông số Heiken Ashi cho độ nhạy.

  3. Thêm stop loss di chuyển để kiểm soát rủi ro.

  4. Bao gồm các chỉ số cấu trúc thị trường để tránh phạm vi.

  5. Phát triển các điều kiện nhập cảnh để kéo dài thời gian giữ.

Tóm lại

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)

Thêm nữa