Chiến lược này tạo ra tín hiệu giao dịch dựa trên hai điều kiện:
Khi cả hai điều kiện là đúng, một tín hiệu mua được tạo ra. Khi cả hai điều kiện là sai, một tín hiệu bán được tạo ra.
Bằng cách so sánh đường chéo EMA và SMA trên các khung thời gian khác nhau, chiến lược này đánh giá toàn diện hướng xu hướng và tạo ra tín hiệu giao dịch. EMA ngắn hạn phản ánh sự thay đổi giá một cách nhạy cảm hơn trong khi SMA dài hạn có khả năng lọc xu hướng tốt hơn. Khi EMA ngắn hạn vượt qua trên SMA dài hạn, nó chỉ ra một sự đảo ngược xu hướng nhẹ và tạo ra tín hiệu mua. Ngược lại, khi EMA ngắn hạn vượt qua dưới SMA dài hạn, nó chỉ ra sự đảo ngược xu hướng và tạo ra tín hiệu bán.
Thêm EMA 4 giờ và SMA crossover lọc ra tiếng ồn ngắn hạn và làm cho tín hiệu giao dịch đáng tin cậy hơn.
Chiến lược này có những lợi thế sau:
Ngoài ra còn có một số rủi ro với chiến lược này:
Rủi ro có thể được quản lý bằng cách kết hợp dừng lỗ / lấy lợi nhuận, tối ưu hóa tham số v.v.
Một số cách để tăng cường chiến lược này:
Tóm lại, đây là một xu hướng cơ bản sau chiến lược sử dụng các quy tắc chéo EMA và SMA đơn giản. Nó có thể được cải thiện thông qua tối ưu hóa tham số, lọc tín hiệu vv để thích nghi tốt hơn và cải thiện hiệu suất chiến lược.
/*backtest start: 2023-12-17 00:00:00 end: 2024-01-12 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("EMA and SMA Crossover Strategy", shorttitle="Shashank Cross", overlay=true) // Condition 1: Latest EMA (Close, 5) crossed above Latest SMA (Close, 20) ema5 = ta.ema(close, 5) sma20 = ta.sma(close, 20) condition1 = ta.crossover(ema5, sma20) // Condition 2: [0] 4-hour EMA ([0] 4-hour Close, 5) crossed above [0] 4-hour SMA ([0] 4-hour Close, 20) ema5_4h = request.security(syminfo.tickerid, "240", ta.ema(close, 5)) sma20_4h = request.security(syminfo.tickerid, "240", ta.sma(close, 20)) condition2 = ta.crossover(ema5_4h, sma20_4h) // Combine both conditions for a buy signal buy_signal = condition1 and condition2 // Plotting signals on the chart plotshape(buy_signal, color=color.green, style=shape.labelup, location=location.belowbar, size=size.small, text="Buy Signal") // Strategy logic if (buy_signal) strategy.entry("Buy", strategy.long) // Exit long position on the next bar at market price if (ta.barssince(buy_signal) == 1) strategy.close("Exit") // You can add more code for stop-loss, take-profit, etc., as per your strategy.