Chiến lược giao cắt hội tụ/phân kỳ trung bình động làm mịn ba khung thời gian


Ngày tạo: 2023-09-18 21:50:05 sửa đổi lần cuối: 2023-09-18 21:50:05
sao chép: 0 Số nhấp chuột: 1152
1
tập trung vào
1617
Người theo dõi

Tổng quan

Chiến lược này dựa trên các chỉ số trung bình dị thường được làm mịn trong ba chu kỳ thời gian, tạo ra tín hiệu giao dịch khi các chỉ số khác nhau theo chu kỳ đồng thời đi lên hoặc xuống. Mục đích là sử dụng nhiều khung thời gian để xác nhận xu hướng và giảm khả năng tín hiệu giả.

Nguyên tắc

Đường trung bình phân ngang trơn ((Heiken Ashi) chỉ số khác với đường K thông thường, cách tính toán của nó có thể làm mịn đường cong giá, nhận ra xu hướng chính xác hơn.

Chiến lược này sử dụng các chỉ số trung bình chênh lệch trơn của ba chu kỳ thời gian của đường mặt trời, đường tròn và đường mặt trăng. Khi ba đồng hướng lạc quan, tức là khi các đường tín hiệu của tất cả các chu kỳ thời gian là màu xanh lá cây, tạo ra tín hiệu mua; Khi ba đồng giảm, tức là khi các đường tín hiệu của tất cả các chu kỳ là màu đỏ, tạo ra tín hiệu bán.

Sau khi vào sàn, chỉ cần chuyển sang trung bình đồng hồ trơn trong bất kỳ chu kỳ thời gian nào, sẽ tạo ra tín hiệu cân bằng.

Ưu điểm

  1. Xác thực nhiều khung thời gian, giảm tín hiệu giả và tăng sự ổn định.

  2. Chỉ số trung bình đồng nhất mịn có thể nhận ra xu hướng, giảm tiếng ồn.

  3. Các quy tắc đơn giản, rõ ràng và dễ thực hiện.

  4. Có thể lựa chọn một sự kết hợp thời gian linh hoạt, phù hợp với các giống khác nhau.

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

Rủi ro và giải pháp

  1. Hạn chế nhiều điều kiện, có thể bỏ lỡ cơ hội giao dịch. Hạn chế điều kiện có thể được giảm.

  2. Vấn đề về độ trễ của đường trung bình dị thường vẫn tồn tại, có thể làm chậm tín hiệu. Có thể được tối ưu hóa kết hợp với các chỉ số khác.

  3. Không thiết lập dừng lỗ, không thể kiểm soát rủi ro. Có thể tham gia vào chiến lược dừng lỗ di động.

  4. Tỷ lệ lợi nhuận và lỗ hổng là cố định, không có tính linh hoạt.

  5. Chỉ dựa trên chỉ số, dễ tạo ra tín hiệu sai. Có thể tham gia vào cơ chế xác nhận giá cả.

Tối ưu hóa tư duy

  1. Thử nghiệm thêm khung thời gian, chẳng hạn như 15 phút hoặc 60 phút.

  2. Tối ưu hóa các tham số trung bình khác biệt trơn tru, nâng cao độ nhạy.

  3. Tham gia chiến lược dừng lỗ di động để kiểm soát rủi ro.

  4. Nghiên cứu tham gia các chỉ số cấu trúc thị trường, tránh các biến động.

  5. Thêm điều kiện tái nhập học, kéo dài thời gian nắm giữ.

Tóm tắt

Chiến lược này sử dụng lợi thế của các chỉ số trung bình khác nhau trong nhiều chu kỳ thời gian để theo dõi xu hướng, nhưng chỉ dựa trên các chỉ số dễ tạo ra tín hiệu giả. Có thể cải thiện chiến lược bằng cách thêm nhiều chỉ số, chiến lược dừng lỗ, tham số tối ưu hóa và các phương pháp khác để làm cho chiến lược đáng tin cậy hơn. Nhìn chung, tư duy xác minh khung thời gian nhiều đáng để học hỏi.

Mã nguồn chiến lược
/*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)