Chiến lược RSI-CCI Fusion kết hợp các điểm mạnh của các chỉ số RSI và CCI để tạo thành một cách tiếp cận giao dịch mạnh mẽ.
Tính toán giá trị RSI và CCI.
Tiêu chuẩn hóa RSI và CCI bằng cách sử dụng điểm số z để so sánh tốt hơn.
Fuse chuẩn hóa RSI và CCI với trọng lượng được chỉ định.
Tính toán các dải trên và dưới động để xác định mức mua quá mức / bán quá mức.
Xem xét ngắn khi chỉ số hợp hạch vượt qua dưới dải trên. Xem xét dài khi vượt qua dải dưới.
So với việc sử dụng RSI hoặc CCI một mình, lợi thế của chiến lược này bao gồm:
Tích hợp điểm mạnh của cả hai chỉ số để có độ chính xác tốt hơn.
Các băng tần năng động khoa học hơn làm giảm tín hiệu sai.
Tiêu chuẩn hóa cho phép so sánh, cải thiện sự hợp nhất.
Có thể đánh giá cả xu hướng và tình trạng mua quá mức / bán quá mức.
Một số rủi ro của chiến lược này:
Các thông số không chính xác có thể bỏ lỡ các điểm giao dịch quan trọng.
Những cân nặng không phù hợp có thể làm suy yếu vai trò của một chỉ số.
Bỏ qua xu hướng tổng thể có thể dẫn đến giao dịch ngược xu hướng.
Cài đặt dải quá lỏng hoặc quá chật tăng nguy cơ đánh giá sai.
Nó có thể được tối ưu hóa bằng cách:
Tìm các thông số tối ưu thông qua thử nghiệm.
Điều chỉnh trọng lượng dựa trên điều kiện thị trường.
Tích hợp các chỉ số xu hướng và khối lượng để có độ chính xác tốt hơn.
Thiết lập stop loss/take profit để kiểm soát rủi ro.
Tối ưu hóa băng tần để cân bằng độ nhạy và tiếng ồn.
Chiến lược hợp nhất RSI-CCI cải thiện đánh giá bằng cách hợp nhất các chỉ số. Với các tham số và kiểm soát rủi ro thích hợp, nó thường vượt trội hơn các chiến lược chỉ số duy nhất. Nhưng vẫn cần điều chỉnh dựa trên điều kiện thị trường.
/*backtest start: 2023-08-19 00:00:00 end: 2023-09-18 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // © Julien_Eche //@version=5 // strategy("RSI-CCI Fusion Strategy", shorttitle="RSI-CCI Fusion Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10) length = input(14, title="Length") rsi_weight = input.float(0.5, title="RSI Weight", minval=0.0, maxval=1.0) cci_weight = 1.0 - rsi_weight enableShort = input(false, "Enable Short Positions") src = close rsi = ta.rsi(src, length) cci = ta.cci(src, length) // Standardize the RSI and CCI values using z-score rsi_std = ta.stdev(rsi, length) rsi_mean = ta.sma(rsi, length) rsi_z = (rsi - rsi_mean) / rsi_std cci_std = ta.stdev(cci, length) cci_mean = ta.sma(cci, length) cci_z = (cci - cci_mean) / cci_std // Combine the standardized RSI and CCI combined_z = rsi_weight * rsi_z + cci_weight * cci_z // Rescale to the original scale rescaled = combined_z * ta.stdev(combined_z, length) + ta.sma(combined_z, length) // Calculate dynamic upper and lower bands upper_band = ta.sma(rescaled, length) + ta.stdev(rescaled, length) lower_band = ta.sma(rescaled, length) - ta.stdev(rescaled, length) // Buy and sell conditions buySignal = ta.crossover(rescaled, lower_band) sellSignal = ta.crossunder(rescaled, upper_band) // Enter long position if buySignal strategy.entry("Buy", strategy.long) // Exit long position if sellSignal strategy.close("Buy") // Enter short position if enabled if enableShort and sellSignal strategy.entry("Sell", strategy.short) // Exit short position if enabled if enableShort and buySignal strategy.close("Sell")