
Chiến lược này được gọi là quy tắc giao chéo vàng, một chiến lược giao dịch định lượng kết hợp chỉ số trung bình di chuyển (EMA) và chỉ số tương đối mạnh (RSI). Ý tưởng chính của nó là mua ở khu vực có nhu cầu cao, bán ở khu vực cung cấp cao, sử dụng EMA để xác định hướng của xu hướng tổng thể và sử dụng RSI để xác định khu vực quá mua quá bán.
Chiến lược này đầu tiên tính toán 50 ngày EMA và 14 ngày RSI. Sau đó, thiết lập vùng Brin ở khu vực nhu cầu cao và vùng cung cấp cao.
Cụ thể, khi giá đóng cửa cao hơn 50 ngày EMA và ở khu vực có nhu cầu cao, phát tín hiệu mua; khi giá đóng cửa thấp hơn 50 ngày EMA và ở khu vực có nguồn cung cao, phát tín hiệu bán. Như vậy, sử dụng EMA để đánh giá xu hướng xấp xỉ, sử dụng RSI để đánh giá khu vực mua quá mức và bán quá mức, và chơi ngược lại giao dịch chiến thuật ở khu vực cực đoan, để có tỷ lệ thắng cao hơn.
Chiến lược này kết hợp các chỉ số kép EMA và RSI, có thể xác định hiệu quả xu hướng thị trường và khu vực quá mua quá bán. EMA làm mịn giá, xác định xu hướng lớn, RSI xác định không gian điều chỉnh địa phương. Cả hai bổ sung cho nhau, tránh tín hiệu sai.
Ngoài ra, chiến lược này bổ sung các khái niệm về khu vực có nhu cầu cao và khu vực cung cấp cao, đó là sử dụng các khu vực mua quá mức và bán quá mức được thiết lập bởi các Brin. Điều này có thể lọc ra hầu hết tiếng ồn và chỉ chơi ở khu vực cực đoan, do đó cải thiện tỷ lệ chiến thắng của chiến lược.
Nhìn chung, chiến lược này kết hợp nhiều chỉ số và khái niệm, tận dụng lợi thế của các công cụ khác nhau, tấn công hình dạng, tạo ra một hệ thống lựa chọn giá trị và thời gian mạnh mẽ, có thể đạt được lợi nhuận cao hơn.
Rủi ro lớn nhất của chiến lược này nằm ở thiết lập vùng Brin. Nếu khu vực nhu cầu cao và khu vực cung cấp cao được thiết lập quá lớn hoặc quá nhỏ, chiến lược sẽ dẫn đến tổn thất thường xuyên. Các tham số điều chỉnh phải tùy thuộc vào các đặc điểm cổ phiếu và môi trường thị trường khác nhau.
Một rủi ro tiềm ẩn khác là nếu thị trường xảy ra đỉnh hoặc đáy lâu dài, sẽ có khả năng EMA và RSI phát tín hiệu sai cùng một lúc. Trong trường hợp này, phải can thiệp bằng tay, dừng chiến lược và tránh thiệt hại lớn.
Thứ nhất, chiến lược này có thể giới thiệu các thuật toán học máy để tối ưu hóa động các tham số. Ví dụ, sử dụng học tập tăng cường để điều chỉnh giới hạn trên và dưới của Brin, hoặc sử dụng LSTM để tối ưu hóa các tham số của EMA và RSI.
Thứ hai, chiến lược này có thể kết hợp với các kỹ thuật thu thập văn bản và xử lý ngôn ngữ tự nhiên để có được các chỉ số cảm xúc thị trường, hỗ trợ quyết định giao dịch. Chiến lược can thiệp bằng tay có thể tránh rủi ro hiệu quả khi cảm xúc thị trường cực đoan xuất hiện.
Thứ ba, chiến lược này có thể được kết hợp với chiến lược lựa chọn cổ phiếu. Đầu tiên, chọn mục tiêu có tiềm năng tăng trưởng bằng các phương pháp như học tập sâu; và sau đó sử dụng chiến lược này để chọn thời gian; để nâng cao hiệu quả của chiến lược.
Nhìn chung, chiến lược này có sự kết hợp các chỉ số phù hợp, lợi thế rõ ràng và kiểm soát rủi ro hiệu quả. Việc tối ưu hóa bằng cách giới thiệu các công nghệ như học máy và phân tích văn bản, hy vọng sẽ nâng cao hiệu quả của chiến lược hơn nữa và trở thành mô hình cho chiến lược định lượng thế hệ mới.
/*backtest
start: 2023-01-28 00:00:00
end: 2024-02-03 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Powerful EMA and RSI Strategy", overlay=true)
// Define EMA parameters
ema50 = ta.ema(close, 50)
// Calculate RSI
rsiLength = input(14, title="RSI Length")
rsiValue = ta.rsi(close, rsiLength)
// Define Demand and Supply zones
demandZone = input(true, title="Demand Zone")
supplyZone = input(true, title="Supply Zone")
// Define Buy and Sell conditions
buyCondition = close > ema50 and rsiValue > 55
sellCondition = close < ema50 and rsiValue < 45
// Entry point buy when the price is closed above 50 EMA at Demand area
buyEntryCondition = close > ema50 and demandZone
strategy.entry("Buy", strategy.long, when=buyCondition and buyEntryCondition)
// Entry point sell when the price is closed below 50 EMA at Supply area
sellEntryCondition = close < ema50 and supplyZone
strategy.entry("Sell", strategy.short, when=sellCondition and sellEntryCondition)
// Plot 50 EMA for visualization
plot(ema50, color=color.blue, title="50 EMA")
// Plot RSI for visualization
hline(55, "Overbought", color=color.red)
hline(45, "Oversold", color=color.green)
plot(rsiValue, color=color.purple, title="RSI")
// Plot Demand and Supply zones
bgcolor(demandZone ? color.new(color.green, 90) : na)
bgcolor(supplyZone ? color.new(color.red, 90) : na)