170 Cổ Phiếu Net-Net Trên Thị Trường Việt Nam, Và Cái Bẫy Nằm Trong Cột Tiền
Graham viết công thức net-net năm 1934 với giả định người đọc sẽ tự đi đọc báo cáo. Giả định đó thường bị bỏ qua, vì phần công thức chạy được bằng máy trong vài phút còn phần đọc báo cáo thì không.
Số liệu dưới đây chốt phiên 28/10/2026.
Công thức, và ba chỗ dễ làm sai
Net-net của Graham là phép so sánh giữa vốn hoá thị trường và giá trị vốn lưu động ròng (NCAV):
NCAV = Tài sản ngắn hạn − toàn bộ nợ phải trả − lợi ích cổ đông không kiểm soát
Vốn hoá thấp hơn NCAV nghĩa là thị trường đang bán cho bạn phần vốn lưu động ròng với giá chiết khấu — còn nhà xưởng, máy móc, thương hiệu thì cho không. Ngưỡng mua của Graham khắt khe hơn một bậc: giá phải dưới 2/3 NCAV.
Ba chi tiết quyết định danh sách dài hay ngắn, và cả ba đều hay bị làm sai:
Trừ toàn bộ nợ phải trả, kể cả nợ dài hạn. Nhiều bộ lọc chỉ trừ nợ ngắn hạn, và cho ra một danh sách dài hơn hẳn nhưng sai định nghĩa.
Trừ lợi ích cổ đông không kiểm soát — vốn lưu động của công ty con không thuộc về cổ đông công ty mẹ theo tỷ lệ 100%. Không trừ khoản này thì danh sách là 180 mã; trừ rồi còn 170.
Tự tính vốn hoá thay vì lấy thẳng từ nhà cung cấp dữ liệu, vì trên nhóm mã nhỏ thì số của họ sai tới mức tạo ra hoặc xoá đi cả một cơ hội.
Ngoài NCAV còn hai thước đo chặt hơn, cũng của Graham. NNWC chiết khấu tài sản ngắn hạn theo đúng tỷ lệ ông đề xuất: tiền và đầu tư ngắn hạn tính đủ, phải thu tính 75%, tồn kho tính 50%. Và tiền ròng, khắt khe nhất, bỏ hết phải thu và tồn kho, chỉ giữ tiền cộng đầu tư tài chính ngắn hạn rồi trừ toàn bộ nợ.
170 mã
Quét toàn bộ mã HOSE, HNX và UPCOM có báo cáo tài chính theo mẫu doanh nghiệp phi tài chính. Kỳ gần nhất là 30/9/2026 với 589 mã đã công bố quý III, 30/6/2026 với phần còn lại. Giá là giá 28/10/2026, tức sau ngày công bố của cả hai kỳ.
| Chỉ tiêu | Số mã |
|---|---|
| Doanh nghiệp phi tài chính có báo cáo quý gần nhất | 1.067 |
| …ghép được vốn hoá | 1.059 |
| Vốn hoá < NCAV | 170 |
| …trong đó dưới 2/3 NCAV, ngưỡng mua của Graham | 94 |
| …trong đó vốn hoá < NNWC | 65 |
| …trong đó vốn hoá < tiền ròng | 27 |
Phân bổ sàn khá đều: HNX 61 mã, UPCOM 55, HOSE 54. Tổng vốn hoá của 170 mã là 59.838 tỷ đồng, tổng NCAV là 92.460 tỷ.
Các cờ cảnh báo chạy trên chính 170 mã đó:
| Cờ | Số mã |
|---|---|
| Giá trị giao dịch bình quân dưới 100 triệu đồng/phiên | 108 |
| Chưa công bố báo cáo quý III/2026 | 60 |
| NCAV chủ yếu là phải thu, trên 60% tài sản ngắn hạn | 42 |
| Lỗ bốn quý gần nhất | 32 |
| NCAV chủ yếu là tồn kho, trên 60% tài sản ngắn hạn | 31 |
| Không giao dịch, hoặc dưới 20 trên 30 phiên có khớp lệnh | 22 |
Một mã có thể mang nhiều cờ cùng lúc. 108 mã thanh khoản dưới 100 triệu đồng một phiên nghĩa là với vốn vài tỷ, hai phần ba danh sách đã không mua được ở giá trong bảng. 22 mã thì không mua được ở giá nào cả.
Vậy con số 170 nói rằng có 170 bảng cân đối kế toán trông giống net-net, chứ không nói thị trường Việt Nam đang có 170 cơ hội Graham. Khoảng cách giữa hai câu đó gần như toàn bộ nằm ở chất lượng của tài sản ngắn hạn.
Hai mã rẻ nhất không phải hai cơ hội tốt nhất
Xếp theo P/NCAV tăng dần thì đầu danh sách là MPT ở mức 0,07 và KSQ ở 0,09. Thị trường đang định giá hai doanh nghiệp này bằng 7% và 9% giá trị vốn lưu động ròng của chính chúng. Nếu con số là thứ duy nhất phải xem thì đây là hai cơ hội tốt nhất trên sàn.
Bóc chỉ tiêu phải thu ra thì khác. 82% phải thu của MPT nằm ở dòng "phải thu khác". 97% phải thu của KSQ nằm ở dòng "trả trước cho người bán". DVG, mã rẻ thứ ba, có 90% ở cùng dòng đó.
Trong 21 mã rẻ nhất — tức dưới 1/3 NCAV — có 13 mã mà NCAV chủ yếu là phải thu. Và trong 13 mã đó, phần lớn không phải phải thu khách hàng mà là hai dòng "trả trước cho người bán" và "phải thu khác". Ở Việt Nam, hai dòng này thường là đường chuyển tiền ra bên liên quan chứ không phải vốn lưu động thương mại.
QBS là ca cực đoan nhất. Phải thu khách hàng gộp của nó lớn hơn phải thu thuần 237%, vì công ty đã trích dự phòng 431 tỷ đồng. Nghĩa là phần lớn NCAV của QBS là khoản phải thu mà chính công ty đã thừa nhận là khó đòi. Một bộ lọc chạy bằng máy không đọc được dòng dự phòng đó, nên thứ nó in ra là danh sách để đi đọc, không phải danh sách để mua.
Tầng khắt khe nhất: 27 mã có vốn hoá thấp hơn tiền ròng
Phép thử này vứt bỏ toàn bộ phải thu và tồn kho. Chỉ giữ tiền cộng đầu tư tài chính ngắn hạn, trừ toàn bộ nợ phải trả, rồi so với vốn hoá. Vốn hoá thấp hơn tiền ròng nghĩa là mua cả công ty ở giá thị trường mà vẫn nhận lại nhiều hơn số bỏ ra, chỉ tính riêng tài sản thanh khoản nhất trên bảng.
Đơn vị: tỷ đồng.
| Mã | Sàn | Vốn hoá | Tiền ròng | Giá/Tiền ròng | P/NCAV | LNST 4 quý |
|---|---|---|---|---|---|---|
| GKM | HNX | 35 | 147 | 0,23 | 0,18 | -42 |
| TVC | HNX | 518 | 1.294 | 0,40 | 0,38 | -7 |
| HEV | HNX | 28 | 58 | 0,47 | 0,43 | -0 |
| TTT | HNX | 138 | 264 | 0,52 | 0,43 | 31 |
| IRC | UPCOM | 68 | 129 | 0,53 | 0,45 | 48 |
| TTC | HNX | 61 | 114 | 0,53 | 0,49 | 24 |
| VCA | HOSE | 105 | 188 | 0,56 | 0,50 | 22 |
| AAM | HOSE | 82 | 146 | 0,56 | 0,48 | 5 |
| KKC | HNX | 31 | 52 | 0,59 | 0,58 | -0 |
| ST8 | HOSE | 53 | 88 | 0,61 | 0,31 | -28 |
| PV2 | HNX | 66 | 107 | 0,62 | 0,60 | -19 |
| TCT | HOSE | 210 | 337 | 0,62 | 0,58 | 17 |
| STD | UPCOM | 112 | 164 | 0,68 | 0,58 | 2 |
| MPT | UPCOM | 10 | 15 | 0,69 | 0,07 | -1 |
| PTC | HOSE | 170 | 240 | 0,71 | 0,69 | 17 |
| CIA | HNX | 166 | 229 | 0,72 | 0,60 | 20 |
| VE1 | HNX | 16 | 21 | 0,76 | 0,57 | 4 |
| VNB | UPCOM | 964 | 1.223 | 0,79 | 0,78 | 87 |
| PHH | UPCOM | 78 | 97 | 0,81 | 0,39 | -29 |
| HTV | HOSE | 167 | 204 | 0,82 | 0,54 | 23 |
| NDN | HNX | 559 | 650 | 0,86 | 0,65 | 42 |
| MHC | HOSE | 319 | 370 | 0,86 | 0,75 | -5 |
| VLA | HNX | 23 | 27 | 0,86 | 0,54 | 1 |
| GMH | HOSE | 102 | 116 | 0,89 | 0,63 | 12 |
| VIP | HOSE | 692 | 777 | 0,89 | 0,67 | 68 |
| VFR | UPCOM | 135 | 150 | 0,90 | 0,67 | 16 |
| GTA | HOSE | 76 | 78 | 0,97 | 0,56 | 8 |
Danh sách này trông sạch hơn hẳn 170 mã ở trên, vì không còn phải thu hay tồn kho để tranh luận. Nhưng chữ "tiền" ở đây cộng từ hai dòng của bảng cân đối, và dòng thứ hai thường không phải tiền.
Ba công ty cùng đứng trên chỉ tiêu 11200
Dòng "Các khoản đầu tư tài chính ngắn hạn" — chỉ tiêu 11200 trên bảng cân đối — nhìn qua thì giống tiền gửi ngân hàng. Tôi tải báo cáo tài chính gốc trên HNX và HOSE rồi đọc thuyết minh của ba mã lớn nhất trong nhóm 27. Ba thuyết minh ghi ba thứ khác nhau.
VIP, Vận tải Xăng dầu VIPCO. Báo cáo hợp nhất quý III/2026 công bố ngày 23/10/2026, thuyết minh VI mục 02, trang 21. Toàn bộ 861.523.780.821 đồng của dòng này là tiền gửi có kỳ hạn, không có một đồng chứng khoán kinh doanh nào. Cộng với 94.177.727.855 đồng tiền và tương đương tiền thành 955,7 tỷ; trừ nợ phải trả 178,7 tỷ còn tiền ròng 777,0 tỷ, so với vốn hoá 691,6 tỷ. Mua toàn bộ VIP ở giá thị trường thì nhận lại nhiều hơn số bỏ ra bằng sổ tiền gửi ngân hàng — còn đội tàu chở dầu là phần được tặng. Đây là trường hợp sạch nhất trong toàn bộ 170 mã.
VNB, Sách Việt Nam. Báo cáo quý III/2026 công bố 20/10/2026, thuyết minh V mục 2.1, trang 17. Trong 1.232.571.141.089 đồng, tiền gửi ngân hàng có kỳ hạn chỉ là 163.925.442.458 đồng. Phần còn lại, 1.068.645.698.631 đồng, là một khoản cho vay. Tức 86,7% cái gọi là "đầu tư tài chính ngắn hạn" của VNB là một sổ cho vay.
Thuyết minh ghi khoản cho vay dài hạn 1.008 tỷ đồng tại 01/01/2026 đã về 0, nghĩa là đã chuyển sang ngắn hạn, kèm một câu giải thích: "Đây là khoản cho một số doanh nghiệp vay, thời hạn cho vay >1 năm với lãi suất 12%/năm." Báo cáo quý không nêu tên người vay và không nêu tài sản bảo đảm. Trong khi đó bảng vốn góp ở trang 21 cho thấy Tập đoàn Vingroup nắm 443.642.740.000 đồng trên vốn điều lệ 679.099.600.000 đồng, tức 65,33%, cổ đông nhà nước giữ 10%. Doanh thu bán hàng quý III của công ty sách này là 10,3 tỷ đồng — còn lãi tiền gửi và cho vay là 33,6 tỷ.
NDN, Đầu tư Phát triển Nhà Đà Nẵng. Báo cáo hợp nhất quý III/2026 công bố 23/10/2026, thuyết minh V mục 2a và 2b, trang 24 và 25. Chứng khoán kinh doanh giá gốc 667.908.249.385 đồng, đã trích dự phòng giảm giá 50.834.936.857 đồng; đầu tư giữ đến đáo hạn 156.514.126.030 đồng. Cộng lại đúng bằng con số 773,6 tỷ trên bảng cân đối. Nghĩa là 79,8% "tiền" của NDN là một danh mục cổ phiếu niêm yết, trong đó có HPG, VPB, GEX và Vinhomes.
NCAV của NDN là thật, nhưng nó không phải két sắt. Nó là beta thị trường chứng khoán: giá NDN và giá các mã trong danh mục đó sẽ rơi cùng nhau. Tính theo giá trị hợp lý ở ngày lập báo cáo thì NCAV cao hơn sổ sách 100,2 tỷ, đưa P/NCAV từ 0,65 về khoảng 0,55. Nhưng đó là lãi chưa thực hiện — không phải tiền.
Ba công ty, ba bản chất: tiền gửi thật, một sổ cho vay không công bố người vay, và một danh mục cổ phiếu. Trên bảng cân đối cả ba đều là chỉ tiêu 11200, và không nền tảng dữ liệu tổng hợp nào phân biệt được chúng; chỉ thuyết minh phân biệt được.
24 mã còn lại trong bảng 27 mã thì tôi chưa đọc tài liệu gốc. Con số của chúng đã đối chiếu chéo giữa các nguồn, nhưng bản chất thì chưa, nên tôi chưa gọi mã nào trong số đó là net-cash.
Vốn hoá cũng không nên tin sẵn
So vốn hoá của TradingView với VNDirect trên 1.265 mã thì lệch quá 2% ở 237 mã. Dò nguyên nhân bằng cách tự tính, lấy số cổ phiếu nhân giá đóng cửa phiên có khớp lệnh gần nhất: TradingView ghi TAR 478 tỷ, còn 78.319.777 cổ phiếu nhân 2.200 đồng ra 172 tỷ. TCD cũng vậy: 635 tỷ so với 302 tỷ. Nguyên nhân là TradingView giữ giá cũ ở các mã penny. Nếu dùng số của họ thì TAR có P/NCAV 0,96 thay vì 0,35, và TCD rơi khỏi danh sách.
Chiều ngược lại cũng có lỗi. Bản đầu của bộ lọc này lấy số cổ phiếu từ chỉ tiêu cổ phiếu niêm yết của VNDirect theo ngày của kỳ báo cáo, và số đó lag sau các đợt chia cổ phiếu thưởng năm 2026. Đối chiếu ba chiều mới lộ ra: lệch ở 17 trong 170 mã, ba mã sai nặng. TYA có số cổ phiếu thật là 30.680.600 chứ không phải 6.134.773, nên P/NCAV đi từ 0,18 lên 0,89. V21 từ 0,25 lên 0,69. HTN từ 0,65 lên 0,97. Ba mã trông như cơ hội rõ rệt, sau khi sửa thì đều nằm sát ngưỡng.
Sáu mã HCT, HNR, ITA, SJF, TNA và TTB không có giá ở cả hai nguồn giá độc lập, nhưng nhà cung cấp dữ liệu vẫn trả vốn hoá gắn nhãn ngày 28/10/2026 cho chúng. Đó là giá kéo dài của mã đã ngừng giao dịch. Vốn hoá đó không có nghĩa, và P/NCAV của chúng phải đọc là vô nghĩa chứ không phải là rẻ.
Một con số vốn hoá sai 2% thì không ai để ý, nhưng sai 150% thì tạo ra hoặc xoá đi một cơ hội net-net. Mà sai số của nhà cung cấp dữ liệu lớn nhất đúng ở nhóm mã nhỏ, thanh khoản mỏng — nơi net-net sinh sống.
Những gì một bộ lọc net-net không trả lời được
Danh sách chạy trên mã còn niêm yết ngày 29/10/2026. Mã đã huỷ niêm yết — đúng nhóm mà net-net hay rơi vào — không có trong mẫu. Mọi thống kê ở đây vì vậy là chặn trên, không phải ước lượng không lệch.
NCAV trừ nợ phải trả trên bảng. Bảo lãnh cho công ty liên kết, cam kết mua lại, hợp đồng hợp tác đầu tư ghi ở "phải trả khác" đều không có trong phép tính. Với nhóm xây dựng và bất động sản trong danh sách, đây là rủi ro lớn và chưa được định lượng.
Không có ngân hàng, công ty chứng khoán, bảo hiểm. Mẫu báo cáo của họ khác và khái niệm "tài sản ngắn hạn" không tồn tại.
Và đừng tin con số thanh khoản tới từng triệu. Hai nguồn giá độc lập khớp nhau rất tốt về giá: 177 trên 183 mã không lệch quá 1%. Nhưng khối lượng thì không khớp ở các mã mỏng. VFR chẳng hạn: một nguồn ghi 30 trên 30 phiên có khớp lệnh và 12 triệu đồng một phiên, nguồn kia ghi 16 phiên và 6 triệu. Con số thanh khoản trong bảng là chặn trên; thực tế có thể mỏng hơn tới một nửa.
Dùng danh sách này thế nào
Bỏ ngay 22 mã không giao dịch được. Không mua được thì không phải cơ hội, dù P/NCAV có là 0,07.
Bỏ 108 mã dưới 100 triệu đồng một phiên nếu vốn của bạn trên một tỷ. Tính trước cần bao nhiêu phiên để vào hết và ra hết, rồi tự hỏi liệu chiết khấu còn đáng không khi phải trả chi phí tác động giá cho cả hai đầu.
Với số còn lại, mở thuyết minh trước khi mở bảng tính. Bốn câu, theo đúng thứ tự này:
Dòng 11200 "đầu tư tài chính ngắn hạn" là tiền gửi, cổ phiếu, hay cho vay? Nếu là cho vay thì cho ai?
Phải thu là của khách hàng, hay là "trả trước cho người bán" và "phải thu khác"? Ai là người nhận?
Tồn kho là hàng bán được, hay là chi phí dở dang của một dự án bất động sản?
Có bảo lãnh, cam kết, hợp đồng hợp tác đầu tư nào ngoài bảng không?
Rồi đến câu Graham luôn hỏi: tại sao nó rẻ? 32 trong 170 mã lỗ bốn quý gần nhất. Với những mã đó, NCAV đang bị đốt đi mỗi quý, và chiết khấu hôm nay có thể không còn vào năm sau. Graham nói rất rõ điều này từ đầu: công ty phải đang có lãi, vì thua lỗ sẽ ăn dần vào chính khoản đệm an toàn mà bạn mua.
Phép tính net-net mất vài phút; ba thuyết minh trong bài này mất một buổi. Chúng ra một mã sạch, một mã phải hỏi tiếp người vay là ai, và một mã phải định giá lại theo cách khác hẳn — mà trước khi mở báo cáo ra thì cả ba trông giống nhau trên bảng cân đối.