
Chiến lược này được gọi là chiến lược giao dịch định lượng với chỉ số RSI kết hợp với chỉ số CCI. Chiến lược này chủ yếu sử dụng sự kết hợp của chỉ số RSI và chỉ số CCI để đánh giá hiện tượng quá mua quá bán của thị trường để nắm bắt cơ hội đảo ngược. Cụ thể, chiến lược này thiết lập quy tắc mở vị trí nhiều đầu và trống bằng cách tính toán đường đa trống của RSI kết hợp với tín hiệu đa trống của chỉ số CCI.
Lập luận cốt lõi của chiến lược này là sử dụng tính thống kê của chỉ số RSI và chỉ số CCI để xác định xem thị trường hiện đang quá mua hay quá bán.
Đầu tiên, phần RSI. Chỉ số RSI có thể phản ánh hiện tượng mua bán quá mức của thị trường. RSI lớn hơn 70 là vùng mua quá mức và nhỏ hơn 30 là vùng bán quá mức. Chiến lược này đặt hai chỉ số RSI dài và ngắn, tham số dài là 14 chu kỳ mặc định và tham số ngắn là 12 chu kỳ.
Ngoài ra, phần CCI. Chỉ số CCI cũng có thể được sử dụng để đánh giá quá mua quá bán, với tham số 14 chu kỳ. CCI cao hơn 100 là quá mua, thấp hơn -100 là quá bán.
Trong khi đó, các nhà đầu tư khác cũng có thể tham gia vào chiến lược này.
Bắt đầu nhiều vị trí: khi chỉ số RSI cho thấy khu vực bán tháo (trong chu kỳ này, RSI dài ngắn đều nhỏ hơn 30) và chỉ số CCI nhỏ hơn -100, hãy làm nhiều hơn;
Bỏ vị trí trên đầu trống: Khi chỉ số RSI cho thấy vùng mua quá mức (trong chu kỳ này, RSI dài và ngắn đều lớn hơn 70) và chỉ số CCI cao hơn 100.
Thông qua sự phán đoán chung của chỉ số RSI và chỉ số CCI, có thể xác định hiệu quả khoảng vượt quá mua và bán thực sự, do đó cải thiện sự ổn định và khả năng lợi nhuận của chiến lược.
Ưu điểm lớn nhất của chiến lược này là sử dụng các quy luật thống kê của cả hai chỉ số RSI và CCI để xác định chính xác hơn các hiện tượng quá mua quá bán, do đó cung cấp điểm bắt đầu lý tưởng để nắm bắt sự đảo ngược. Các lợi thế cụ thể như sau:
Rủi ro chính của chiến lược này là các tín hiệu quá mua và quá bán được đánh giá bởi RSI và CCI không nhất thiết phải phản ánh hoàn toàn thời điểm đảo ngược thực tế. Các rủi ro cụ thể bao gồm:
Các giải pháp đối phó với rủi ro bao gồm:
Chiến lược này có thể được tối ưu hóa hơn nữa trong hoạt động thực tế, các ý tưởng tối ưu hóa chính bao gồm:
Bằng cách thử nghiệm và tối ưu hóa, có thể mong đợi lợi nhuận và sự ổn định của chiến lược này sẽ được cải thiện hơn nữa.
Chiến lược này là một trong những chiến lược nắm bắt đảo ngược điển hình hơn. Bằng cách kết hợp hai chỉ số phổ biến, RSI và CCI, để đánh giá khoảng vượt quá mua và bán, và thiết kế các quy tắc mở vị trí tương ứng, tạo thành một chiến lược giao dịch đường ngắn đơn giản và thực tế. Ưu điểm chính của chiến lược này là sử dụng bộ chỉ số để đánh giá chính xác hơn, tránh sự sai lệch của đảo ngược giả, do đó nắm bắt thời gian tốt nhất để đảo ngược.
/*backtest
start: 2023-12-22 00:00:00
end: 2024-01-21 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
//Author: RvZ14
//Based on Joseph Nemeth MACD+CCI strategy
//Reference reading: https://sites.google.com/site/forexjosephnemeth/home/macd-cci
strategy(title="MACD+CCI Strategy", shorttitle="macd/cci")
length = input(14, minval=1)
fastLength = input(12, minval=1), slowLength=input(26,minval=1)
signalLength=input(2,minval=1)
src = input(close, title="CCI Source")
//cci
ma = sma(src, length)
cci = (src - ma) / (0.015 * dev(src, length))
plot(cci, title = "cci", color=#5DADE2,linewidth = 1,transp = 0)
band1 = hline(100, color=gray, linewidth = 1)
band0 = hline(-100, color=gray, linewidth = 1)
fill(band1, band0, color= #F9E79F)
//macd
source = close
fastMA = ema(source, fastLength)
slowMA = ema(source, slowLength)
macd = fastMA - slowMA
signal = ema(macd, signalLength)
hist = macd - signal
plot(hist, color=#EC7063, style=histogram)
plot(macd, title = "macd", color=#5DADE2, linewidth = 1,transp = 0)
plot(signal, title = "signal", color=#F5B041,linewidth = 1,transp = 0)
longCond = cci > 100 and macd > 0 or cci > -100 and macd < 0
shortCond = cci < -100 and macd < 0 or cci < 100 and macd > 0
strategy.entry("long",strategy.long,when = longCond == true)
strategy.entry("short",strategy.short,when=shortCond == true)