Đây là một hệ thống chiến lược giao dịch dựa trên một trung bình di chuyển đơn giản bốn giai đoạn, tích hợp với các cơ chế quản lý dừng lỗ và lợi nhuận động. Chiến lược nắm bắt các điểm chuyển đổi xu hướng thị trường bằng cách theo dõi giao thoa giá với trung bình di chuyển ngắn hạn và thực hiện mức dừng lỗ và lợi nhuận dựa trên tỷ lệ phần trăm để quản lý rủi ro. Sức mạnh cốt lõi nằm trong việc sử dụng các đặc điểm phản ứng nhanh của trung bình di chuyển ngắn hạn, kết hợp với các quy tắc quản lý tiền chặt chẽ để đạt được kết quả giao dịch ổn định.
Chiến lược hoạt động theo logic cốt lõi sau: Đầu tiên, nó tính toán trung bình di chuyển đơn giản 4 giai đoạn (SMA) như là chỉ số chính. Khi giá vượt trên SMA, hệ thống nhận ra nó là tín hiệu tăng và nhập vào vị trí dài; khi giá vượt dưới SMA, nó xác định tín hiệu giảm và nhập vào vị trí ngắn. Mỗi giao dịch được thiết lập với các điểm lấy lợi nhuận và dừng lỗ năng động dựa trên giá nhập cảnh, với các giá mặc định là 2% cho lấy lợi nhuận và 1% cho dừng lỗ.
Đây là một chiến lược giao dịch định lượng được cấu trúc tốt với logic rõ ràng. Nó nắm bắt được đà thị trường thông qua các đường trung bình động ngắn hạn, được bổ sung bởi các cơ chế kiểm soát rủi ro nghiêm ngặt, phù hợp với các nhà giao dịch tìm kiếm lợi nhuận ổn định. Trong khi có chỗ cho tối ưu hóa, khuôn khổ cơ bản của chiến lược cung cấp khả năng mở rộng tốt, và thông qua cải tiến và điều chỉnh liên tục, nó có tiềm năng để đạt được kết quả giao dịch tốt hơn.
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-28 00:00:00 period: 2d basePeriod: 2d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("4SMA Strategy with Targets and Stop Loss", overlay=true) // Input parameters for SMA smaLength = input.int(4, title="SMA Length", minval=1) // Input parameters for stop loss and take profit takeProfitPercent = input.float(2.0, title="Take Profit (%)", step=0.1) // Default: 2% stopLossPercent = input.float(1.0, title="Stop Loss (%)", step=0.1) // Default: 1% // Calculate 4-period SMA sma = ta.sma(close, smaLength) // Plot SMA plot(sma, color=color.blue, title="4SMA Line") // Entry Conditions longCondition = ta.crossover(close, sma) // Price crosses above SMA (bullish signal) shortCondition = ta.crossunder(close, sma) // Price crosses below SMA (bearish signal) // Strategy Logic if (longCondition) strategy.entry("Long", strategy.long) // Enter long position if (shortCondition) strategy.entry("Short", strategy.short) // Enter short position // Calculate Take Profit and Stop Loss longTakeProfit = strategy.position_avg_price * (1 + takeProfitPercent / 100) // TP for long longStopLoss = strategy.position_avg_price * (1 - stopLossPercent / 100) // SL for long shortTakeProfit = strategy.position_avg_price * (1 - takeProfitPercent / 100) // TP for short shortStopLoss = strategy.position_avg_price * (1 + stopLossPercent / 100) // SL for short // Exit for Long if (strategy.position_size > 0) // If in a long position strategy.exit("Long TP/SL", from_entry="Long", limit=longTakeProfit, stop=longStopLoss) // Exit for Short if (strategy.position_size < 0) // If in a short position strategy.exit("Short TP/SL", from_entry="Short", limit=shortTakeProfit, stop=shortStopLoss)