Chiến lược này kết hợp ba chỉ số phân loại: RSI, CCI và Williams%R để tạo ra các tín hiệu giao dịch hiệu quả. Nó sẽ phát hành tín hiệu mua hoặc bán khi cả ba chỉ số đồng thời hiển thị tín hiệu mua quá nhiều hoặc bán quá nhiều. So với việc sử dụng một chỉ số duy nhất, chiến lược tổng hợp này lọc ra nhiều tín hiệu sai và cải thiện sự ổn định.
Chiến lược này được gọi là
Chiến lược chủ yếu dựa trên các chỉ số sau đây cho các quyết định giao dịch:
Khi chỉ số RSI dưới 25, nó báo hiệu tình trạng bán quá mức. Khi chỉ số RSI trên 75, nó báo hiệu tình trạng mua quá mức.
Khi cả ba chỉ số đồng thời hiển thị tín hiệu mua, tức là RSI < 25, CCI < -130, Williams %R < -85, chiến lược sẽ dài. Khi cả ba chỉ số đồng thời hiển thị tín hiệu bán, tức là RSI > 75, CCI > 130, Williams %R > -15, chiến lược sẽ ngắn.
Điều này tránh các tín hiệu sai từ một chỉ số duy nhất và cải thiện độ tin cậy. Nó cũng cấu hình dừng lỗ và lấy lợi nhuận để kiểm soát rủi ro và lợi nhuận cho mỗi giao dịch.
Các bộ lọc kết hợp nhiều chỉ số cho tín hiệu sai
Bằng cách kết hợp RSI, CCI và Williams% R, chiến lược lọc ra một số tín hiệu sai từ các chỉ số riêng lẻ, cải thiện độ chính xác.
Tự động dừng lỗ/lợi nhuận lấy quản lý rủi ro Chức năng dừng lỗ và lấy lợi nhuận tích hợp tự động đặt giá thoát cho mỗi giao dịch, hiệu quả giới hạn lỗ trong ngưỡng chấp nhận được.
Khả năng giao dịch trung hạn Chiến lược này hoạt động tốt hơn cho các giao dịch trung hạn, xác định rõ các điểm biến đổi trung hạn thông qua sự kết hợp của chỉ số.
Dữ liệu backtest vững chắc
Chiến lược sử dụng các thanh 45 phút của EUR/USD, một cặp ngoại hối lớn với thanh khoản và dữ liệu phong phú, giảm rủi ro quá mức từ dữ liệu không đủ.
Xác định xu hướng dài hạn yếu
Chiến lược dựa nhiều hơn vào các tín hiệu ngược lại. Khả năng đo lường và theo dõi xu hướng dài hạn của nó bị hạn chế. Trong các thị trường một chiều lâu dài, tiềm năng lợi nhuận bị hạn chế.
Thiếu biến động ngắn hạn Với các thanh 45 phút, chiến lược bỏ lỡ cơ hội sinh lợi từ sự biến động giá ngắn hạn thường xuyên hơn.
Rủi ro hệ thống
Chiến lược này chủ yếu áp dụng cho EUR/USD. Trong thời gian khủng hoảng kinh tế nghiêm trọng làm rung chuyển thị trường ngoại hối toàn cầu, các quy tắc giao dịch của nó có thể thất bại, gây ra tổn thất lớn.
Thêm các chỉ số theo xu hướng
Cố gắng kết hợp các chỉ số xu hướng như MA, Boll vv để hỗ trợ nhận dạng xu hướng dài hạn.
Tối ưu hóa các thông số dừng lỗ/lợi nhuận Kiểm tra lại nhiều dữ liệu lịch sử hơn để đánh giá tác động của các tham số dừng lỗ / lợi nhuận khác nhau đối với lợi nhuận cuối cùng, để tìm ra thiết lập tối ưu.
Mở rộng sản phẩm
Hiện nay chủ yếu áp dụng cho EUR / USD. Chúng tôi có thể thử triển khai nó trên các cặp tiền tệ lớn khác như GBP, JPY, AUD để kiểm tra tính ổn định và khả năng chuyển nhượng.
Chiến lược
/*backtest start: 2024-01-16 00:00:00 end: 2024-01-23 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("RSI CCI Williams %R Strategy with TP and SL", overlay=true) // Input parameters for indicators rsi_period = input(14, title="RSI Period") cci_period = input(20, title="CCI Period") williams_period = input(14, title="Williams %R Period") // Thresholds for overbought and oversold conditions rsi_oversold = input(25, title="RSI Oversold Level") rsi_overbought = input(75, title="RSI Overbought Level") cci_oversold = input(-130, title="CCI Oversold Level") cci_overbought = input(130, title="CCI Overbought Level") williams_oversold = input(-85, title="Williams %R Oversold Level") williams_overbought = input(-15, title="Williams %R Overbought Level") // Take profit and stop loss levels as a percentage take_profit_pct = input(1.2, title="Take Profit (%)") / 100 stop_loss_pct = input(0.45, title="Stop Loss (%)") / 100 // Indicator calculations rsi = ta.rsi(close, rsi_period) cci = ta.cci(close, cci_period) highestHigh = ta.highest(high, williams_period) lowestLow = ta.lowest(low, williams_period) williamsR = (highestHigh - close) / (highestHigh - lowestLow) * -100 // Entry conditions longCondition = rsi < rsi_oversold and cci < cci_oversold and williamsR < williams_oversold and strategy.position_size == 0 shortCondition = rsi > rsi_overbought and cci > cci_overbought and williamsR > williams_overbought and strategy.position_size == 0 // Execute strategy entry orders if (longCondition) strategy.entry("Long", strategy.long) strategy.exit("Take Profit or Stop Loss Long", "Long", limit=close * (1 + take_profit_pct), stop=close * (1 - stop_loss_pct)) if (shortCondition) strategy.entry("Short", strategy.short) strategy.exit("Take Profit or Stop Loss Short", "Short", limit=close * (1 - take_profit_pct), stop=close * (1 + stop_loss_pct)) // Plot the signals on the chart plotshape(series=longCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, text="BUY") plotshape(series=shortCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, text="SELL") // Plot the indicators for visualization plot(rsi, title="RSI", color=color.blue) plot(cci, title="CCI", color=color.purple) plot(williamsR, title="Williams %R", color=color.orange)