Chiến lược này nhằm mục đích khai thác các sự đảo ngược hoặc tiếp tục xu hướng tiềm năng bằng cách sử dụng Mức trung bình chuyển động biểu số (EMA) và dừng lại dựa trên phương pháp Chande Dynamic Convergence Divergence (CDC) Average True Range. Chiến lược kết hợp nhiều chỉ số để xác định thời gian nhập cảnh và thiết lập mức dừng lỗ và lợi nhuận dựa trên biến động thị trường để kiểm soát rủi ro trong khi nắm bắt các xu hướng mới.
Chiến lược này sử dụng EMA kép 60 giai đoạn và 90 giai đoạn để xác định hướng xu hướng. Một giao thoa mà EMA ngắn hơn di chuyển trên EMA dài hơn cho một tín hiệu tăng. Đồng thời, một giao thoa đường MACD trên đường tín hiệu của nó có thể xác nhận quan điểm tăng.
Các quy tắc thoát là: đóng vị trí khi giá đạt mức lợi nhuận dựa trên ATR hoặc giảm xuống dưới mức dừng lỗ CDC.
Chiến lược này kết hợp EMA kép để đánh giá hướng xu hướng chính và MACD để xác nhận thời gian nhập cảnh, tránh đột phá sai. Cả hai mức dừng lại và mục tiêu lợi nhuận được tính dựa trên biến động thị trường để quản lý rủi ro hiệu quả. Cho dù xu hướng đảo ngược hoặc tiếp tục, chiến lược này có thể nắm bắt các cơ hội kịp thời.
Ngoài ra, các thông số đầu vào của chiến lược này có thể được tùy chỉnh. Người dùng có thể điều chỉnh thời gian EMA, thời gian ATR và nhân CDC theo phong cách giao dịch của riêng họ.
Rủi ro lớn nhất của chiến lược này là đánh giá xu hướng không chính xác. Khi thị trường đang củng cố, EMA có thể dễ dàng đưa ra tín hiệu sai. Tại thời điểm này, vai trò xác nhận của MACD đặc biệt quan trọng. Ngoài ra, cần phải tăng đúng nhân stop loss CDC để đối phó với khoảng cách giá lớn do các sự kiện đột ngột.
Chiến lược này sử dụng tốt các lợi thế của các chỉ số xu hướng và biến động để xác định các cơ hội tiềm năng trong chứng khoán. Thông qua tối ưu hóa tham số và cải tiến cơ chế, chiến lược này có tiềm năng tăng cường sự ổn định và lợi nhuận hơn nữa. Nó cung cấp cho các nhà giao dịch định lượng một khuôn khổ chiến lược đáng tin cậy và có thể mở rộng.
/*backtest start: 2023-01-17 00:00:00 end: 2024-01-23 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Improved EMA & CDC Trailing Stop Strategy", overlay=true) // Define the inputs ema60Period = input(60, title="EMA 60 Period") ema90Period = input(90, title="EMA 90 Period") atrPeriod = input(24, title="CDC ATR Period") multiplier = input(4.0, title="CDC Multiplier") profitTargetMultiplier = input(2.0, title="Profit Target Multiplier (ATR)") // Calculate EMAs ema60 = ta.ema(close, ema60Period) ema90 = ta.ema(close, ema90Period) // Calculate ATR atr = ta.atr(atrPeriod) // MACD calculation [macdLine, signalLine, _] = ta.macd(close, 12, 26, 9) // Define the trailing stop and profit target longStop = close - multiplier * atr shortStop = close + multiplier * atr longProfitTarget = close + profitTargetMultiplier * atr shortProfitTarget = close - profitTargetMultiplier * atr // Entry conditions longCondition = close > ema60 and ema60 > ema90 and macdLine > signalLine and close > longStop shortCondition = close < ema60 and ema60 < ema90 and macdLine < signalLine and close < shortStop // Exit conditions based on profit target longProfitCondition = close >= longProfitTarget shortProfitCondition = close <= shortProfitTarget // Plot the EMAs, Stops, and MACD for visualization plot(ema60, color=color.blue, title="60 EMA") plot(ema90, color=color.red, title="90 EMA") plot(longStop, color=color.green, title="Long Stop", style=plot.style_linebr) plot(shortStop, color=color.red, title="Short Stop", style=plot.style_linebr) hline(0, "Zero Line", color=color.gray) plot(macdLine - signalLine, color=color.blue, title="MACD Histogram") // Strategy execution using conditional blocks if longCondition strategy.entry("Long", strategy.long) if shortCondition strategy.entry("Short", strategy.short) // Exit based on profit target and trailing stop if longProfitCondition or close < longStop strategy.close("Long") if shortProfitCondition or close > shortStop strategy.close("Short")