Isolated Scroll Container

1. Mô tả Quarterly Theory ICT 04 SSMT 4Quarter Divergence Strategy

Chỉ báo theo dõi cùng lúc hai cặp tài sản có liên quan: cặp trên chart của bạn và một cặp thứ hai ("Symbol"). Nó ghép các đỉnh xoay và đáy xoay của hai cặp lại với nhau, và khi — ở một quý (quarter) sau của chu kỳ thời gian đã chọn (mặc định 90 Minute) — chỉ MỘT trong hai cặp phá được đỉnh/đáy xoay còn cặp kia không phá được, nó in nhãn "SSMT" tăng hoặc giảm (ví dụ "Q2 to Q3") lên cả hai chart và có thể bắn cảnh báo.

1.1 Concept của chỉ báo

Chỉ báo dựa trên một ý tưởng trong trường phái ICT: hai thị trường thường đi cùng nhau (BTC và ETH, Vàng và Bạc, NQ và ES...) thì phải cùng phá đỉnh và cùng phá đáy. Khi một thị trường phá đỉnh hoặc đáy mà thị trường còn lại không chịu đi theo, sự bất đồng này — gọi là phân kỳ SMT (Smart Money Technique) — được hiểu là cú phá đó là một cú quét thanh khoản chứ không phải sức mạnh thật. Phiên bản này thêm một bộ lọc thời gian từ Quarterly Theory: phân kỳ chỉ được tính khi nó xuất hiện ở một quý khác với quý mà đỉnh/đáy xoay đó hình thành.

  • Quarterly Theory: mọi chu kỳ đều được chia làm 4 quý. Một năm, một tháng, một tuần, một ngày hay một khối 90 phút đều có thể chia thành Q1 → Q4. Tên bốn quý theo tác giả được viết sẵn trong code (nhưng không hiển thị ra chart): Q1 = Tích lũy (Accumulation), Q2 = Thao túng (Manipulation), Q3 = Phân phối (Distribution), Q4 = Tiếp diễn hoặc Đảo chiều (Continuation or Reversal). Bạn chọn chu kỳ muốn dùng: Yearly, Monthly, Weekly, Daily, 90 Minute (mặc định) hoặc Micro. Mọi đồng hồ đều theo giờ New York.
  • Hai cặp tài sản, một phép so sánh. Cặp trên chart (gọi là X trong tài liệu này) được so với cặp nhập ở ô "Symbol" (gọi là Y). Hai cặp phải là hai thị trường có liên quan, nếu không thì "phân kỳ" chỉ là nhiễu.
  • Cặp đỉnh/đáy xoay. Một đỉnh xoay của X và một đỉnh xoay của Y hình thành cách nhau không quá 2 nến sẽ được dán lại thành một "cặp" (đáy xoay cũng làm y như vậy). Cặp này ghi nhớ cả hai mức giá và quý mà nó được ghi nhận.
  • Phân kỳ. Sau khi có một cặp, nếu một cặp tài sản giao dịch cao hơn đỉnh xoay của nó trong khi cặp kia không làm được (hoặc một cặp giao dịch thấp hơn đáy xoay còn cặp kia không), hai thị trường bất đồng → SSMT giảm ở vùng đỉnh, SSMT tăng ở vùng đáy. Nếu CẢ HAI cùng phá thì hai thị trường đồng thuận và không có tín hiệu.
  • Cổng quý. Tín hiệu chỉ được in khi cặp đỉnh/đáy xoay được ghi nhận ở một quý khác với quý của cây nến liền trước cây nến quét. Vì vậy nhãn mới ghi Q2 to Q3: "cặp được ghi ở Q2, phân kỳ xuất hiện ở Q3".

Niềm tin nền tảng: giá thường chạy qua đỉnh hoặc đáy cũ của pha trước trong một chu kỳ để gom thanh khoản, và thị trường tương quan không xác nhận cú chạy đó sẽ phơi bày nó là cái bẫy. Cổng quý chỉ giữ lại những phân kỳ xảy ra giữa các pha của chu kỳ (ví dụ thao túng → phân phối) và loại những phân kỳ xảy ra ngay trong cùng một pha.

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

  • Hiển thị:
    • Nhãn SSMT giảm: chữ đỏ sẫm SSMT + xuống dòng + Q2 to Q3 nằm phía trên đỉnh cây nến, kèm một tam giác ▼ đỏ sẫm ngay trên đỉnh. Chữ đặt cao hơn đỉnh 1,15 × ATR(200), tam giác cao hơn đỉnh 1,05 × ATR(200).
    • Nhãn SSMT tăng: chữ xanh lá sẫm Q2 to Q3 + xuống dòng + SSMT treo bên dưới đáy cây nến, kèm một tam giác ▲ xanh lá sẫm ngay dưới đáy (cùng khoảng cách 1,15 / 1,05 × ATR(200), nhưng hướng xuống dưới).
    • Mỗi tín hiệu có hai bản: một bản trên chart giá chính (cặp X) và một bản trong cửa sổ chỉ báo (cặp Y). Cả hai in trên cùng một cây nến — cây nến đã quét mất đỉnh/đáy xoay.
    • Nến của cặp Y trong cửa sổ chỉ báo: chỉ báo là một cửa sổ riêng (không vẽ đè lên giá) và vẽ ở đó toàn bộ nến của cặp Y — màu xanh ngọc khi giá đóng ≥ giá mở, màu đỏ khi giá đóng < giá mở — để bạn nhìn X ở trên và Y ở dưới.
    • Đường chấm tùy chọn (MẶC ĐỊNH TẮT): "Show Bullish SMT Line" / "Show Bearish SMT Line" vẽ một đường ngang chấm chấm từ cây nến của đỉnh/đáy xoay cũ tới cây nến đã quét nó, tại đúng mức giá của đỉnh/đáy cũ — một đường trên mỗi chart. Màu xanh lá sẫm cho phía tăng, đỏ sẫm cho phía giảm.
    • Hộp và nhãn chu kỳ tùy chọn (MẶC ĐỊNH TẮT): "Show Cycle" tô một dải mỏng phía trên đỉnh cao nhất đang chạy của mỗi quý, "Show Cycle Label" in chữ Q1…Q4 lên đó. Màu từng quý: Q1 xanh dương nhạt, Q2 cam, Q3 xanh ngọc, Q4 đỏ, xám cho thứ không phải quý (tuần "Week 13" của chu kỳ Monthly). Đây chỉ là phần hỗ trợ nhìn, không tham gia tạo tín hiệu.
  • Alert: hai cảnh báo, Bullish SMT Divergence và Bearish SMT Divergence, mỗi cái có công tắc On / Off riêng. Nội dung tin nhắn có dạng Bearish SMT Divergence in BTCUSDT & ETHUSDT (mã trên chart và phần sau dấu hai chấm của "Symbol"). Cảnh báo được gửi qua thư viện AlertSender của TradingFinder, không dùng alertcondition() — trong code hoàn toàn không có lệnh alertcondition() nào. Bạn cũng chỉnh được tên cảnh báo, tần suất lặp (All / Once Per Bar / Per Bar Close) và múi giờ hiện trong tin nhắn.

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

  • Trước hết, chọn một cặp đối tác thật sự có liên quan ở ô "Symbol". Mặc định là XAGUSD (Bạc), hợp với chart Vàng. Với BTCUSDT bạn chọn ETHUSDT; với NQ bạn chọn ES. Nếu hai cặp ngoài đời thực không bao giờ bất đồng thì chỉ báo sẽ hiếm khi bắn; nếu chúng không liên quan thì chỉ báo sẽ bắn theo nhiễu. Hai cặp cũng nên giao dịch cùng giờ.
  • Chọn chu kỳ khớp với khung thời gian của chart. Một quý 90 phút chứa 6 nến M15 nhưng 18 nến M5; một quý Micro (khoảng 22 phút) chỉ chứa 1–2 nến M15, nên Micro dành cho M1–M5. Mỗi quý cần có vài nến để các đỉnh/đáy xoay có chỗ hình thành.
  • Đọc SSMT giảm như một cảnh báo ở vùng đỉnh. Hai thị trường cùng tạo đỉnh, rồi sang quý kế tiếp một bên vượt qua còn bên kia không vượt nổi. Đây là bức tranh kinh điển "đỉnh đó là cái bẫy": tìm lệnh bán, nhưng phải xác nhận bằng cấu trúc, vùng vào lệnh và thời điểm phiên của riêng bạn — nhãn là cảnh báo, không phải điểm vào lệnh làm sẵn.
  • Đọc SSMT tăng như một cảnh báo ở vùng đáy. Hình ảnh đối xứng: một thị trường chọc thủng đáy cũ, thị trường kia không chịu → tìm lệnh mua kèm xác nhận của riêng bạn.
  • Nhìn cả hai chart để biết bên nào "hụt hơi". Nhãn được in trên X và Y cùng lúc và không cho biết bên nào không phá được đỉnh/đáy. Hãy nhìn hai chart: bên không chạm được đỉnh (hoặc đáy) cũ là bên yếu hơn.
  • Đọc "Q2 to Q3" như một lần chuyển pha. Nó cho biết cặp đỉnh/đáy xoay được ghi ở một quý còn cú quét xảy ra ở quý kế tiếp. Theo ngôn ngữ Quarterly Theory, phân kỳ ở lúc chuyển từ Q2 (thao túng) sang Q3 (phân phối) là trường hợp sách giáo khoa. Đó là cách diễn giải khi giao dịch, không phải điều code kiểm tra.
  • Chấp nhận tín hiệu đến muộn, ngay khi nến đóng cửa. Một đỉnh/đáy xoay cần 3 nến sau nó mới được xác nhận, và phép thử phân kỳ chỉ chạy trên nến đã đóng. Vì vậy nhãn xuất hiện ở cây nến đã quét đỉnh/đáy, sau khi nó đóng — không bao giờ xuất hiện đúng tại đỉnh/đáy xoay.
  • Đừng mong quý nào cũng có tín hiệu. Không có tín hiệu khi cả hai cặp cùng phá (đồng thuận), khi không cặp nào phá, khi phân kỳ đến quá muộn (hơn khoảng 32 nến sau đỉnh/đáy xoay), hoặc khi nó xảy ra trong cùng một quý.
  • Chỉnh độ nhạy bằng các thông số pivot. "Pivot Period" lớn hơn cho ít đỉnh/đáy xoay hơn nhưng lớn hơn; "Pivot Sync Threshold" lớn hơn chấp nhận những cặp mà hai đỉnh/đáy xoay cách nhau xa hơn về thời gian; "Validity Pivot Length" lớn hơn giữ cặp sống lâu hơn.

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

Đầu vào & vai trò

  • Quarterly_Cycles_Type (hiện là "Quarterly Cycles Type", danh sách chọn: Yearly / Monthly / Weekly / Daily / 90 Minute / Micro, mặc định 90 Minute, nhóm "Logical Setting"): chu kỳ nào được chia thành 4 quý. Nó quyết định đoạn chữ lưu cùng mỗi cặp đỉnh/đáy xoay và do đó quyết định phép thử "Q2 to Q3". Ví dụ: ở 90 Minute, 08:45 giờ New York là "NY AM Q2" (07:30–09:00); ở Daily cùng thời điểm đó là "Q3" (06:00–12:00); ở Weekly thì tùy thứ trong tuần. Đổi chu kỳ thì cùng một cây nến thuộc quý khác, nên cùng một phân kỳ có thể qua hoặc trượt cổng quý.
  • SymY (hiện là "Symbol", ô chọn mã, mặc định XAGUSD): thị trường thứ hai, gọi là Y. Nếu để nhầm thị trường (ví dụ Bạc trên chart BTC) chỉ báo vẫn chạy, nhưng các "phân kỳ" vô nghĩa. Phần sau dấu hai chấm còn được dùng trong tin nhắn cảnh báo.
  • Period (hiện là "Pivot Period", số nguyên, mặc định 3): đỉnh xoay là cây nến có đỉnh cao hơn 3 nến bên trái VÀ 3 nến bên phải (đáy xoay làm tương tự). Nó chỉ được xác nhận sau khi 3 nến bên phải đã đóng. Ví dụ: ở mức 3, đỉnh lúc 07:45 trên M15 được xác nhận lúc 08:30; ở mức 5 cần 5 nến mỗi bên nên đỉnh/đáy xoay lớn hơn, hiếm hơn và được xác nhận muộn hơn.
  • MxPBack_b (hiện là "Activate Max Pivot Back", ô tick, mặc định bật) và MxPBack_i ("Max Pivot Back Length", số nguyên, mặc định 100): ở mỗi nến chỉ báo kiểm tra các cặp đã lưu từ mới nhất lùi về trước. Khi bật ô tick, nó chỉ kiểm tra 100 cặp mới nhất; khi tắt, nó kiểm tra mọi cặp từng được ghi (chậm hơn trên chart dài, kết quả giống nhau vì cặp cũ dù sao cũng hết hạn).
  • Threshold (hiện là "Pivot Sync Threshold", số nguyên, mặc định 2): đỉnh/đáy xoay của X và của Y được phép cách nhau bao nhiêu nến mà vẫn tính là "cùng một đỉnh/đáy". Ví dụ: ở mức 2, đỉnh BTC ở nến 1000 và đỉnh ETH ở nến 1001 tạo thành một cặp (cách 1 nến); đỉnh ETH ở nến 1004 thì không (cách 4 nến). Khoảng cách tính bằng nến, không tính bằng phút. Đặt 0 thì đòi hai đỉnh/đáy phải nằm đúng trên cùng một nến; đặt số lớn thì dán cả những đỉnh/đáy không liên quan vào nhau.
  • Validity (hiện là "Validity Pivot Length", số nguyên, mặc định 30): một cặp còn hiệu lực trong bao lâu, tính từ nến đỉnh/đáy xoay của X: Validity + Threshold = 32 nến. Khoảng 3 nến trong đó đã mất để chờ xác nhận đỉnh/đáy, nên một cặp còn khoảng 29 nến để tạo ra phân kỳ. Quá hạn thì bị bỏ qua (không bị xóa, chỉ đơn giản là bị bỏ qua).
  • Show_Quarter ("Show Cycle", ô tick, mặc định tắt) và Show_Label ("Show Cycle Label", ô tick, mặc định tắt): dải chu kỳ trực quan và nhãn Q của chúng. Chỉ để hiển thị; bật hay tắt không bao giờ đổi một tín hiệu nào.
  • Show_Line_Bull ("Show Bullish SMT Line", mặc định tắt), Show_Label_Bull ("Show Bullish SMT Label", mặc định bật) và Color_Bull (ô chọn màu, mặc định #006803 xanh lá sẫm) — ba cái tương tự cho phía giảm là Show_Line_Bear, Show_Label_Bear và Color_Bear (mặc định #960303 đỏ sẫm). Ô tick và ô màu của mỗi phía nằm chung một hàng (inline). Tắt "Show … Label" sẽ ẩn cả chữ lẫn tam giác của phía đó nhưng KHÔNG tắt cảnh báo.
  • AlertName ("Alert Name", chữ, mặc định SMT Alerts [TradingFinder]), Frequncy ("Message Frequency", danh sách All / Once Per Bar / Per Bar Close, mặc định Once Per Bar), UTC ("Show Alert time by Time Zone", chữ, mặc định UTC): các thiết lập chữ và tần suất lặp truyền vào thư viện cảnh báo. Chúng không bao giờ đổi thời điểm xuất hiện tín hiệu.
  • Alert_L ("Bullish SMT Divergence") và Alert_H ("Bearish SMT Divergence"), danh sách On / Off, mặc định On: bật hoặc tắt từng cảnh báo. Chúng không ẩn các nhãn.

Hằng số cố định trong code (KHÔNG phải input)

  • Đồng hồ là giờ New York (America/New_York) cho mọi loại chu kỳ, và mọi khung phiên (Asian 18:00–00:00, London 00:00–06:00, NY AM 06:00–12:00, NY PM 12:00–18:00) đều cố định trong code.
  • Khoảng cách nhãn: chữ ở 1,15 × ATR(200) và tam giác ở 1,05 × ATR(200) tính từ đỉnh / đáy cây nến, dùng ATR của chính từng cặp.
  • Chiều cao dải chu kỳ: ATR(500) / 2, chỉ dùng cho các hộp chu kỳ tùy chọn.
  • Màu nến Y: #089981 tăng / #f23645 giảm. Màu các quý: xem mục 1.2.
  • Giới hạn: max_bars_back = 5000, và tối đa 500 nhãn / 500 đường / 500 hộp (xem phần ghi chú).
  • Bộ rút gọn tên quý: nhãn chỉ hiện Q1 tới Q4 (hoặc "non Q"). Tên phiên như "NY AM" và hậu tố "/2" của Micro bị bỏ trong chữ trên nhãn.

Các khối logic chính

🧭 Flow 0 — Bức tranh tổng thể (mọi nến)

  • Ở mỗi nến, chỉ báo làm năm việc theo thứ tự: ① xác định nến này thuộc quý nào; ② đọc nến và các đỉnh/đáy xoay của cả hai cặp; ③ ghép cặp các đỉnh/đáy xoay mới của X và Y; ④ ở nến đã đóng, thử mọi cặp còn sống xem có phân kỳ không; ⑤ nếu có phân kỳ ở một quý khác, vẽ nhãn và gửi cảnh báo. Cuối cùng nó vẽ nến của Y vào cửa sổ chỉ báo.

🕐 Flow 1 — Đang ở quý nào? (mọi nến)

  • Một nến thuộc một quý nếu giờ mở nến của nó rơi vào khung giờ của quý đó (giờ New York). Kết quả là một đoạn chữ duy nhất, Quarter, và nó phụ thuộc chu kỳ bạn đã chọn:
  • Yearly: Q1 = tháng 1–3, Q2 = tháng 4–6, Q3 = tháng 7–9, Q4 = tháng 10–12.
  • Monthly: một bộ đếm trượt các tuần lịch đầy đủ: tuần đầy đủ thứ 1 = Q1, thứ 2 = Q2, thứ 3 = Q3, thứ 4 = Q4, và tuần sau Q4 quay lại Q1. Hai ngoại lệ: tuần bắt đầu trong 3 ngày cuối tháng là "Partial Week" (không có quý, bộ đếm về 0), và mỗi tuần đầy đủ thứ 13 của năm được gắn nhãn "Week 13" (màu xám, không có quý). Bộ đếm tuần bắt đầu lại mỗi năm mới.
  • Weekly: Thứ Hai = Q1, Thứ Ba = Q2, Thứ Tư = Q3, Thứ Năm = Q4. Thứ Sáu, Thứ Bảy và Chủ Nhật đều gắn nhãn "Friday" (không có quý).
  • Daily: Q1 = 18:00–00:00 (Asian), Q2 = 00:00–06:00 (London), Q3 = 06:00–12:00 (NY AM), Q4 = 12:00–18:00 (NY PM).
  • 90 Minute: mỗi phiên trong bốn phiên trên được cắt thành bốn quý 90 phút, và đoạn chữ có kèm tên phiên. Ví dụ (NY AM): Q1 06:00–07:30, Q2 07:30–09:00, Q3 09:00–10:30, Q4 10:30–12:00 → nến lúc 08:45 là NY AM Q2, nến lúc 09:00 là NY AM Q3.
  • Micro: mỗi quý 90 phút lại được cắt thành bốn quý khoảng 22,5 phút (22 hoặc 23 phút), đặt tên Qa/b trong đó a là quý nhỏ và b là khối 90 phút trong phiên. Ví dụ: NY AM Q1/2 = 07:30–07:52. Trên nhãn chỉ còn lại số đầu tiên ("Q1").
  • Vì sao điều này quan trọng: đoạn chữ gốc (ví dụ "NY AM Q2") mới là thứ được so sánh về sau. Hai nến ở hai phiên khác nhau nhưng cùng số Q vẫn được tính là hai quý khác nhau, vì tên phiên nằm trong đoạn chữ.

📡 Flow 2 — Đọc dữ liệu hai cặp (mọi nến)

  • Cặp X là cặp trên chart, cặp Y là cặp ở ô "Symbol"; cả hai được đọc theo đúng khung thời gian của chart. Với mỗi cặp, chỉ báo lấy: giá mở, cao, thấp, đóng, số thứ tự nến, giờ nến và ATR(200). Nó cũng chạy bộ tìm đỉnh/đáy xoay (Flow 3) riêng bên trong từng cặp.
  • Bộ tìm đỉnh/đáy xoay (pivot()): một đỉnh xoay được xác nhận khi đỉnh của một nến cao hơn 3 nến mỗi bên (Period = 3). Ngay lúc đó nó lưu giá, số thứ tự nến và giờ của đỉnh xoay. Cho tới khi có đỉnh xoay mới, các giá trị đã lưu giữ nguyên — chúng là "đỉnh / đáy xoay gần nhất" của cặp đó. Đáy xoay làm tương tự.
  • Ví dụ cụ thể: BTC tạo đỉnh 68.000 ở nến 1000 (07:45). Các nến 1001–1003 đều giao dịch thấp hơn. Tới nến 1003 đỉnh xoay được xác nhận: đỉnh xoay gần nhất của BTC = 68.000, số nến 1000.

🔗 Flow 3 — Ghép cặp đỉnh/đáy xoay của X và Y (mọi nến)

  • Kích hoạt: một đỉnh xoay mới được xác nhận ở X hoặc ở Y trong nến này (đáy xoay cũng vậy, chạy như một bản sao riêng của cùng logic).
  • Phép thử đồng bộ: lấy đỉnh xoay gần nhất của cặp CÒN LẠI và kiểm tra nó xảy ra cách đỉnh xoay vừa được xác nhận không quá Threshold nến. Theo ngôn ngữ code: nếu X vừa được xác nhận thì i_y − ph_Iy − PP <= Threshold; nếu chỉ Y vừa được xác nhận thì i_x − ph_Ix − PP <= Threshold.
  • Nếu qua phép thử → một cặp được ghi lại: giá / số nến / giờ đỉnh xoay của X, giá / số nến / giờ đỉnh xoay của Y, một cờ "permit" (cho phép) đặt là true, và đoạn chữ Quarter của nến hiện tại. Tất cả được đẩy vào các danh sách song song (mảng — danh sách đánh số các giá trị), mỗi mục một danh sách, nên mục số N của mọi danh sách thuộc cùng một cặp.
  • Ví dụ cụ thể: đỉnh xoay BTC 68.000 ở nến 1000 (07:45). Đỉnh xoay ETH 3.500 ở nến 1001 (08:00). BTC được xác nhận ở nến 1003: đỉnh xoay gần nhất của ETH là cái cũ → trượt phép thử, không ghi gì. ETH được xác nhận ở nến 1004 (08:45): đỉnh xoay gần nhất của BTC là nến 1000 → 1004 − 1000 − 3 = 1 <= 2 → qua. Một cặp được ghi: BTC 68.000 / ETH 3.500, quý NY AM Q2 (08:45 nằm trong 07:30–09:00).
  • Hai chi tiết: ① cặp được ghi khi đỉnh/đáy xoay muộn hơn trong hai cái được xác nhận, nên nó được đóng dấu quý của nến đó (muộn hơn đỉnh/đáy thật tới 3 + 2 nến), chứ không phải quý của nến đỉnh/đáy xoay. ② Cùng một đỉnh/đáy xoay có thể bị ghép hai lần trong thị trường dày đặc (ví dụ X có đỉnh xoay ở nến 10 và 12 còn Y có đỉnh xoay ở nến 11).

🔍 Flow 4 — Theo dõi các cặp để tìm phân kỳ (chỉ trên nến đã đóng)

  • Cổng: cả khối này chỉ chạy khi barstate.isconfirmed là true, tức là khi nến đã đóng (và ở mọi nến trong quá khứ). Vì vậy nhãn chỉ có thể xuất hiện lúc nến quét đóng cửa. Khối này cũng cần có ít nhất 2 cặp trong danh sách.
  • Vòng lặp: từ cặp mới nhất lùi về trước, tối đa Max Pivot Back Length (100) cặp. Một cặp chỉ được xét nếu nó còn sống (permit = true) và tuổi còn trong giới hạn: số nến hiện tại − số nến đỉnh xoay của X <= Validity + Threshold (32).
  • Phép thử GIẢM (cặp đỉnh xoay): so đỉnh của nến hiện tại của mỗi cặp với đỉnh xoay đã lưu của chính cặp đó. Đặt A = "đỉnh của X cao hơn đỉnh xoay cũ của X" và B = "đỉnh của Y cao hơn đỉnh xoay cũ của Y".
    • A và B khác nhau (đúng một cặp phá được đỉnh của nó): phân kỳ. Cờ permit của cặp được đặt false ngay lập tức (cặp đã dùng hết) → chuyển sang cổng quý (Flow 5).
    • A và B đều true (cả hai cùng phá đỉnh): hai thị trường đồng thuận → cặp bị loại lặng lẽ, không có tín hiệu.
    • A và B đều false: chưa có gì xảy ra → cặp vẫn sống và sẽ được kiểm tra lại ở nến đóng tiếp theo.
    • Phép so sánh là "cao hơn" nghiêm ngặt và chỉ trên đỉnh của nến hiện tại: chạm đúng bằng đỉnh cũ thì không tính.
  • Phép thử TĂNG (cặp đáy xoay): đối xứng hoàn toàn: so đáy của nến hiện tại với từng đáy xoay đã lưu ("đáy thấp hơn đáy xoay cũ"). Đúng một cặp chọc thủng → phân kỳ; cả hai cùng chọc thủng → loại lặng lẽ; không cặp nào → tiếp tục chờ.
  • Ví dụ cụ thể (giảm): nến 1006 (09:15) đóng cửa với đỉnh BTC 68.120 và đỉnh ETH 3.490. BTC: 68.120 > 68.000 → A = true. ETH: 3.490 > 3.500? Không → B = false. A ≠ B → phân kỳ. Tuổi: 1006 − 1000 = 6 <= 32 ✓. Nếu ETH tạo 3.510 thay vì 3.490 thì A = B = true → cả hai cùng phá, cặp bị loại, không có tín hiệu.

🚪 Flow 5 — Cổng quý, nhãn và cảnh báo (chỉ sau khi có phân kỳ)

  • Phép thử: đoạn chữ Quarter lưu trong cặp phải khác đoạn chữ Quarter của nến liền trước (Quarter[1] — không phải nến hiện tại). Nếu giống nhau thì không có nhãn và không có cảnh báo — nhưng cặp đã bị dùng hết ở Flow 4 nên sẽ không được kiểm tra lại.
  • Nếu qua: cờ "Alert_h" (giảm) hoặc "Alert_l" (tăng) chuyển true cho nến này, và các nhãn được vẽ (nếu công tắc nhãn của phía đó đang bật): chữ, tam giác và đường chấm tùy chọn — một bản trên X (chart chính) và một bản trên Y (cửa sổ chỉ báo). Chữ trên nhãn là Q? của quý đã lưu + " to " + Q? của quý nến liền trước.
  • Cảnh báo: thư viện gửi tin nhắn nếu công tắc của cảnh báo đó (Alert_L / Alert_H) đang "On". Cả hai cờ là false ở mọi nến khác.
  • Ví dụ cụ thể (qua): cặp được lưu ở NY AM Q2. Nến quét lúc 09:15; nến liền trước (09:00) là NY AM Q3 → khác → nhãn giảm SSMT / Q2 to Q3 trên cả hai chart + cảnh báo.
  • Ví dụ cụ thể (bị chặn): cùng cặp đó, nhưng cú quét xảy ra đúng 09:00. Nến liền trước (08:45) vẫn là NY AM Q2 → giống → không nhãn, không cảnh báo, và cặp biến mất. Cùng phân kỳ đó nếu đến muộn hơn một nến thì đã có tín hiệu.
  • Nếu nhiều cặp cùng kích hoạt trên một nến, cờ vẫn chỉ là "true" (một cảnh báo), nhưng mỗi cặp vẽ nhãn riêng nên các nhãn có thể chồng lên nhau.

📦 Flow 6 — Hộp chu kỳ (chỉ để hiển thị)

  • Khi "Show Cycle" bật, mỗi lần một nến bước vào quý mới, một hộp được tạo phía trên chart rồi kéo dài sang phải ở mọi nến của quý đó, đáy hộp bám theo đỉnh cao nhất đang chạy của quý (đỉnh hộp = đỉnh đó + ATR(500)/2). "Show Cycle Label" thêm chữ Q vào giữa hộp. Nó đọc cùng khung giờ quý như Flow 1 nhưng không tín hiệu nào phụ thuộc vào nó.

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

  • Nhãn SSMT giảm / tăng (X trên chart, Y trong cửa sổ chỉ báo): "hai thị trường bất đồng trong cú quét này, và cặp được ghi ở một quý khác". Dùng như cảnh báo ở vùng đỉnh / đáy, rồi xác nhận bằng phương pháp của riêng bạn.
  • Chữ "Qx to Qy": cho biết cặp đỉnh/đáy xoay và cú quét thuộc những quý nào, để bạn đánh giá đó có phải lần chuyển pha bạn giao dịch không (ví dụ Q2 → Q3).
  • Đường chấm tùy chọn: chỉ ra chính xác đỉnh/đáy xoay cũ nào đã bị quét, và nó hình thành cách đây bao lâu.
  • Nến của cặp Y trong cửa sổ chỉ báo: giúp bạn nhìn thị trường đối tác ngay dưới chart mà không phải mở chart thứ hai.
  • Cảnh báo: chính hai sự kiện đó được đẩy tới điện thoại hoặc webhook của bạn.
💡 Lưu ý kỹ thuật quan trọng:
  • Logic chạy trên nến đã đóng, tín hiệu không vẽ lại. Cặp chỉ được ghi sau khi đỉnh/đáy xoay được xác nhận (mặc định muộn 3 nến) và phép thử phân kỳ chỉ chạy trên nến đã đóng, nên một nhãn đã xuất hiện sẽ đứng yên tại chỗ. Cái giá của sự an toàn đó là độ trễ: tín hiệu đến sau khi nến quét đóng cửa.
  • Một phân kỳ trượt cổng quý bị tiêu thụ lặng lẽ. Cờ permit của cặp bị tắt trước khi kiểm tra quý, nên nếu cú quét xảy ra cùng quý với quý đã lưu (hoặc ngay ở nến đầu tiên của quý kế tiếp, khi nến liền trước vẫn thuộc quý cũ), sẽ không vẽ gì và cặp không thể kích hoạt về sau.
  • Dấu quý là của nến ghép cặp, không phải của đỉnh/đáy xoay. Một đỉnh/đáy xoay hình thành ngay trước ranh giới quý có thể bị đóng dấu quý kế tiếp nếu đối tác của nó được xác nhận sau ranh giới.
  • Phép thử đồng bộ đếm bằng nến, không đếm bằng phút. Nếu X và Y có giờ giao dịch khác nhau hoặc thiếu nến, quy tắc "cách nhau 2 nến" không còn nghĩa là "cách nhau 2 đơn vị thời gian". Hãy dùng hai cặp giao dịch cùng giờ.
  • Nhãn không cho biết cặp nào hụt hơi. Cả hai cặp nhận cùng một nhãn. Bạn tự so sánh hai chart.
  • Code không dùng tới: có hàm Phase() ánh xạ Q1–Q4 sang "Accumulation / Manipulation / Distribution / Continuation or Reversal" nhưng không bao giờ được gọi, nên các tên đó không hiện ra trên chart.
  • Các điểm lạ của chu kỳ cần biết: ① Micro — danh sách phiên Asian dừng ở 21:22–21:45, nên 21:45–00:00 giờ New York hoàn toàn không có quý Micro; ② Weekly — Thứ Sáu, Thứ Bảy và Chủ Nhật đều là "Friday" (không có quý); ③ Monthly — là bộ đếm trượt 4 tuần đầy đủ, không phải chia theo tháng lịch, và có hai ngoại lệ "Week 13" màu xám và "Partial Week". Ở Weekly (Thứ Sáu–Chủ Nhật) và "Week 13" của Monthly, chữ trên nhãn sẽ là "non Q"; ở "Partial Week" của Monthly và khoảng trống của Micro, code không gán đoạn chữ quý nào, và việc một cặp được đóng dấu ở đó sẽ xử lý ra sao tại cổng quý thì chưa được kiểm thử. Nên ưu tiên các loại chu kỳ khác, hoặc đừng dựa vào tín hiệu trong những khung giờ đó.
  • Ngân sách nhãn: 500 nhãn, code không bao giờ xóa. Mỗi tín hiệu tạo tối đa 4 nhãn (chữ + tam giác trên X, chữ + tam giác trên Y), và các nhãn chu kỳ (nếu bật) dùng chung ngân sách. Vượt 500, TradingView âm thầm xóa nhãn cũ nhất, nên trên chart dài chỉ còn thấy khoảng 120 tín hiệu mới nhất.
  • Danh sách chỉ tăng, không giảm. Cặp đã loại hoặc hết hạn không bị xóa khỏi mảng; giới hạn 100 cặp chỉ giới hạn số cặp được xét ở mỗi nến. Khi tắt "Activate Max Pivot Back", mọi cặp từng được ghi đều bị xét ở mỗi nến đóng, có thể làm chart dài chạy chậm.
  • Chart chính và cửa sổ chỉ báo. Bản thân chỉ báo nằm trong một cửa sổ riêng (overlay = false); các bản của X bị ép vẽ lên chart giá chính. Nến của Y và nhãn của Y nằm lại trong cửa sổ chỉ báo, theo thang giá riêng của Y.
Zoom/Pan Layered Image
Background Overlay
− +

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