Chiến lược này kết hợp các chỉ số trung bình chuyển động và chỉ số MACD để thiết kế một chiến lược dài tương đối bảo thủ. Nó chủ yếu sử dụng trung bình chuyển động đơn giản 200 ngày để đánh giá xu hướng, và kết hợp trung bình chuyển động theo hàm số nhân 20 ngày và đường chéo vàng MACD để chọn cơ hội mua. Trong xu hướng tăng, nó chỉ mua khi có đường chéo vàng MACD và dừng lỗ khi có đường chéo chết MACD. Trong xu hướng giảm, nó sẽ chỉ mua khi giá vượt quá đường EMA 20 ngày và có đường chéo vàng MACD và dừng lỗ khi có đường chéo chết MACD. Cơ chế xác nhận kép này có thể tránh giao dịch thường xuyên trong một thị trường biến động.
Đầu tiên, chiến lược sử dụng đường trung bình di chuyển đơn giản 200 ngày (SMA) để đánh giá xu hướng giá hiện tại. Nếu giá đóng trên SMA, xu hướng được đánh giá là tăng. Nếu giá đóng dưới SMA, xu hướng được đánh giá là giảm.
Thứ hai, trong một xu hướng tăng, chiến lược bỏ qua điều kiện trung bình chuyển động theo cấp số nhân (EMA) 20 ngày và chỉ gửi tín hiệu mua khi đường nhanh MACD vượt qua đường chậm (cross vàng MACD). Nó giữ vị trí dài miễn là MACD vẫn vượt qua đường vàng. Khi đường nhanh MACD vượt qua đường chậm (cross chết MACD), nó dừng lỗ.
Trong xu hướng giảm, chiến lược trở nên bảo thủ hơn. Nó chỉ gửi tín hiệu mua khi giá đóng vượt trên đường EMA 20 ngày và có đường chéo vàng MACD, đòi hỏi phải xác nhận hai lần. Nó vẫn dừng lỗ trên đường chéo chết MACD.
Thông qua cơ chế này, chiến lược áp dụng cách tiếp cận tích cực hơn khi xu hướng rõ ràng (giá là trên hoặc dưới SMA 200 ngày).
Chiến lược kết hợp phán đoán xu hướng và xác nhận kép để lọc tiếng ồn và tránh các tín hiệu sai, giảm các giao dịch không cần thiết.
Nó theo dõi xu hướng kịp thời khi xu hướng rõ ràng và có thái độ thận trọng khi xu hướng không rõ ràng, giảm lỗ.
Kết hợp trung bình động và MACD làm cho tín hiệu giao dịch đáng tin cậy hơn.
Chiến lược đơn giản để thực hiện, phù hợp với các nhà đầu tư ở tất cả các cấp.
Cơ chế dừng lỗ cố định kiểm soát hiệu quả lỗ giao dịch duy nhất.
Chiến lược dựa rất nhiều vào các chỉ số kỹ thuật và không thể thích nghi với các sự kiện thiên nga đen.
Sự xác nhận hai lần đôi khi có thể gây ra cơ hội mua hàng bị bỏ lỡ.
MACD có các vấn đề chậm có thể trì hoãn tín hiệu giao dịch.
Cài đặt stop loss không chính xác có thể dẫn đến tổn thất lớn hơn.
SMA 200 ngày có thể không xác định chính xác xu hướng dài hạn.
Mức trung bình động như bộ lọc có thể tạo ra các tín hiệu giao dịch tầm thường.
Xem xét kết hợp các chỉ số khác như KDJ, Bollinger Bands để làm cho tín hiệu chính xác hơn.
Kiểm tra các đường trung bình động dài hạn khác như EMA 120 ngày để xác định tốt hơn xu hướng dài hạn.
Tối ưu hóa thời gian trung bình động để tìm ra sự kết hợp thông số tốt nhất.
Kết hợp các chiến lược lấy lợi nhuận, không chỉ dừng lỗ, để khóa thêm lợi nhuận.
Điều chỉnh các thông số trung bình động cho các thị trường khác nhau để cải thiện khả năng thích nghi.
Xem xét các thuật toán học máy để tối ưu hóa các thông số bằng cách đào tạo các mô hình trên dữ liệu lịch sử.
Chiến lược này tích hợp các lợi thế của đường trung bình động và MACD, đạt được kiểm soát rủi ro tốt trong khi vẫn tương đối đơn giản. Bằng cách đánh giá xu hướng và yêu cầu xác nhận hai lần, nó có thể lọc ra tiếng ồn một cách hiệu quả. Nhưng chiến lược cũng có một số hạn chế và cần tối ưu hóa và thích nghi hơn nữa với các sự kiện thiên nga đen. Nhìn chung, nó cung cấp cho các nhà đầu tư bảo thủ một giải pháp tham khảo mạnh mẽ.
/*backtest start: 2023-10-15 00:00:00 end: 2023-10-22 00:00:00 period: 5m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy(title="MACD/EMA Long Strategy",overlay=true,scale=scale.left) // SMA Indicator - Are we in a Bull or Bear market according to 200 SMA? SMA = sma(close, input(200)) // EMA Indicator - Are we in a rally or not? EMA = ema(close, input(20)) //MACD Indicator - Is the MACD bullish or bearish? fastLength = input(12) slowlength = input(26) MACDLength = input(9) MACD = ema(close, fastLength) - ema(close, slowlength) aMACD = ema(MACD, MACDLength) delta = MACD - aMACD // Set Buy/Sell conditions [main,signal,histo]=macd(close,fastLength,slowlength,MACDLength) buy_entry= if close>SMA delta>0 else delta>0 and close>EMA strategy.entry("Buy",true , when=buy_entry) alertcondition(delta, title='Long', message='MACD Bullish') sell_entry = if close<SMA delta<0 else delta<0 and close<EMA strategy.close("Buy",when= sell_entry) alertcondition(delta, title='Short', message='MACD Bearish') //plot(delta, title="Delta", style=cross, color=delta>=0 ? green : red )