Chiến lược này là một hệ thống giao dịch thông minh dựa trên các tín hiệu chéo trung bình động, kết hợp với cơ chế quản lý lợi nhuận / lỗ năng động. Chiến lược cốt lõi sử dụng sự chéo của 7 giai đoạn và 40 giai đoạn Đường trung bình di chuyển đơn giản (SMA) để tạo ra các tín hiệu giao dịch, trong khi tích hợp một hệ thống kiểm soát dừng lỗ và lấy lợi nhuận dựa trên tỷ lệ phần trăm để quản lý rủi ro chính xác.
Chiến lược hoạt động dựa trên các cơ chế cốt lõi sau: 1. Sản xuất tín hiệu: Các tín hiệu giao dịch được tạo ra bằng cách quan sát sự chéo chéo giữa trung bình động ngắn hạn (7 ngày) và dài hạn (40 ngày). 2. Quản lý vị trí: Hệ thống sử dụng một cơ chế vị trí duy nhất, ngăn chặn nhiều mục nhập trong khi một vị trí mở để đảm bảo sử dụng vốn hiệu quả. 3. Kiểm soát rủi ro: Tích hợp một hệ thống dừng lỗ / lấy lợi nhuận năng động dựa trên giá nhập cảnh. Stop-loss được đặt ở mức 1% dưới giá nhập cảnh và lấy lợi nhuận ở mức 2% trên, cho phép quản lý rủi ro định lượng cho mỗi giao dịch.
Chiến lược này nắm bắt các xu hướng thị trường thông qua các đường chéo trung bình chuyển động trong khi thực hiện quản lý rủi ro thông qua kiểm soát lợi nhuận / lỗ năng động, chứng minh tính thực tế mạnh mẽ. Mặc dù có rủi ro chậm trễ vốn có, các hướng tối ưu hóa được đề xuất có thể tăng thêm sự ổn định và lợi nhuận của chiến lược.
/*backtest start: 2024-12-10 00:00:00 end: 2025-01-08 08:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}] */ //@version=5 strategy("Cruzamento de Médias Móveis (Configuração Interativa)", overlay=true) // Permite que o usuário defina os períodos das médias móveis na interface periodo_ma7 = input.int(7, title="Período da Média Móvel 7", minval=1) periodo_ma40 = input.int(40, title="Período da Média Móvel 40", minval=1) // Definindo as médias móveis com os períodos configuráveis ma7 = ta.sma(close, periodo_ma7) ma40 = ta.sma(close, periodo_ma40) // Parâmetros de stop loss e take profit stop_loss_pct = input.float(1, title="Stop Loss (%)", minval=0.1) / 100 take_profit_pct = input.float(2, title="Take Profit (%)", minval=0.1) / 100 // Condições para compra e venda compra = ta.crossover(ma7, ma40) venda = ta.crossunder(ma7, ma40) // Impede novas entradas enquanto já houver uma posição aberta if (compra and strategy.position_size == 0) strategy.entry("Compra", strategy.long) // Cálculo do preço de stop loss e take profit stop_loss_price = strategy.position_avg_price * (1 - stop_loss_pct) take_profit_price = strategy.position_avg_price * (1 + take_profit_pct) // Estratégia de saída com stop loss e take profit strategy.exit("Saída", from_entry="Compra", stop=stop_loss_price, limit=take_profit_price) // Sinal de venda (fechamento da posição) if (venda) strategy.close("Compra") // Plotando as médias móveis no gráfico plot(ma7, color=color.blue, title="Média Móvel 7") plot(ma40, color=color.red, title="Média Móvel 40") // Plotando o Stop Loss e Take Profit no gráfico plot(stop_loss_price, color=color.red, style=plot.style_line, linewidth=2, title="Stop Loss") plot(take_profit_price, color=color.green, style=plot.style_line, linewidth=2, title="Take Profit")