Khóa học: Phân tích cơ bản
Case: MWG — đối chiếu HPA
Sau bài này bạn viết được (nếu là producer) hoặc thẩm định được (nếu là consumer) một Live Report: cấu trúc bắt buộc của nó, cách gắn số neo vào dữ liệu thật thay vì mô tả chung chung, cách đặt mắt xích sao cho máy chấm được, và cách phát hiện khi một tác giả đang lấp liếm thay vì cam kết thật.
Live Report khác một bài phân tích thông thường ở đúng một điểm: nó KHOÁ lại một cam kết có thể đối chiếu bằng máy, tại đúng thời điểm publish, và không cho phép sửa sau khi đã biết kết quả. Đây là cơ chế chống lại vấn đề lớn nhất của mọi nội dung đầu tư — tác giả nào cũng có thể VIẾT hay, nhưng chỉ tác giả nào dám ĐẶT CƯỢC bằng những con số đo được, công khai, và không sửa được sau khi sai, mới đáng tin theo thời gian. Track record của một tác giả (bài 6.2) chỉ có ý nghĩa nếu mỗi Live Report họ viết ra thật sự có thể bị máy chấm điểm là ĐÚNG hay SAI — không phải một bài văn hay được đọc lại bằng cảm tính.
Cấu trúc bắt buộc
Một Live Report tốt luôn có đủ 5 phần, theo đúng thứ tự: (1) Luận điểm một câu — đúng khung bài 6.1 (giả thuyết trung tâm, biến số then chốt); (2) Bằng chứng — mỗi khẳng định neo bằng số thật, ghi rõ kỳ báo cáo và nguồn; (3) Mắt xích (checkpoints) — điều kiện đo được, mỗi cái gắn với một chỉ số nền tảng SMP có (metric_key thật) hoặc, khi không có, khai báo THỦ CÔNG và ghi rõ vì sao; (4) Điều kiện tôi sai (falsification conditions) — đúng khung bài 6.2; (5) Quyết định — hành động cụ thể (mua/không mua/watchlist) kèm điều kiện đảo chiều.
Cách gắn số neo
Một câu "MWG đang hồi phục tốt" không neo vào đâu cả — bất kỳ ai cũng có thể viết câu này về bất kỳ cổ phiếu nào. Một câu "LNST tăng từ 168 tỷ (2023) lên 7.073 tỷ (2025), theo BCTC kiểm toán đã cache trong hệ thống" neo vào một con số kiểm chứng được. Nguyên tắc: MỌI số liệu cụ thể phải trỏ được về một trong ba nguồn — (a) dữ liệu nền tảng SMP (BCTC, tỷ số, BQI/MOAT — kiểm chứng bằng máy), (b) nguồn báo chí/công bố chính thức có trích dẫn rõ (kiểm chứng được bằng tay), hoặc (c) suy diễn của chính tác giả (phải ghi rõ đây LÀ suy diễn, không phải số gốc).
Mắt xích auto vs. thủ công
Mắt xích kind: "auto" gắn với một metric_key thật trong registry của SMP — máy tự đối chiếu, tác giả không can thiệp được sau khi publish (đây là phần "máy chấm, không phải tôi chấm"). Mắt xích kind: "manual" dùng khi platform KHÔNG có nguồn dữ liệu cho biến số đó (ví dụ giá heo hơi, lợi nhuận ròng theo từng mảng kinh doanh không được BCTC công bố riêng) — tác giả tự cập nhật, và nếu KHÔNG cập nhật, mắt xích hiện XÁM (chưa đối chiếu được), không bao giờ tự chuyển xanh. Đây chính là "độ chuyên cần" trong track record — im lặng ở một mắt xích thủ công không trung tính, nó bị đếm.
MWG — "Thế Giới Di Động: hồi phục thật, nhưng động cơ là cắt chi phí" (Live Report thật, đã publish trên Sàn Nghiên cứu) — mổ xẻ cấu trúc.
Luận điểm một câu, ngay đầu bài: "Cú hồi phục của MWG là THẬT..., nhưng động cơ của nó là CẮT CHI PHÍ, không phải biên gộp phục hồi — và giới hạn của cắt chi phí đang lộ ra... Xếp: WATCHLIST, chờ bằng chứng lợi nhuận biến được thành tiền." Một câu, có lập trường rõ, có điều kiện chờ.
Bằng chứng neo số thật ngay từ đoạn đầu: bảng 4 năm biên ròng/ROE/LNST kèm chú thích "đây không phải tranh cãi — đây là số trên BCTC kiểm toán". Khi cần dùng số KHÔNG có trong nền tảng (số cửa hàng, kế hoạch 2026), tác giả tách hẳn một mục "Khoảng trống dữ liệu — nói thẳng", liệt kê rõ: "LÃI/LỖ RÒNG THEO TỪNG MẢNG:... KHÔNG đối chiếu được với BCTC — nên tôi đặt nó thành mắt xích THỦ CÔNG, không phải mắt xích máy chấm."
Mắt xích "BHX đạt biên lợi nhuận RÒNG ≥ 3%" là ví dụ mẫu mực của mắt xích thủ công trung thực: kind: "manual", trạng thái hiện tại "pending" (chưa đối chiếu), mô tả nói thẳng "Loại ĐẠT — điều này CHƯA đúng, và đó là chủ ý... THỦ CÔNG vì platform KHÔNG có lợi nhuận ròng theo mảng... Để XÁM cho tới khi tự đối chiếu — không gán đèn giả." So sánh với 8 mắt xích còn lại đều kind: "auto", gắn metric_key thật (ratio:cfo_np, ratio:gross_margin, ratio:dsi, eq:fscore, eq:mscore, ratio:interest_coverage, ratio:net_de, metric:revenue_growth) — máy tự đối chiếu mỗi lần có ai mở bài, không đợi tác giả cập nhật tay.
Điều kiện tôi sai được viết CỤ THỂ, không mơ hồ: "CFO/LNST ≥ 1,0 trong một năm tài chính đầy đủ VÀ tồn kho không còn tăng nhanh hơn doanh thu" — có ngưỡng số, có khung thời gian, đối lập rõ với kiểu viết mơ hồ "nếu tình hình xấu đi tôi sẽ sai".
HPA — "Nông nghiệp Hòa Phát: doanh nghiệp thật, nhưng P/E 5,85 là P/E đỉnh chu kỳ" (Live Report thật, đã publish) — một cách khác để dùng mắt xích thủ công đúng.
Bài này có 10 mắt xích: 5 mắt xích auto "phòng thủ" (F-Score ≥ 6/8, M-Score ≤ −1,78, tiền mặt ròng dương, khả năng trả lãi vay ≥ 5x, CFO/LNST ≥ 1,0x) bảo vệ vế "doanh nghiệp THẬT" của luận điểm; 3 mắt xích auto "tấn công" dự đoán đảo chiều chu kỳ (biên gộp SẼ rơi dưới 20%, LNST SẼ giảm dưới 1.005 tỷ, doanh thu SẼ đi lùi); và ĐÚNG 2 mắt xích thủ công cho biến số gốc của toàn bộ luận điểm — giá heo hơi và dịch tả châu Phi (ASF).
Mô tả mắt xích giá heo hơi nói thẳng lý do nó phải thủ công: "Biến số gốc của toàn bộ luận điểm. SMP KHÔNG có nguồn giá heo — tôi phải tự cập nhật tay, và độ chuyên cần đó được đóng dấu công khai. Không cập nhật = xám = không đối chiếu được, KHÔNG BAO GIỜ được tính là đúng." Cả hai mắt xích thủ công này, tại thời điểm bài viết được đối chiếu, vẫn manualStatus: null — CHƯA từng được tác giả cập nhật — nên hiện XÁM đúng như thiết kế, không có gì được "chấm hộ" thành xanh.
Bài học cho consumer — chỗ để soi khi đọc một Live Report: (1) đếm tỷ lệ mắt xích auto so với manual — quá nhiều mắt xích thủ công cho những biến số THỰC RA có sẵn trên nền tảng là dấu hiệu tác giả đang né máy chấm; (2) với mỗi mắt xích thủ công, đọc mô tả xem lý do nó thủ công có chính đáng (biến số thật sự không có nguồn, như giá heo hơi) hay là một cái cớ; (3) kiểm tra mắt xích thủ công có đang bị bỏ xám vĩnh viễn (không bao giờ cập nhật, né chấm điểm) hay được cập nhật đều; (4) đọc "Khoảng trống dữ liệu" — bài nào không có mục này thường là bài chưa nói hết những gì tác giả không kiểm chứng được, không phải bài không có khoảng trống.
Một Live Report tốt không được đo bằng văn phong hay số liệu nhiều — nó được đo bằng việc mỗi câu khẳng định có neo được vào một con số kiểm chứng hay không, và mỗi mắt xích có thể bị máy chấm sai hay không. Mắt xích auto là cam kết thật (máy chấm, tác giả không can thiệp được); mắt xích manual chỉ chính đáng khi biến số đó THẬT SỰ không có nguồn dữ liệu nền tảng, và phải được cập nhật đều thay vì bỏ xám để né chấm điểm. Đọc một Live Report với vai trò consumer nghĩa là kiểm tra đúng những chỗ này trước khi tin vào luận điểm — không phải chỉ đọc xem văn có thuyết phục không.
Mở một Live Report bất kỳ trên Sàn Nghiên cứu (của chính bạn hoặc người khác):
1. Đếm tỷ lệ mắt xích auto so với manual — có mắt xích thủ công nào lẽ ra có thể gắn metric_key thật không?
2. Đọc phần "Điều kiện tôi sai" — mỗi điều kiện có ngưỡng số và khung thời gian cụ thể, hay chỉ là câu chung chung?
3. Nếu là producer: trước khi publish bài tiếp theo của bạn, viết thử mục "Khoảng trống dữ liệu" liệt kê MỌI con số trong bài không đến trực tiếp từ nền tảng SMP.