Chiến lược hệ thống kép hài hòa

Tác giả:ChaoZhang, Ngày: 2024-02-22 15:49:06
Tags:

img

Tổng quan

Chiến lược này sử dụng nhiều đường trung bình động hài hòa để xây dựng tín hiệu giao dịch. Nó đầu tiên tính toán đường trung bình động hài hòa từ thứ 1 đến thứ 6, và sau đó kết hợp các đường trung bình động này để xây dựng tín hiệu giao dịch dài / ngắn kép. Nó đi ngắn khi đường tín hiệu ngắn hạn vượt qua dưới đường tín hiệu dài hạn, và đi dài khi đường tín hiệu ngắn hạn vượt qua trên.

Chiến lược logic

Chiến lược đầu tiên xác định hàm harm_average để tính toán trung bình động hài hòa n-phần. Sau đó nó tính toán các trung bình động hài hòa từ thứ 1 đến thứ 6, cụ thể là T1 đến T6. Trong số đó, T1 là trung bình động hài hòa 3 giai đoạn, T2 là trung bình động hài hòa 3 giai đoạn của T1, v.v.

Sau đó, nó xây dựng một đường cong cân bằng, mà tổng hợp xem xét nghịch đảo của các trung bình di chuyển hài hòa khối từ T1 đến T6. Điều này có thể phản ánh cả yếu tố ngắn hạn và dài hạn cùng một lúc.

Cuối cùng, theo T1 đến T6, nó xây dựng các tín hiệu giao dịch chéo dài / ngắn kép, trong đó X1 lấy tối thiểu của T1, T2 và T3, và X2 lấy tối đa của T4, T5 và T6.

Phân tích lợi thế

  1. Sử dụng nhiều đường trung bình động hài hòa có thể lọc hiệu quả tiếng ồn thị trường và cải thiện chất lượng tín hiệu

  2. Xây dựng hai tín hiệu giao dịch dài / ngắn có thể kịp thời nắm bắt các điểm chuyển hướng xu hướng

  3. Các đường cong Balance tổng hợp xem xét nhiều khung thời gian có thể đánh giá chính xác hướng xu hướng

  4. Việc áp dụng trung bình khối có thể làm nổi bật thêm vai trò của các biến trung gian và tăng cường sự ổn định chiến lược

Phân tích rủi ro

  1. Các trung bình hài hòa có độ trễ cao, có thể bỏ lỡ các cơ hội đảo ngược ngắn hạn

  2. Tối ưu hóa quá mức với nhiều mức trung bình có thể làm giảm sự vững chắc của chiến lược

  3. Tính toán khối có thể khuếch đại tiếng ồn trung gian đến một mức độ nào đó, dẫn đến một số tín hiệu sai

  4. Chữ thập đôi có một số mức độ chậm trễ, không thể bắt kịp thời các điểm biến đổi

Hướng dẫn tối ưu hóa

  1. Có thể thử nghiệm nhiều loại hoặc các thứ tự trung bình hài hòa cao hơn

  2. Đưa ra điều chỉnh năng động của ngày trung bình để tối ưu hóa hệ thống trung bình

  3. Kiểm tra các thông số năng lượng khác nhau như vuông và nhật ký

  4. Kết hợp nhiều chỉ số phụ để xác minh chất lượng tín hiệu

Tóm lại

Chiến lược này sử dụng một hệ thống trung bình đa hài hòa để xây dựng các tín hiệu giao dịch dài / ngắn kép. So với các hệ thống trung bình duy nhất, chiến lược này có thể xác định xu hướng và lọc tiếng ồn tốt hơn. Trong khi đó, các đường chéo kép cũng có thể nắm bắt đúng thời điểm các bước ngoặt của thị trường. Tuy nhiên, tính toán trung bình và khối đa cũng giới thiệu một số sự chậm trễ và khuếch đại tiếng ồn. Trong tương lai, việc giới thiệu điều chỉnh tham số động và nhiều chỉ số phụ trợ có thể cải thiện tính ổn định và tính kịp thời của chiến lược.


/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Harmonic System Strategy", overlay=true)

harm_average(x,y,z) =>3 / (1 / x + 1 / y + 1 / z)
T1 = harm_average(close[1], close[2], close[3])
T2 = harm_average(T1, T1[1], T1[2])
T3 = harm_average(T2, T2[1], T2[2])
T4 = harm_average(T3, T3[1], T3[2])
T5 = harm_average(T4, T4[1], T4[2])
T6 = harm_average(T5, T5[1], T5[2])
Balance = 18 / (1 / T1 * 3 + 1 / T2 * 3 + 1 / T3 * 3 + 1 / T4 * 3 + 1 / T5 * 3 + 1 / T6 * 3)

plot(T1,linewidth=2, color=color.green,title="T1")
plot(T2,linewidth=1, color=color.blue,title="T2")
plot(T3,linewidth=1, color=color.blue,title="T3")
plot(Balance,linewidth=2, color=color.black,title="Balance")
plot(T4,linewidth=1, color=color.blue,title="T4")
plot(T5,linewidth=1, color=color.blue,title="T5")
plot(T6,linewidth=2, color=color.red,title="T6")

X1 = min(min(T1,T2),T3)
X2 = max(max(T4,T5),T6)
X3 = min(T1,T2)
X4 = max(T3,T4)

Buy=crossover(X1,X2)
Sell=crossunder(X3,X4)

if crossover(X1,X2)
    strategy.entry("Long", strategy.long, comment="Long")

if crossunder(X3,X4)
    strategy.entry("Short", strategy.short, comment="Short")


Thêm nữa