Chiến lược này là một hệ thống giao dịch định lượng dựa trên các tín hiệu chéo trung bình động kép, kết hợp với các cơ chế dừng lỗ và lấy lợi nhuận năng động để quản lý rủi ro. Chiến lược sử dụng trung bình di chuyển theo cấp số nhân (EMA) 20 giai đoạn và 50 giai đoạn làm chỉ số tín hiệu, với mức dừng lỗ vừa phải là 2,5% và mức lấy lợi nhuận 4% để cân bằng lợi nhuận và rủi ro. Thiết kế chiến lược này đặc biệt phù hợp với các nhà giao dịch có khả năng dung nạp rủi ro vừa phải, có khả năng nắm bắt những thay đổi xu hướng thị trường trong khi kiểm soát rủi ro.
Logic cốt lõi của chiến lược dựa trên các yếu tố chính sau:
Đây là một chiến lược giao dịch định lượng rủi ro vừa phải được thiết kế tốt, nắm bắt xu hướng thông qua các đường chéo trung bình động trong khi quản lý rủi ro với mức dừng lỗ và lấy lợi nhuận năng động. Những lợi thế chính của chiến lược nằm ở tính chất có hệ thống cao và rủi ro được kiểm soát, nhưng phải chú ý đến điều kiện thị trường ảnh hưởng đến hiệu suất chiến lược. Thông qua tối ưu hóa và cải thiện liên tục, chiến lược này có tiềm năng duy trì hiệu suất ổn định trong các môi trường thị trường khác nhau. Các nhà giao dịch được khuyên nên tiến hành kiểm tra dữ liệu lịch sử kỹ lưỡng trước khi thực hiện trực tiếp và điều chỉnh các tham số theo khả năng chịu rủi ro của họ.
/*backtest start: 2024-10-12 00:00:00 end: 2024-11-11 00:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Estrategia STX - Medias Móviles con Riesgo Medio", overlay=true) // Parámetros configurables mmr_period = input.int(20, title="Periodo Media Móvil Rápida (MMR)") mml_period = input.int(50, title="Periodo Media Móvil Lenta (MML)") stop_loss_percent = input.float(2.5, title="Stop-Loss (%)", step=0.1) // Stop-Loss moderado take_profit_percent = input.float(4.0, title="Take-Profit (%)", step=0.1) // Take-Profit moderado // Cálculo de medias móviles (Exponenciales) mmr = ta.ema(close, mmr_period) // Media Móvil Rápida mml = ta.ema(close, mml_period) // Media Móvil Lenta // Señales de Compra y Venta long_condition = ta.crossover(mmr, mml) // Señal de compra short_condition = ta.crossunder(mmr, mml) // Señal de venta // Calcular niveles de Stop-Loss y Take-Profit solo al activar la compra var float entry_price = na var float stop_loss_level = na var float take_profit_level = na if (long_condition) entry_price := close stop_loss_level := entry_price * (1 - stop_loss_percent / 100) take_profit_level := entry_price * (1 + take_profit_percent / 100) // Condiciones de salida (Stop-Loss y Take-Profit) exit_condition = (close <= stop_loss_level) or (close >= take_profit_level) // Ejecución de Órdenes if (long_condition) strategy.entry("Compra", strategy.long) if (short_condition or exit_condition) strategy.close("Compra") // Trazar Medias Móviles y Niveles plot(mmr, color=color.blue, linewidth=2, title="Media Móvil Rápida (MMR)") plot(mml, color=color.orange, linewidth=2, title="Media Móvil Lenta (MML)") plot(not na(entry_price) ? stop_loss_level : na, color=color.red, style=plot.style_line, linewidth=1, title="Stop-Loss") plot(not na(entry_price) ? take_profit_level : na, color=color.green, style=plot.style_line, linewidth=1, title="Take-Profit")