Chiến lược này sử dụng giao thoa EMA và MA để xác định sự đảo ngược xu hướng, thuộc về các chiến lược theo xu hướng điển hình.
Đếm EMA và MA với các khoảng thời gian được chỉ định tương ứng.
EMA crossover trên MA tạo ra tín hiệu mua.
EMA crossover dưới MA tạo ra tín hiệu bán.
Có thể đặt giao dịch chỉ trong những tháng và khoảng thời gian cụ thể.
Giữ chỉ một hướng tại một thời điểm, không có lỗ hổng ngược.
Quy tắc đơn giản và rõ ràng dễ thực hiện.
EMA và MA crossovers có thể nắm bắt các cơ hội đảo ngược xu hướng.
Bộ lọc ngày tránh giao dịch sai lầm xung quanh các sự kiện lớn.
Giữ một hướng làm giảm các giao dịch ngược không cần thiết.
Hiệu quả sử dụng vốn cao hơn.
Thích hợp cho giao dịch xu hướng ngắn hạn.
Crossover có thể có tín hiệu sai gây ra tổn thất không cần thiết.
Không có kiểm soát hiệu quả về kích thước lỗ cho mỗi giao dịch.
Rủi ro mất mát lớn hơn nếu không có lệnh dừng lỗ.
Các thiết lập ngày cứng có thể bỏ lỡ các cơ hội giao dịch.
Các thông số không phù hợp ảnh hưởng tiêu cực đến hiệu suất.
Kiểm tra các khoảng thời gian MA khác nhau để tìm ra các giá trị tối ưu.
Đánh giá các bộ lọc bổ sung trên đường chéo.
Bao gồm stop loss để kiểm soát lỗ cho mỗi giao dịch.
Tối ưu hóa các quy tắc lọc ngày để duy trì tính linh hoạt.
Nghiên cứu chính xác là định vị lợi nhuận.
Hãy xem xét kích thước vị trí năng động.
Chiến lược này giao dịch đảo ngược chéo EMA và MA một cách đơn giản và hiệu quả nhưng có một số chỗ để cải thiện.
//@version=2 strategy(title = "MA + EMA Crossover Strategy ",shorttitle="eMA", overlay = true,default_qty_type = strategy.percent_of_equity, default_qty_value = 100,commission_type=strategy.commission.percent,commission_value=0.1,initial_capital=100000) emaLength =input(34) maLength = input(89) ema=ema(close,emaLength) ma=sma(close,maLength) plot(ema,linewidth=3,color=green) plot(ma,linewidth=3,color=red) longCond= crossover(ema,ma) shortCond=crossover(ma,ema) monthfrom =input(8) monthuntil =input(12) dayfrom=input(1) dayuntil=input(31) if ( longCond and month>=monthfrom and month <=monthuntil and dayofmonth>=dayfrom and dayofmonth < dayuntil) strategy.entry("LONG", strategy.long, stop=close, oca_name="TREND", comment="LONG") else strategy.cancel(id="LONG") if ( shortCond and month>=monthfrom and month <=monthuntil and dayofmonth>=dayfrom and dayofmonth < dayuntil ) strategy.entry("SHORT", strategy.short,stop=close, oca_name="TREND", comment="SHORT") else strategy.cancel(id="SHORT")