Chiến lược đảo ngược đường trung bình hai chiều là một chiến lược theo dõi xu hướng. Nó tính toán đường trung bình của các chu kỳ khác nhau để xác định liệu giá có đảo ngược hay không, để nắm bắt điểm đảo ngược xu hướng, để đạt được mức mua thấp và bán cao.
Chiến lược này bắt đầu bằng cách tính toán hai nhóm đường trung bình của các chu kỳ khác nhau, một nhóm là đường trung bình của chu kỳ dài hơn để xác định xu hướng tổng thể; nhóm khác là đường trung bình của chu kỳ ngắn hơn để xác định xu hướng địa phương. Chiến lược này so sánh mối quan hệ giữa hai nhóm đường trung bình để xác định liệu xu hướng tổng thể có bị đảo ngược hay không.
Cụ thể, chiến lược tính hai đường trung bình của một nhóm có chu kỳ dài hơn (như đường 60 ngày) là đường trung bình di chuyển đơn giản 60 ngày và đường trung bình di chuyển 60 ngày. Các đường trung bình này được sử dụng để xác định xu hướng tổng thể. Ngoài ra, chiến lược tính hai đường trung bình của một nhóm có chu kỳ ngắn hơn (như đường 5 ngày) là đường trung bình di chuyển đơn giản 5 ngày và đường trung bình di chuyển 5 ngày.
Khi đường trung bình ngắn hạn xuyên qua đường trung bình dài hạn, biểu thị giá đảo ngược, chuyển từ giảm sang tăng, chiến lược này sẽ mở nhiều vị trí đầu; khi đường trung bình ngắn hạn xuyên qua đường trung bình dài hạn, biểu thị giá đảo ngược, chuyển từ tăng sang giảm, chiến lược này sẽ mở vị trí đầu trống.
Các hoạt động cụ thể như sau:
Tính toán đường trung bình di chuyển đơn giản 60 ngày nma và đường trung bình di chuyển nặng 60 ngày n2ma
Tính trung bình di chuyển đơn giản 5 ngày nma1 và trung bình di chuyển trọng lượng 5 ngày n2ma1
So sánh n2ma1 và nma1: nếu n2ma1 đeo nma1, thì mở đầu nhiều; nếu n2ma1 đeo nma1, thì mở đầu trống
So sánh n2ma và nma: nếu n2ma trên nma, và đã mở nhiều đầu, thì tiếp tục giữ nhiều đầu; nếu n2ma dưới nma, và đã mở đầu, thì tiếp tục giữ đầu trống
Khi giá vượt quá điểm dừng lỗ hoặc đạt đến điểm dừng chân, bạn sẽ phá vỡ lệnh.
Lặp lại quá trình trên để nắm bắt xu hướng đảo ngược và thực hiện mua thấp và bán cao
Ưu điểm của chiến lược này là sự kết hợp của hai đường trung bình có thể nắm bắt được sự đảo ngược của xu hướng giá một cách nhạy cảm hơn. Sự đảo ngược của hai đường trung bình là tín hiệu chỉ số kỹ thuật cổ điển. Đồng thời, sự kết hợp của các đường trung bình khác nhau có thể đánh giá xu hướng tổng thể và xu hướng địa phương, thực hiện theo dõi xu hướng.
Rủi ro của chiến lược này là tín hiệu đảo ngược đường hai đồng đều có thể xuất hiện tín hiệu giả, dẫn đến việc tham gia hoặc ra khỏi thị trường, làm tăng rủi ro giao dịch. Ngoài ra, hệ thống đường hai đồng đều có thể tạo ra tín hiệu sai đối với thị trường có phạm vi lớn. Cuối cùng, hệ thống đường hai đồng đều cần chu kỳ kiểm tra dài hơn để xác minh tính ổn định của các thiết lập tham số.
Chiến lược này có thể được tối ưu hóa theo các khía cạnh sau:
Tối ưu hóa các tham số chu kỳ của đường trung bình, tìm các tham số kết hợp tốt nhất
Thêm bộ lọc cho các chỉ số kỹ thuật khác để tránh đột phá giả
Tham gia chiến lược dừng lỗ, kiểm soát lỗ hổng đơn lẻ
Kết hợp thời gian giao dịch theo xu hướng để tránh các giao dịch sai lầm trong thị trường biến động
Hoạt động điều chỉnh quy mô vị trí để thích ứng với sự thay đổi của thị trường
Tóm lại, chiến lược đảo ngược đường trung bình hai chiều bằng cách so sánh mối quan hệ giữa các đường trung bình khác nhau để nắm bắt các điểm đảo ngược xu hướng giá để đạt được mục đích mua bán thấp. Tối ưu hóa cài đặt tham số, tăng điều kiện lọc và kiểm soát rủi ro là những hướng mà chiến lược có thể được cải thiện. Sử dụng đúng cách, nó có thể trở thành một công cụ hiệu quả để nắm bắt xu hướng biến đổi định lượng.
/*backtest
start: 2022-10-10 00:00:00
end: 2023-06-08 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
// //////////////// Attempt to Reduced ReDraw version /////////////////////
//
// Microcana.com strategy by pilotgsms - version 4.20b <<<< Edited by Seaside420 >>>> special thanks to 55cosmicpineapple
// Hull_MA_cross added to script
strategy("M&H_v420b", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0)
dt = input(defval=0.0010, title="Decision Threshold", type=float, step=0.0001)
dd = input(defval=1, title="Post Signal Bar Delay", type=float, step=1)
df = input(defval=5, title="Close Position Bar Delay", type=float, step=1)
keh=input(title="Double HullMA Cross",defval=7, minval=1)
confidence=(request.security(syminfo.tickerid, 'D', close)-request.security(syminfo.tickerid, 'D', close[1]))/request.security(syminfo.tickerid, 'D', close[1])
prediction = confidence > dt ? true : confidence < -dt ? false : prediction[1]
n2ma=2*wma(close,round(keh/2))
nma=wma(close,keh)
diff=n2ma-nma,sqn=round(sqrt(keh))
n2ma1=2*wma(close[2],round(keh/2))
nma1=wma(close[2],keh)
diff1=n2ma1-nma1,sqn1=round(sqrt(keh))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
openlong=prediction[dd] and n1>n2 and strategy.opentrades<1
if (openlong)
strategy.entry("Long", strategy.long)
openshort=not prediction[dd] and n2>n1 and strategy.opentrades<1
if (openshort)
strategy.entry("Short", strategy.short)
closeshort=prediction and close<low[df]
if (closeshort)
strategy.close("Short")
closelong=not prediction and close>high[df]
if (closelong)
strategy.close("Long")