Khi chỉ số VN30 không có nến ở một phút, basis của nến đó để trống, nhãn basis trống ở chính nến đó và ở nến thứ 20 sau đó. Vì vậy mỗi phiên VN30F1M khung 5 phút có 6 nến không có nhãn basis: 09:00–09:10 và 10:40–10:50.
Định nghĩa đầy đủ
Nến chỉ số thiếu (index_bar_missing) là trường hợp chỉ số cơ sở không có nến ở đúng phút cần ghép với giá hợp đồng. Basis và các số đo dựa trên basis để trống; nhãn so sánh hai thời điểm cũng trống ở mọi nến lấy thời điểm thiếu làm mốc. Không giá trị nào được điền thay.
Lưu ý rủi ro: Nội dung mang tính giáo dục về cách dữ liệu được dựng, không phải tư vấn đầu tư. Một ô dữ liệu trống hay có giá trị đều không phải căn cứ để vào hay ra lệnh. Hợp đồng tương lai dùng đòn bẩy nên lãi và lỗ đều bị khuếch đại.
Những điều cần nhớ
- Basis cần giá hợp đồng và chỉ số ở cùng một phút; thiếu chỉ số thì basis trống, mã index_bar_missing
- Nhãn basis cần cả nến t và nến t−20, nên một chỗ trống làm trống nhãn hai lần
- Khung 5 phút: nến 09:00–09:10 và 10:40–10:50 mang mã index_bar_missing ở 683–685 trên 688 phiên
- Khung 15 phút: nến 09:00 mang mã index_bar_missing ở 685 phiên, nến 10:00 ở 647 phiên
- 20 trên 688 phiên có nến chỉ số thiếu giữa phiên; nhiều nhất 37 nến 5 phút ngày 25/12/2024
Dữ liệu tính đến phiên 16/10/2026; số đo từ phiên bản ms-v3 và pos-v1, đã đối soát cuối ngày; quy tắc gán nhãn regime-v1.
Tầng 1: một phút không có nến chỉ số
Dữ liệu thô gồm hai chuỗi nến 1 phút độc lập: hợp đồng tương lai VN30F1M và chỉ số VN30. Hai chuỗi không phải lúc nào cũng có nến ở cùng một phút.
Trường hợp thường gặp nhất là đầu phiên. Hợp đồng tương lai có nến từ 09:00, còn chỉ số VN30 chưa có nến trong khoảng 15 phút đầu đó; lý do và hệ quả với basis đầu phiên được trình bày ở bài vì sao đầu phiên VN30F1M không có basis. Ở khung 5 phút, ba nến 09:00, 09:05 và 09:10 không có giá chỉ số.
Trường hợp hiếm hơn là giữa phiên. Trên 688 phiên từ 02/01/2024 tới 16/10/2026, 20 phiên có ít nhất một nến 5 phút sau 09:15 thiếu chỉ số. Phần lớn chỉ thiếu 1–6 nến, nhưng có bốn phiên thiếu nhiều: 37 nến ngày 25/12/2024, 27 nến ngày 04/04/2025, 17 nến ngày 03/05/2024 và 9 nến ngày 23/01/2025.
Nguyên tắc ghép hai chuỗi theo từng phút, không lùi về phút trước, được trình bày ở bài đồng bộ dữ liệu VN30F1M và chỉ số VN30 khi tính basis.
Tầng 2: basis và basis_z để trống
Ở tầng Positioning, basis của một nến bằng giá đóng của hợp đồng trừ giá đóng của chỉ số ở cùng nến. Thiếu một vế thì basis để trống, kèm mã index_bar_missing. Kéo theo:
- basis_z của chính nến đó trống. Basis z-score cần giá trị basis để so với baseline.
- Phiên đó bị bỏ khỏi baseline ở khe giờ đó. Baseline theo khe giờ chỉ lấy những phiên có giá trị tại đúng khe. Một phiên thiếu chỉ số lúc 11:25 không được tính vào baseline khe 11:25 của các phiên sau; baseline lùi thêm một phiên để đủ 20, trong giới hạn 40 phiên.
- Ba khe đầu phiên không bao giờ có basis_z. Vì gần như mọi phiên đều thiếu chỉ số ở 09:00–09:10, không có baseline nào được dựng cho ba khe đó.
Ví dụ thật: phiên 12/06/2026 của hợp đồng đáo hạn 18/06/2026. Nến 11:20 có basis +4,77 và basis_z 1,2453. Nến 11:25 không có giá chỉ số: basis và basis_z đều trống. Nến 13:00 có lại cả hai: basis +6,79, basis_z 1,629.
Tầng 3: nhãn trống hai lần
Trục basis trong bộ nhãn regime so giá của hai chân ở nến hiện tại với nến thứ 20 trước đó trong cùng hợp đồng. Cách nhãn này được tính có ở bài chân nào đã đi trong 20 nến. Quy tắc cần đủ bốn giá: hợp đồng và chỉ số, ở nến t và ở nến t−20. Thiếu một giá thì nhãn trống, không suy ra từ nến trước — đúng nguyên tắc của bài từ số đo tới nhãn trạng thái.
Vì thế một nến chỉ số thiếu ở thời điểm t làm trống nhãn hai lần:
- Ở chính nến t, vì thiếu giá chỉ số hiện tại.
- Ở nến t+20, vì nến này lấy t làm mốc so sánh.
Khung 5 phút có 30 nến buổi sáng (09:00–11:25). Nến thứ 20 sau 09:00 là 10:40. Ba nến đầu phiên trống, nên 10:40, 10:45 và 10:50 cũng trống — mỗi ngày, ở gần như mọi phiên. Trên 688 phiên, chỉ 2 phiên có nhãn ở nến 10:40 và không phiên nào có nhãn ở năm nến kia. Ở khung 15 phút, mỗi phiên có 16 nến; nến 10:00 lấy nến 09:00 của phiên hôm trước làm mốc, nên mang mã index_bar_missing ở 647 phiên. Ở khung 1 giờ, nến 09:00 đã có giá chỉ số từ 09:15, nên hầu như không bị ảnh hưởng: nhiều nhất 10 nến trống ở một khe giờ trên toàn lịch sử.
Khoảng trống giữa phiên có thể chồng lên khoảng trống quen thuộc. Với phiên 12/06/2026, nến thứ 20 sau 11:25 là 09:05 ngày 15/06/2026 — vốn đã trống vì chỉ số chưa có nến đầu phiên.
Phiên 12/10/2026 và một khoảng trống giữa phiên
Biểu đồ dưới là phiên 12/10/2026 của hợp đồng 41I1GA000 — tức VN30F1M trong giai đoạn này, đáo hạn 15/10/2026. Đây là một phiên bình thường: chỉ có khoảng trống đầu phiên.
| Nến | 41I1GA000 | VN30 | Basis | Nến t−20 | Nhãn basis |
|---|---|---|---|---|---|
| 09:00 | 1.880,2 | không có | không có (index_bar_missing) | 09/10 11:20 | trống (index_bar_missing) |
| 09:05 | 1.877,7 | không có | không có (index_bar_missing) | 09/10 11:25 | trống (index_bar_missing) |
| 09:10 | 1.877,8 | không có | không có (index_bar_missing) | 09/10 13:00 | trống (index_bar_missing) |
| 09:15 | 1.877,3 | 1.875,56 | +1,74 | 09/10 13:05 | NEUTRAL |
| 09:20 | 1.875,1 | 1.871,71 | +3,39 | 09/10 13:10 | NEUTRAL |
| 09:25 | 1.875,4 | 1.870,57 | +4,83 | 09/10 13:15 | NEUTRAL |
| 09:30 | 1.877,8 | 1.874,65 | +3,15 | 09/10 13:20 | INDEX_LEADING |
| 09:35 | 1.874,8 | 1.872,48 | +2,32 | 09/10 13:25 | CONFIRMED_DOWN |
| 09:40 | 1.873,8 | 1.871,07 | +2,73 | 09/10 13:30 | CONFIRMED_DOWN |
| 09:45 | 1.872,8 | 1.868,81 | +3,99 | 09/10 13:35 | CONFIRMED_DOWN |
| 09:50 | 1.874,7 | 1.868,77 | +5,93 | 09/10 13:40 | CONFIRMED_DOWN |
| 09:55 | 1.874,6 | 1.870,96 | +3,64 | 09/10 13:45 | CONFIRMED_DOWN |
| 10:00 | 1.871,7 | 1.868,92 | +2,78 | 09/10 13:50 | CONFIRMED_DOWN |
| 10:05 | 1.873,2 | 1.869,96 | +3,24 | 09/10 13:55 | CONFIRMED_DOWN |
| 10:10 | 1.873,9 | 1.869,77 | +4,13 | 09/10 14:00 | CONFIRMED_DOWN |
| 10:15 | 1.872,1 | 1.870,20 | +1,90 | 09/10 14:05 | CONFIRMED_DOWN |
| 10:20 | 1.873,4 | 1.869,15 | +4,25 | 09/10 14:10 | CONFIRMED_DOWN |
| 10:25 | 1.872,4 | 1.868,68 | +3,72 | 09/10 14:15 | INDEX_LEADING |
| 10:30 | 1.874,5 | 1.869,90 | +4,60 | 09/10 14:20 | INDEX_LEADING |
| 10:35 | 1.874,1 | 1.869,84 | +4,26 | 09/10 14:25 | INDEX_LEADING |
| 10:40 | 1.873,7 | 1.870,49 | +3,21 | 12/10 09:00 | trống (index_bar_missing) |
| 10:45 | 1.873,4 | 1.869,38 | +4,02 | 12/10 09:05 | trống (index_bar_missing) |
| 10:50 | 1.873,5 | 1.869,23 | +4,27 | 12/10 09:10 | trống (index_bar_missing) |
| 10:55 | 1.876,2 | 1.871,68 | +4,52 | 12/10 09:15 | INDEX_LEADING |
| 11:00 | 1.877,6 | 1.876,31 | +1,29 | 12/10 09:20 | INDEX_LEADING |
| 11:05 | 1.879,9 | 1.877,54 | +2,36 | 12/10 09:25 | CONFIRMED_UP |
| 11:10 | 1.878,5 | 1.877,11 | +1,39 | 12/10 09:30 | NEUTRAL |
| 11:15 | 1.880,6 | 1.879,10 | +1,50 | 12/10 09:35 | CONFIRMED_UP |
| 11:20 | 1.877,4 | 1.876,94 | +0,46 | 12/10 09:40 | CONFIRMED_UP |
| 11:25 | 1.877,7 | 1.877,10 | +0,60 | 12/10 09:45 | CONFIRMED_UP |
| 13:00 | 1.877,1 | 1.874,30 | +2,80 | 12/10 09:50 | INDEX_LEADING |
| 13:05 | 1.877,2 | 1.873,78 | +3,42 | 12/10 09:55 | NEUTRAL |
| 13:10 | 1.878,7 | 1.876,16 | +2,54 | 12/10 10:00 | CONFIRMED_UP |
| 13:15 | 1.877,3 | 1.875,43 | +1,87 | 12/10 10:05 | CONFIRMED_UP |
| 13:20 | 1.877,0 | 1.875,42 | +1,58 | 12/10 10:10 | CONFIRMED_UP |
| 13:25 | 1.876,5 | 1.876,02 | +0,48 | 12/10 10:15 | CONFIRMED_UP |
| 13:30 | 1.875,6 | 1.874,07 | +1,53 | 12/10 10:20 | INDEX_LEADING |
| 13:35 | 1.875,0 | 1.872,11 | +2,89 | 12/10 10:25 | INDEX_LEADING |
| 13:40 | 1.876,9 | 1.872,39 | +4,51 | 12/10 10:30 | NEUTRAL |
| 13:45 | 1.875,9 | 1.873,69 | +2,21 | 12/10 10:35 | INDEX_LEADING |
| 13:50 | 1.873,5 | 1.870,65 | +2,85 | 12/10 10:40 | NEUTRAL |
| 13:55 | 1.873,0 | 1.870,09 | +2,91 | 12/10 10:45 | NEUTRAL |
| 14:00 | 1.874,3 | 1.871,51 | +2,79 | 12/10 10:50 | NEUTRAL |
| 14:05 | 1.874,1 | 1.871,29 | +2,81 | 12/10 10:55 | NEUTRAL |
| 14:10 | 1.873,7 | 1.869,68 | +4,02 | 12/10 11:00 | CONFIRMED_DOWN |
| 14:15 | 1.872,2 | 1.868,94 | +3,26 | 12/10 11:05 | CONFIRMED_DOWN |
| 14:20 | 1.874,0 | 1.869,45 | +4,55 | 12/10 11:10 | CONFIRMED_DOWN |
| 14:25 | 1.874,5 | 1.869,38 | +5,12 | 12/10 11:15 | CONFIRMED_DOWN |
Khung 5 phút; cột "Nến t−20" là nến mốc mà nhãn basis dùng để so. Nhãn do Stockup áp bảng quy tắc regime-v1 lên số đo ms-v3 và pos-v1; ngưỡng là giá trị khởi điểm, chưa hiệu chỉnh; nhãn mô tả trạng thái, không phải gợi ý vào ra lệnh.
Đọc theo cột "Nến t−20":
- 09:00–09:10: basis trống vì chỉ số chưa có nến; nhãn trống vì cùng lý do. Nến mốc là 11:20–13:00 của phiên 09/10.
- 09:15–10:35: có basis và có nhãn. Nến mốc vẫn thuộc phiên 09/10, buổi chiều.
- 10:40–10:50: có basis (+3,21; +4,02; +4,27 điểm) nhưng nhãn trống, vì nến mốc là 09:00–09:10 của chính phiên 12/10.
- 10:55 trở đi: đủ bốn giá, nhãn có trở lại.
Phiên có 42 nến mang nhãn: 14 CONFIRMED_DOWN, 10 NEUTRAL, 10 INDEX_LEADING, 8 CONFIRMED_UP. Sáu ô trắng trên dải nhãn chính là hai lần trống của cùng một khoảng thiếu.
Đếm trên toàn lịch sử
Trên 33.022 nến 5 phút từ 02/01/2024 tới 16/10/2026, 84,6% có nhãn basis. Trong số nến không có nhãn, 4.306 nến mang mã index_bar_missing, 594 nến warmup_after_roll (đầu hợp đồng chưa đủ 20 nến) và 186 nến input_missing.
Hai điều rút ra cho người dùng dữ liệu:
- Chỗ trống có quy luật thì dự kiến được. Khoảng trống 09:00–09:10 và 10:40–10:50 lặp lại mỗi phiên. Một nghiên cứu dùng nhãn basis khung 5 phút nên tính trước rằng sáu nến này không có nhãn, thay vì coi đó là lỗi.
- Chỗ trống bất thường phải được kiểm. 20 phiên có khoảng thiếu giữa phiên cần được liệt kê trước khi tính thống kê; xem checklist kiểm tra chất lượng dữ liệu lịch sử VN30F1M.
Lấp chỗ trống bằng giá chỉ số của phút trước sẽ tạo ra một basis không có thật ở phút đó. Với dữ liệu lịch sử, cách làm này còn có thể đưa vào số liệu những giá trị mà hệ thống thật không có ở thời điểm đó — một dạng sai lệch nhìn trước.
Câu hỏi thường gặp
Nến chỉ số thiếu là gì?
Là trường hợp chỉ số VN30 không có nến ở đúng phút cần ghép với giá hợp đồng tương lai. Thường gặp nhất ở 15 phút đầu phiên phái sinh, hiếm hơn ở giữa phiên. Khi đó basis, basis z-score và nhãn basis của nến liên quan để trống với mã index_bar_missing, không điền giá trị thay thế.
Vì sao nhãn basis trống ở 10:40 đến 10:50 mỗi ngày?
Vì nhãn basis so giá với nến thứ 20 trước đó. Ở khung 5 phút, nến thứ 20 trước 10:40, 10:45 và 10:50 là 09:00, 09:05 và 09:10, khi chỉ số chưa có nến. Thiếu giá ở nến mốc thì nhãn trống. Trên 688 phiên, chỉ 2 phiên có nhãn ở nến 10:40.
Một nến chỉ số thiếu ảnh hưởng bao nhiêu nến?
Với basis và basis z-score, chỉ một nến: chính nến thiếu. Với nhãn basis, hai nến: nến thiếu và nến thứ 20 sau nó trong cùng hợp đồng. Với baseline theo khe giờ, phiên có nến thiếu bị bỏ khỏi baseline của khe đó ở các phiên sau, và baseline lùi thêm một phiên để đủ 20 phiên.
Khung 15 phút mất nhãn basis ở nến nào?
Ở nến 09:00, vì chỉ số chưa có giá trong 15 phút đầu: mã index_bar_missing ở 685 trên 688 phiên. Và ở nến 10:00, vì nến thứ 20 trước nó là nến 09:00 của phiên hôm trước: 647 phiên. Không phiên nào có nhãn ở hai nến này; các phiên còn lại trống vì lý do khác, chủ yếu là đầu hợp đồng mới.
Thiếu nến chỉ số có làm sai basis z-score không?
Không làm sai, chỉ làm trống. Nến thiếu không có basis_z. Phiên có nến thiếu không được dùng làm baseline ở khe giờ đó; baseline tìm thêm phiên khác trong tối đa 40 phiên để đủ 20. Riêng ba khe 09:00–09:10 thì không có basis z-score ở bất kỳ phiên nào vì không dựng được baseline.
Có nên lấy giá chỉ số của phút trước để lấp chỗ trống không?
Không nên. Giá chỉ số của phút trước không phải giá của phút này, nên basis tính ra là một con số không có thật. Nó trông như dữ liệu bình thường và đi vào mọi thống kê sau đó mà không để lại dấu vết. Để trống kèm mã lý do giúp người dùng biết chính xác ô nào thiếu và vì sao.
Nguồn tham khảo
- HNX – Hợp đồng tương lai chỉ số VN30: đặc tả hợp đồng, thời gian giao dịch và ngày giao dịch cuối cùng – hnx.vn – truy cập 19/10/2026
- HOSE – Quy tắc xây dựng và quản lý chỉ số HOSE-Index (chỉ số VN30) và thời gian giao dịch – hsx.vn – truy cập 19/10/2026
- Dữ liệu thị trường: Stockup Market Structure (
ms-v3) và Positioning (pos-v1), đã đối soát cuối ngày; nhãn do Stockup áp bảng quy tắcregime-v1lên số đo
Số nến trống phụ thuộc cửa sổ 20 nến của regime-v1, baseline 20 phiên của pos-v1 và giờ giao dịch hiện hành, được rà soát định kỳ 6 tháng; số liệu đo trên 688 phiên tới 16/10/2026.
Lưu ý rủi ro: Bài viết giải thích cách một chỗ trống trong dữ liệu lan qua các số đo và dùng dữ liệu đã xảy ra, không gợi ý hành động giao dịch nào. Chứng khoán phái sinh dùng đòn bẩy — lãi và lỗ đều được khuếch đại.
Một chỗ trống trung thực lan đi đâu thì phải theo dấu tới đó — đăng ký bản tin Stockup để nhận các bài kiểm tra dữ liệu VN30F1M.
