Isolated Scroll Container

1. Mô tả TP RSI Strategy (TrendlineProject)

RSI mở rộng: vùng trung tính thích nghi theo biến động riêng của RSI, dải ribbon 5 lớp EMA đắp lên chính RSI, bộ phát hiện phân kỳ Regular/Hidden, và 1 dải Bollinger Bands thứ 2 hiển thị trực quan.

1.1 Concept của chỉ báo

Nền tảng là RSI (Relative Strength Index) — chỉ báo động lượng đo tốc độ & độ lớn thay đổi giá, dao động 0-100. Cách dùng RSI truyền thống là so với 2 ngưỡng cố định (thường 70/30). Chỉ báo này đi xa hơn theo 3 hướng mở rộng song song:

  • Vùng trung tính thích nghi (adaptive neutral zone): thay vì so RSI với 1 mức cố định, chỉ báo tự đo "biến động riêng của chính RSI" (như đang chấm Bollinger Bands lên trên đường RSI thay vì lên trên giá), rồi coi 1 dải hẹp quanh đường trung bình của RSI là "vùng trung tính". Chỉ khi RSI thoát hẳn ra khỏi dải hẹp này mới được tính là tín hiệu tăng/giảm — giúp lọc bớt nhiễu so với việc chỉ nhìn RSI dao động quanh 1 con số cố định.
  • Ribbon 5 lớp trên chính RSI: áp dụng ý tưởng "dải ruy băng nhiều đường MA" (thường thấy áp trên giá) nhưng lên giá trị RSI — tạo ra 1 bức tranh "xu hướng của động lượng" ở nhiều tốc độ khác nhau (5 cặp MA nhanh/chậm), giúp nhìn được động lượng đang tăng tốc hay giảm tốc một cách đa lớp, không chỉ nhìn 1 đường RSI đơn.
  • Phân kỳ (Divergence) giữa giá và RSI: khi đỉnh/đáy giá và đỉnh/đáy RSI "không đồng thuận" (giá tạo đỉnh cao hơn nhưng RSI tạo đỉnh thấp hơn, hoặc ngược lại), đó là dấu hiệu động lượng thực sự đang suy yếu/mạnh lên dù giá chưa phản ánh — phân biệt 2 loại: Regular (cảnh báo khả năng đảo chiều) và Hidden (xác nhận khả năng tiếp diễn xu hướng khi giá hồi).

1.2 Chức năng của chỉ báo

  • Hiển thị:
    • Đường RSI: đổi màu xanh dương (bullish, RSI vượt hẳn lên trên vùng trung tính), đỏ (bearish, RSI tụt hẳn xuống dưới vùng trung tính), hoặc trắng ngà (đang trong vùng trung tính).
    • Ribbon 5 lớp (cloud): 5 vùng tô màu giữa 5 cặp MA nhanh/chậm áp lên RSI (mặc định EMA 21/48, 51/98, 103/149, 155/199, 206/499). Mỗi lớp tự đổi màu theo 2 chế độ (Gradient Fade — 5 sắc độ đậm nhạt riêng theo lớp, hoặc Classic — chỉ 2 màu phẳng). Lớp nhanh vẽ đậm hơn, lớp chậm vẽ mờ hơn (tạo cảm giác chiều sâu). Có thể bật thêm 10 đường MA riêng lẻ (mặc định ẩn).
    • Bollinger Bands thứ 2 (hiển thị trực tiếp): 1 dải BB độc lập vẽ trên RSI (mặc định chu kỳ 50, hệ số 2.0) — thuần tuý để tham chiếu trực quan độ "duỗi" của RSI so với biến động gần đây, KHÔNG liên quan tới vùng trung tính ở trên (xem lưu ý kỹ thuật ở mục 1.4).
    • Nhãn phân kỳ: 4 loại — "Bull Div" / "Bear Div" (Regular) và "H.Bull Div" / "H.Bear Div" (Hidden), đặt ngay tại vị trí đường RSI.
    • Đường mức Overbought/Oversold/Midline: 3 đường ngang tuỳ chỉnh được, ẩn mặc định (Overbought=70, Oversold=30, Midline=50).
  • Alert: Chỉ báo có 8 alertcondition(): "RSI Bullish/Bearish Signal" (RSI thoát vùng trung tính), 4 alert phân kỳ (Regular Bull/Bear, Hidden Bull/Bear), và "RSI Overbought"/"RSI Oversold" (RSI cắt qua mức 70/30 — hoạt động độc lập với việc có đang hiển thị 2 đường mức này trên chart hay không).

1.3 Cách dùng chỉ báo

  • Theo dõi đổi màu đường RSI để bắt tín hiệu động lượng thoát vùng trung tính sớm hơn so với việc chỉ chờ RSI chạm 70/30 cố định — phù hợp khi thị trường RSI dao động hẹp trong 1 khoảng dài.
  • Đọc Ribbon 5 lớp như 1 "đồng thuận đa lớp" của động lượng: cả 5 lớp cùng hướng (cùng bullish hoặc cùng bearish) → động lượng mạnh & đồng bộ; lớp nhanh (Ribbon 1, MA 21/48) đảo hướng trước các lớp chậm hơn → cảnh báo sớm khả năng động lượng sắp chuyển hướng ở khung lớn hơn.
  • Dùng BB thứ 2 hiển thị để nhận biết RSI đang "duỗi" mạnh so với dao động gần đây của chính nó (RSI chạm dải trên/dưới của BB thứ 2), khác với việc chỉ nhìn RSI vs 70/30 tĩnh.
  • Phân kỳ Regular (Bull/Bear Div): cân nhắc tìm điểm đảo chiều tiềm năng khi giá tạo đỉnh/đáy mới nhưng RSI không xác nhận theo.
  • Phân kỳ Hidden (H.Bull/H.Bear Div): dùng để xác nhận khả năng xu hướng hiện tại còn tiếp diễn sau 1 nhịp hồi/điều chỉnh, thay vì tín hiệu đảo chiều.
  • Có thể set alert tự động cho toàn bộ 8 sự kiện trên thay vì phải canh chart trực tiếp.

1.4 Cách hoạt động của chỉ báo

Đầu vào & vai trò

  • src (nguồn giá, mặc định close): giá dùng để tính RSI gốc.
  • for_rsi (số nguyên, mặc định 50): chu kỳ tính RSI — lớn hơn nhiều so với chuẩn phổ biến 14, cho ra 1 đường RSI mượt hơn/chậm hơn, ít nhiễu nhưng trễ tín hiệu hơn RSI 14 truyền thống.
  • for_ma (số nguyên, mặc định 50): chu kỳ EMA làm mượt RSI để tạo đường "basis" — trục trung tâm của vùng trung tính thích nghi. Tăng lên → vùng trung tính "trễ" hơn, phản ứng chậm với thay đổi biến động gần đây.
  • for_mult (số thập phân, mặc định 1.0): hệ số nhân độ lệch chuẩn của RSI để tính bao ngoài (upper/lower) — bao này KHÔNG hiển thị trực tiếp, chỉ dùng làm gốc để suy ra vùng trung tính hẹp hơn (xem Luồng 1). Tăng mult → vùng trung tính rộng hơn → cần RSI biến động mạnh hơn mới đổi màu/kích hoạt tín hiệu.
  • i_rsi_line_width, i_bull_color, i_bear_color, i_neutral_color: độ dày và 3 màu của đường RSI theo trạng thái vùng.
  • matype (lựa chọn EMA/SMA/WMA/HMA/RMA/ALMA, mặc định EMA): loại đường trung bình dùng để tính TOÀN BỘ 10 đường Ribbon — áp dụng lên giá trị RSI, không phải giá.
  • ma_len1…ma_len10 (mặc định 21/48, 51/98, 103/149, 155/199, 206/499): 5 cặp chu kỳ ngắn/dài tạo 5 lớp ribbon. Cặp càng nhỏ (VD 21/48) phản ứng càng nhanh với thay đổi RSI gần đây; cặp càng lớn (VD 206/499) càng phản ánh xu hướng động lượng dài hạn, chậm thay đổi.
  • showLine (bật/tắt, mặc định TẮT): hiện/ẩn 10 đường MA riêng lẻ của ribbon (mặc định chỉ hiện phần cloud tô màu, không hiện đường).
  • i_show_ribbon (bật/tắt, mặc định BẬT): công tắc tổng cho cả ribbon (cả đường lẫn cloud). Muốn thấy đường MA ribbon thì CẦN CẢ HAI showLine và i_show_ribbon cùng bật; cloud chỉ cần i_show_ribbon bật.
  • i_ribbon_style (Gradient Fade / Classic, mặc định Gradient Fade): Gradient Fade cho mỗi lớp 1 sắc độ riêng (đậm dần/nhạt dần theo lớp); Classic chỉ dùng 2 màu phẳng cho mọi lớp bất kể lớp nào.
  • i_cloud_transparency (số nguyên, mặc định 40, khoảng 20-90): độ trong suốt nền của cloud — mỗi lớp còn được cộng/trừ thêm 5-10 đơn vị theo thứ tự lớp (lớp 1 đậm hơn nền −10, lớp 5 mờ hơn nền +10) để tạo hiệu ứng chiều sâu.
  • i_show_divergence (bật/tắt, mặc định BẬT): công tắc tổng cho toàn bộ tính năng phân kỳ.
  • i_show_regular / i_show_hidden (bật/tắt, mặc định BẬT cả 2): bật/tắt riêng từng loại phân kỳ Regular / Hidden.
  • i_pivot_lookback (số nguyên, mặc định 5, 1-20): số nến 2 bên để xác nhận 1 đỉnh/đáy dao động — dùng CHUNG cho CẢ đỉnh/đáy của RSI VÀ của giá (high/low). Tăng lên → ít pivot hơn nhưng "chắc" hơn.
  • i_max_lookback (số nguyên, mặc định 60, 10-200): khoảng cách tối đa (số nến) giữa 2 pivot liên tiếp để còn được tính là 1 cặp phân kỳ hợp lệ — quá xa thì bị coi là không còn liên quan, bỏ qua so sánh.
  • i_bull_reg_color, i_bear_reg_color, i_bull_hid_color, i_bear_hid_color, i_div_label_size: màu và cỡ chữ 4 loại nhãn phân kỳ.
  • i_show_bb (bật/tắt, mặc định BẬT): hiện/ẩn dải Bollinger Bands thứ 2 (hiển thị trực tiếp trên chart).
  • i_bb_length (số nguyên, mặc định 50): chu kỳ tính BB thứ 2 — độc lập hoàn toàn với for_ma dù mặc định cùng là 50.
  • i_bb_mult (số thập phân, mặc định 2.0): hệ số nhân độ lệch chuẩn của BB thứ 2 — độc lập với for_mult dù cùng vai trò "hệ số nhân stdev".
  • i_bb_upper_color, i_bb_lower_color, i_bb_width, i_show_bb_fill, i_bb_fill_transp: màu/độ dày/tô nền của BB thứ 2.
  • i_show_ob_os (bật/tắt, mặc định TẮT): hiện/ẩn 2 đường mức Overbought/Oversold.
  • i_ob_level / i_os_level (mặc định 70 / 30): giá trị 2 mức này — lưu ý alert Overbought/Oversold vẫn hoạt động dù đường bị ẩn (xem mục Alert).
  • i_show_mid / i_mid_level (mặc định TẮT / 50): đường mức giữa, thuần hiển thị tham chiếu.

Các khối logic chính

🎨 Luồng 1 — RSI & Vùng trung tính thích nghi (mọi nến)

  • current_rsi = RSI(src, for_rsi).
  • basis = EMA(current_rsi, for_ma) — đường trung tâm; dev = for_mult × stdev(current_rsi, for_ma); upper = basis+dev, lower = basis−dev — đây là 1 bao Bollinger đầy đủ tính trên RSI nhưng không được vẽ ra chart, chỉ dùng làm bước trung gian.
  • Vùng trung tính thực sự dùng để kích hoạt tín hiệu: disp_up = basis + (upper−lower)×0.1; disp_down = basis − (upper−lower)×0.1. Vì (upper−lower) = 2×dev, nên disp_up/disp_down thực chất chỉ cách basis 0.2×dev mỗi bên — tức chỉ bằng 10% bề rộng của bao Bollinger đầy đủ ở trên, KHÔNG phải toàn bộ upper/lower.
  • Ví dụ cụ thể: basis=50, dev=8 (for_mult=1.0) → upper=58, lower=42, bề rộng bao=16. disp_up = 50 + 16×0.1 = 51.6; disp_down = 50 − 1.6 = 48.4. Vùng trung tính thực tế chỉ rộng 3.2 điểm RSI quanh basis, hẹp hơn nhiều so với bao 42-58 mà for_ma/for_mult trực tiếp tạo ra.
  • Màu đường RSI: current_rsi ≥ disp_up → xanh (bull); current_rsi ≤ disp_down → đỏ (bear); còn lại → trắng ngà (neutral). rsi_Green = RSI cắt lên trên disp_up; rsi_Red = RSI cắt xuống dưới disp_down — 2 sự kiện này là gốc của 2 alert "RSI Bullish/Bearish Signal".

📊 Luồng 2 — Ribbon 5 lớp trên RSI (mọi nến)

  • Hàm f_ma() tính 1 trong 6 loại MA (theo matype) áp lên current_rsi — cho ra 10 đường: mashort1-5, malong1-5, theo 5 cặp chu kỳ đã khai báo ở Inputs.
  • 3 quyết định màu độc lập dùng chung bảng màu f_get_ribbon_colors(style, điều_kiện, lớp):
    • Màu cloud (lớp X): theo mashortX ≥ malongX (cặp ngắn/dài đang ở trạng thái "bullish" hay không) — quyết định màu VÙNG TÔ giữa 2 đường.
    • Màu đường ngắn (lớp X): theo mashortX ≥ mashortX 1 nến trước (đường ngắn tự nó đang tăng hay giảm).
    • Màu đường dài (lớp X): theo malongX ≥ malongX 1 nến trước (đường dài tự nó đang tăng hay giảm).
  • Vẽ: 10 đường plot() với màu = na (vô hình) trừ khi showLine VÀ i_show_ribbon cùng bật; 5 fill() nối short-long mỗi cặp, hiện khi i_show_ribbon bật, độ trong suốt = i_cloud_transparency ± offset theo lớp (lớp 1 đậm nhất, lớp 5 mờ nhất).

🔍 Luồng 3 — Phát hiện phân kỳ (mọi nến)

  • 4 mảng pivot riêng biệt được duy trì (tối đa 10 phần tử mỗi mảng, mới nhất luôn ở vị trí 0): đỉnh RSI, đáy RSI, đỉnh giá (high), đáy giá (low) — mỗi khi ta.pivothigh/pivotlow (trễ i_pivot_lookback nến) xác nhận 1 điểm mới thì được đẩy vào đầu mảng tương ứng.
  • Khi có pivot RSI mới (is_new_low/is_new_high dựa trên mảng RSI), so sánh 2 mục mới nhất (vị trí 0 = hiện tại, vị trí 1 = trước đó) của CẢ mảng RSI lẫn mảng giá tương ứng, với điều kiện khoảng cách giữa 2 pivot: phải > i_pivot_lookback (khác pivot) và ≤ i_max_lookback (không quá xa/cũ).
  • Bullish Regular: giá đáy sau < đáy trước (Lower Low) NHƯNG RSI đáy sau > đáy trước (Higher Low) → giá giảm tiếp nhưng động lượng giảm đã yếu đi.
  • Bearish Regular: giá đỉnh sau > đỉnh trước (Higher High) NHƯNG RSI đỉnh sau < đỉnh trước (Lower High) → giá tăng tiếp nhưng động lượng tăng đã yếu đi.
  • Bullish Hidden: giá đáy sau > đáy trước (Higher Low, hồi trong uptrend) NHƯNG RSI đáy sau < đáy trước (Lower Low) → xu hướng tăng khả năng còn tiếp diễn sau nhịp hồi.
  • Bearish Hidden: giá đỉnh sau < đỉnh trước (Lower High, hồi trong downtrend) NHƯNG RSI đỉnh sau > đỉnh trước (Higher High) → xu hướng giảm khả năng còn tiếp diễn sau nhịp hồi.
  • Vẽ nhãn tương ứng tại vị trí (bar_index, current_rsi) nếu i_show_divergence + toggle loại (Regular/Hidden) đang bật.

📏 Luồng 4 — Bollinger Bands thứ 2 & các đường mức (mọi nến)

  • basi/dev1/upper1/lower1 = 1 bộ SMA+stdev HOÀN TOÀN RIÊNG trên current_rsi, dùng i_bb_length/i_bb_mult — vẽ trực tiếp 2 đường Upper/Lower + fill tuỳ chọn, nếu i_show_bb bật.
  • 3 đường mức Overbought/Oversold/Midline vẽ dạng bậc thang (stepline) theo i_ob_level/i_os_level/i_mid_level, ẩn theo từng toggle riêng.

Đầu ra & vai trò trong sử dụng

  • Đường RSI 3 màu: tín hiệu động lượng chính, đã lọc qua vùng trung tính thích nghi thay vì ngưỡng cố định.
  • Ribbon cloud 5 lớp: bức tranh đa lớp về xu hướng động lượng — dùng để đánh giá độ đồng thuận/phân kỳ giữa các "tốc độ" động lượng khác nhau.
  • Nhãn phân kỳ: cảnh báo sớm khả năng đảo chiều (Regular) hoặc xác nhận tiếp diễn xu hướng (Hidden).
  • BB thứ 2 + đường mức: tham chiếu trực quan bổ sung về mức "duỗi" của RSI, độc lập với cơ chế vùng trung tính đang thực sự điều khiển màu/alert.
  • 8 Alert: cho phép tự động hoá theo dõi toàn bộ sự kiện trên mà không cần trực canh chart.
💡 Lưu ý kỹ thuật quan trọng: Chỉ báo có 2 bộ Bollinger-trên-RSI hoàn toàn độc lập dù trông giống nhau và mặc định cùng chu kỳ 50: (1) bộ "Sensitivity" (for_ma/for_mult) — KHÔNG hiển thị, chỉ dùng để suy ra vùng trung tính hẹp (10% bề rộng bao) điều khiển màu RSI + alert Bullish/Bearish Signal; (2) bộ "Bollinger Band Settings" (i_bb_length/i_bb_mult) — CÓ hiển thị trực tiếp trên chart, thuần tham chiếu trực quan, không ảnh hưởng tới màu RSI hay bất kỳ alert nào. Chỉnh 1 trong 2 bộ input này sẽ KHÔNG ảnh hưởng tới bộ còn lại dù tên gọi dễ gây nhầm lẫn là "cùng 1 dải BB". Ngoài ra, việc gate phân kỳ chỉ dựa vào "có pivot RSI mới" (is_new_low/is_new_high) mà không kiểm tra độc lập "có pivot giá mới cùng nến" — code ngầm giả định 2 loại pivot (cùng lookback) luôn xác nhận cùng thời điểm, điều này đúng phần lớn nhưng không được code verify tường minh.
Zoom/Pan Layered Image
Sơ đồ logic chỉ báo TP RSI
− +

Chỉ báo trên vừa hoá thành BOT TRADE — chỉ 1 click AI

📊Chỉ báo gốc
→
🤖AI convert 1-click
→
⚙️Bot tự trade 24/7