Chiến lược này kết hợp ba chỉ số siêu xu hướng với một đường trung bình chuyển động nhân tố (EMA) để theo dõi xu hướng. Nó sử dụng ba đường siêu xu hướng với độ nhạy khác nhau và một đường EMA để nắm bắt xu hướng thị trường thông qua xác nhận đa chiều. Chiến lược sử dụng ATR (Mức trung bình thực sự) để tính toán mức hỗ trợ / kháng cự năng động và xác định hướng xu hướng và tín hiệu giao dịch dựa trên vị trí giá tương đối với các đường này.
Chiến lược bao gồm các thành phần cốt lõi sau:
Có thể tạo ra các giao dịch thường xuyên trên các thị trường khác nhau, làm tăng chi phí giao dịch. Giải pháp: Thêm bộ lọc tín hiệu hoặc kéo dài thời gian trung bình động.
Sự chậm trễ tiềm năng trong quá trình bắt đầu đảo ngược xu hướng. Giải pháp: Kết hợp các chỉ số động lực để hỗ trợ.
Các yêu cầu xác nhận nhiều lần có thể bỏ lỡ một số cơ hội có lợi nhuận. Giải pháp: Điều chỉnh các điều kiện xác nhận dựa trên đặc điểm thị trường.
Đây là một chiến lược theo xu hướng hợp lý nghiêm ngặt và ổn định. Thông qua sự kết hợp của nhiều chỉ số kỹ thuật, nó đảm bảo độ tin cậy tín hiệu trong khi duy trì khả năng kiểm soát rủi ro tốt. Các thông số chiến lược có thể điều chỉnh cao và có thể được tối ưu hóa cho các điều kiện thị trường khác nhau.
/*backtest start: 2024-12-19 00:00:00 end: 2024-12-26 00:00:00 period: 45m basePeriod: 45m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Supertrend EMA Strategy", overlay=true) // Input Parameters ema_length = input(50, title="EMA Length") supertrend_atr_period = input(10, title="ATR Period") supertrend_multiplier1 = input.float(3.0, title="Supertrend Multiplier 1") supertrend_multiplier2 = input.float(2.0, title="Supertrend Multiplier 2") supertrend_multiplier3 = input.float(1.0, title="Supertrend Multiplier 3") // Calculations emaValue = ta.ema(close, ema_length) [supertrend1, SupertrendDirection1] = ta.supertrend(supertrend_multiplier1, supertrend_atr_period) [supertrend2, SupertrendDirection2] = ta.supertrend(supertrend_multiplier2, supertrend_atr_period) [supertrend3, SupertrendDirection3] = ta.supertrend(supertrend_multiplier3, supertrend_atr_period) // Plot Indicators plot(emaValue, title="EMA", color=color.blue, linewidth=2) plot(supertrend1, title="Supertrend 1 (10,3)", color=(SupertrendDirection1 == -1 ? color.green : color.red), linewidth=1, style=plot.style_line) plot(supertrend2, title="Supertrend 2 (10,2)", color=(SupertrendDirection2 == -1 ? color.green : color.red), linewidth=1, style=plot.style_line) plot(supertrend3, title="Supertrend 3 (10,1)", color=(SupertrendDirection3 == -1 ? color.green : color.red), linewidth=1, style=plot.style_line) // Entry Conditions long_condition = (SupertrendDirection1 == -1 and SupertrendDirection2 == -1 and SupertrendDirection3 == -1 and close > emaValue) short_condition = (SupertrendDirection1 == 1 and SupertrendDirection2 == 1 and SupertrendDirection3 == 1 and close < emaValue) // Exit Conditions long_exit = (SupertrendDirection3 == 1) short_exit = (SupertrendDirection3 == -1) // Execute Strategy if (long_condition) strategy.entry("Long", strategy.long) if (short_condition) strategy.entry("Short", strategy.short) if (long_exit) strategy.close("Long") if (short_exit) strategy.close("Short")