Chiến lược này sử dụng các đường băng bằng không của chỉ số CCI như là tín hiệu nhập và xuất để nắm bắt hướng xu hướng. Nó đi dài khi CCI vượt qua trên 0 từ vùng âm, và đi ngắn khi CCI vượt qua dưới 0 từ vùng dương, để theo xu hướng.
Khi CCI đi từ khu vực tiêu cực sang khu vực tích cực, nó chỉ ra rằng giá đã di chuyển ra khỏi khu vực bán quá mức và có thể bắt đầu xu hướng tăng. Khi CCI đi từ khu vực tích cực sang khu vực tiêu cực, nó chỉ ra rằng giá đã di chuyển ra khỏi khu vực mua quá mức và có thể bắt đầu xu hướng giảm.
Giải pháp:
Chiến lược có thể được tối ưu hóa thêm trong các khía cạnh sau:
Tối ưu hóa chiều dài tham số CCI để tìm cài đặt tốt nhất. Kiểm tra chiều dài khác nhau và đánh giá lợi nhuận và tỷ lệ thắng.
Thêm các chỉ số khác như KDJ, MACD để xác nhận, tránh tín hiệu CCI sai. Yêu cầu sự phá vỡ liên tục của mức giá hoặc các tín hiệu đồng thời.
Điều chỉnh năng động khoảng cách dừng lỗ dựa trên sự biến động của thị trường. Dừng chặt chẽ hơn có nghĩa là dừng kịp thời nhưng có thể quá nhạy cảm. Dừng rộng hơn cho phép giữ xu hướng nhưng tăng lỗ nếu dừng lại.
Thư giãn các quy tắc nhập để giảm các mục nhập bị bỏ lỡ.
Thêm các quy tắc thoát khỏi xu hướng để tối đa hóa lợi nhuận.
Chiến lược này sử dụng các giao điểm không CCI để xác định hướng xu hướng và đi vào các giao điểm với mức dừng lỗ hợp lý, theo dõi hiệu quả xu hướng. Việc tối ưu hóa thêm về xác nhận, điều chỉnh tham số, quy tắc nhập cảnh và lối ra có thể nâng cao nó thành một chiến lược theo xu hướng ổn định. Các nhà giao dịch có thể áp dụng khoảng cách dừng thích hợp, thời gian giữ dựa trên sở thích rủi ro và lợi nhuận bằng cách sử dụng chiến lược này.
/*backtest start: 2022-09-21 00:00:00 end: 2023-09-27 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("CCI Level Zero Strategy (by Marcoweb) v1.0", shorttitle="CCI_L_Z_Strat_v1.0", overlay=true) ///////////// CCI CCIlength = input(20, minval=1, title="CCI Period Length") CCIoverSold = -100 CCIoverBought = 100 CCIzeroLine = 0 CCI = cci(hlc3, CCIlength) price = hlc3 vcci = cci(price, CCIlength) source = close buyEntry = crossover(source, CCIzeroLine) sellEntry = crossunder(source, CCIzeroLine) plot(CCI, color=black,title="CCI") p1 = plot(CCIoverSold, color=blue,title="-100") p2 = plot(CCIoverBought, color=red,title="100") p3 = plot(CCIzeroLine, color=orange,title="0") ///////////// CCI 0Trend v1.0 Strategy if (not na(vcci)) if (crossover(CCI, CCIzeroLine)) strategy.entry("CCI_L", strategy.long, stop=CCIoverSold, comment="CCI_L") else strategy.cancel(id="CCI_L") if (crossunder(CCI, CCIzeroLine)) strategy.entry("CCI_S", strategy.short, stop=CCIoverBought, comment="CCI_S") else strategy.cancel(id="CCI_S") //plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)