Chiến lược này sử dụng sự kết hợp của hai đường chéo trung bình động theo cấp số nhân (EMA) và chỉ số sức mạnh tương đối (RSI) để xác định các cơ hội giao dịch tiềm năng trên thị trường. Nó phù hợp với các nhà giao dịch muốn theo dõi các chuyển động và dao động giá lớn hơn.
Ý tưởng cốt lõi là mua khi EMA 9 tuần nhanh hơn di chuyển lên và vượt qua EMA 21 tuần chậm hơn, vì điều này báo hiệu xu hướng thị trường có thể đang tăng cường.
Cụ thể, tín hiệu đầu vào dài được kích hoạt khi EMA 9 tuần vượt qua EMA 21 tuần và RSI 14 tuần lớn hơn 50. Các vị trí sau đó được định kích thước cho rủi ro tài khoản 2%, với mục tiêu dừng lỗ 5% và lợi nhuận 10%.
Tín hiệu bán dựa trên logic ngược lại: nếu EMA 9 tuần vượt dưới EMA 21 tuần hoặc nếu RSI giảm xuống dưới 50, điều này cho thấy xu hướng ngắn hạn đã đảo ngược xuống.
Điều này có thể được tối ưu hóa bằng cách kiểm tra các kết hợp của các tham số này một cách có hệ thống. Các bộ lọc bổ sung trong logic điều kiện có thể làm giảm các giao dịch ồn ào. Xem xét các nguyên tắc cơ bản có thể cung cấp xác nhận hơn.
Chiến lược này tận dụng sức mạnh của EMA và RSI để xác định các cơ hội tiềm năng trong các xu hướng lớn hơn. Nó cung cấp các quy tắc quản lý rủi ro rõ ràng để kiểm soát rủi ro hiệu quả cho mỗi giao dịch. Kiểm tra và tối ưu hóa các tham số hơn nữa có thể tiếp tục nâng cao hiệu suất. Nó cung cấp một cách hiệu quả để giao dịch những biến động chu kỳ lớn hơn trên thị trường.
/*backtest start: 2023-12-22 00:00:00 end: 2024-01-21 00:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Weekly Swing Trading Strategy", overlay=true) // Entry Indicators shortEma = ema(close, 9) longEma = ema(close, 21) rsiValue = rsi(close, 14) // Entry Condition longCondition = crossover(shortEma, longEma) and rsiValue > 50 if (longCondition) strategy.entry("Long", strategy.long) // Position Sizing (2% risk per trade) riskPerTrade = 0.02 stopLossPercent = 0.05 // 5% stop loss stopLossPrice = close * (1 - stopLossPercent) strategy.exit("Stop Loss", "Long", stop=stopLossPrice) // Profit Target and Trailing Stop profitTargetPercent = 0.10 // 10% profit target profitTargetPrice = close * (1 + profitTargetPercent) trailStopPercent = 0.03 // 3% trailing stop strategy.exit("Take Profit", "Long", limit=profitTargetPrice, trail_price=trailStopPercent, trail_offset=trailStopPercent) // Exit Strategy exitCondition = crossunder(shortEma, longEma) or rsiValue < 50 // Exit when EMAs cross or RSI drops below 50 strategy.close("Long", when=exitCondition) plot(shortEma, color=color.red) plot(longEma, color=color.blue) hline(50, "RSI 50", color=color.purple)