Giới thiệu dự án

Thị trường chứng khoán Việt Nam ghi nhận sự bùng nổ mạnh mẽ về quy mô vốn hóa và số lượng nhà đầu tư cá nhân, tuy nhiên tính minh bạch của thông tin tài chính vẫn là thách thức lớn. Thống kê từ Vietstock giai đoạn 2014–2017 cho thấy tỷ lệ doanh nghiệp niêm yết có điều chỉnh số liệu hồi tố hoặc sai lệch sau kiểm toán luôn ở mức báo động: 79% (năm 2014), 75% (năm 2015), 72% (năm 2016) và 57% (6 tháng đầu năm 2017). Trong đó, ngành bất động sản (BĐS) — lĩnh vực chiếm tỷ trọng từ 4,51% đến 7,62% GDP và sở hữu hệ số lan tỏa kinh tế cao (khi sản xuất BĐS giảm 10% kéo theo GDP giảm 1,247%) — là khu vực có rủi ro gian lận Báo cáo tài chính (BCTC) phức tạp nhất. Do đặc thù tài sản có giá trị vốn hóa lớn, chu kỳ phát triển dự án kéo dài, việc vốn hóa chi phí lãi vay và ghi nhận doanh thu chuyển nhượng dự án tạo ra nhiều dư địa cho việc quản trị lợi nhuận (Earnings Management).

Vấn đề cốt lõi (Problem Statement) nằm ở chỗ các kỹ thuật phân tích truyền thống không phát hiện kịp thời các hành vi bóp méo thông tin kế toán trên BCTC tự lập (trước kiểm toán). Hậu quả dẫn đến rủi ro sụt giảm định giá đột ngột, nợ xấu hệ thống ngân hàng và xói mòn niềm tin thị trường.

Mục tiêu cụ thể của dự án:

  1. Hệ thống hóa cơ sở lý luận về gian lận BCTC, chuẩn mực kiểm toán VSA 240, Lý thuyết Bất cân xứng thông tin (Information Asymmetry) và Lý thuyết Ủy nhiệm (Agency Theory).
  2. Xây dựng và chuẩn hóa thuật toán tính toán 8 chỉ số thành phần thuộc mô hình định lượng Beneish M-Score trên tập dữ liệu 60 doanh nghiệp BĐS niêm yết (HOSE, HNX, UPCOM) trong năm tài chính 2021.
  3. Đánh giá xác suất thao túng số liệu trước kiểm toán và đối soát với chênh lệch Lợi nhuận sau thuế (LNST) sau kiểm toán với ngưỡng trọng yếu 5%.
  4. Đề xuất khung kiến nghị kiểm soát rủi ro cho kiểm toán viên độc lập, ngân hàng thương mại và cơ quan quản lý Nhà nước (VACPA, UBCKNN).

Giải pháp áp dụng mô hình xác suất Beneish M-Score (1999) — mô hình toán thống kê từng giúp phát hiện gian lận tại Enron trước khi tập đoàn này sụp đổ — nhằm cung cấp công cụ sàng lọc tự động rủi ro gian lận với độ tin cậy định lượng cao. Phạm vi nghiên cứu tập trung vào 60 doanh nghiệp BĐS niêm yết tiêu biểu tại Việt Nam năm 2021.


Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Các phương pháp đánh giá rủi ro tài chính hiện nay tồn tại nhiều ưu nhược điểm khi áp dụng vào thị trường BĐS Việt Nam:

Phương pháp / Mô hình Ưu điểm Nhược điểm Độ tương thích với BĐS
Phân tích tỷ số đơn lẻ (Financial Ratios) Đơn giản, dễ tính toán, trực quan theo từng khoản mục. Thiếu tính tổng hợp, dễ bị sai lệch do thủ thuật che giấu từng dòng chi phí. Thấp (Dễ bị nhiễu do chu kỳ thanh toán dự án).
Altman Z-Score (1968) Dự báo rủi ro phá sản và kiệt quệ tài chính hiệu quả ($Z < 1.81$). Không đo lường trực tiếp hành vi thao túng lợi nhuận, tập trung vào mất khả năng thanh toán. Trung bình (BĐS có đòn bẩy nợ cao tự nhiên).
Dechow F-Score (2011) Đánh giá hành vi kế toán dồn tích (Accruals) chi tiết. Yêu cầu dữ liệu thị trường và phi tài chính phức tạp, khó thu thập đồng bộ. Trung bình
Beneish M-Score (1999) Tích hợp 8 chỉ số đo lường toàn diện: biến động doanh thu, giá vốn, khấu hao, chi phí SG&A, chất lượng tài sản và dồn tích. Nhạy cảm với các biến động cơ cấu tài sản đột biến trong năm sốt đất. Cao (Tối ưu cho việc phát hiện dồn tích & ghi nhận non doanh thu).

Yêu cầu phân loại chức năng hệ thống theo mô hình MoSCoW:

  • Must-have (Bắt buộc): Tự động hóa trích xuất 8 chỉ số M-Score (DSRI, GMI, AQI, SGI, DEPI, SGAI, TATA, LVGI), phân loại nhị phân rủi ro dựa trên ngưỡng cắt $\text{Cut-off} = -1.78$.
  • Should-have (Cần có): Tính toán độ lệch tương đối $\Delta_{\text{LNST}}$ trước và sau kiểm toán, gắn cờ cảnh báo bất thường với mức sai lệch $\ge 5%$.
  • Could-have (Có thể có): Cơ sở dữ liệu quan hệ lưu trữ lịch sử báo cáo tài chính qua các năm phục vụ phân tích chuỗi thời gian (Time-series).
  • Won't-have (Chưa hỗ trợ): Phân tích dữ liệu văn bản phi cấu trúc (NLP) từ Thuyết minh BCTC trong giai đoạn này.

Thiết kế hệ thống

Kiến trúc luồng xử lý dữ liệu (Data Pipeline Architecture) bao gồm 4 tầng: Ingestion, Processing Engine, Analytical Classifier và Validation Layer.

Hệ thống sử dụng Technology Stack tiêu chuẩn:

  • Ngôn ngữ xử lý dữ liệu: Python 3.10+, NumPy 1.26.0, Pandas 2.1.0
  • Hệ cơ sở dữ liệu: PostgreSQL 15.2 (Lưu trữ BCTC dạng chuẩn hóa và bảng chỉ số)
  • Engine tính toán: Scripted Financial Algorithms kết hợp Excel OpenPyXL 3.1.2

Thiết kế Database Schema (PostgreSQL DDL):

CREATE TABLE financial_statements (
    ticker VARCHAR(10) NOT NULL,
    fiscal_year INT NOT NULL,
    is_audited BOOLEAN NOT NULL,
    sales NUMERIC(18, 2),
    cogs NUMERIC(18, 2),
    net_receivables NUMERIC(18, 2),
    current_assets NUMERIC(18, 2),
    ppe_net NUMERIC(18, 2),
    depreciation NUMERIC(18, 2),
    total_assets NUMERIC(18, 2),
    sga_expense NUMERIC(18, 2),
    operating_cash_flow NUMERIC(18, 2),
    net_income NUMERIC(18, 2),
    current_liabilities NUMERIC(18, 2),
    long_term_debt NUMERIC(18, 2),
    PRIMARY KEY (ticker, fiscal_year, is_audited)
);

CREATE TABLE beneish_results (
    ticker VARCHAR(10) PRIMARY KEY,
    dsri NUMERIC(8, 4),
    gmi NUMERIC(8, 4),
    aqi NUMERIC(8, 4),
    sgi NUMERIC(8, 4),
    depi NUMERIC(8, 4),
    sgai NUMERIC(8, 4),
    tata NUMERIC(8, 4),
    lvgi NUMERIC(8, 4),
    m_score NUMERIC(8, 4),
    manipulation_flag BOOLEAN,
    variance_net_income_pct NUMERIC(8, 2)
);

Methodology

Phương pháp nghiên cứu kết hợp giữa nghiên cứu định lượng thực nghiệm (Empirical Quantitative Method) và kiểm định đối chiếu chéo (Cross-sectional Audit Adjustment Verification).

Quy trình triển khai 6 bước:

  1. Xác định bài toán & Khung lý thuyết: Xây dựng biến quan sát dựa trên mô hình Beneish gốc.
  2. Thu thập dữ liệu: Trích xuất BCTC hợp nhất kiểm toán và tự lập năm 2021 của 60 mã cổ phiếu BĐS.
  3. Mô hình hóa dữ liệu: Tính toán 8 chỉ số thành phần theo công thức Beneish (1999).
  4. Xử lý số liệu: Tính toán $M\text{-Score}$ tổng hợp và phân loại nhóm rủi ro.
  5. Kiểm định thực nghiệm: So sánh chênh lệch $\Delta_{\text{LNST}}$ trước và sau kiểm toán với ngưỡng sai lệch 5%.
  6. Đánh giá & Kiến nghị: Đo lường độ chính xác và đề xuất giải pháp kiểm soát.

Implementation và kết quả

Development process

Thuật toán Beneish M-Score sử dụng phương trình hồi quy 8 biến số:

$$\text{M-Score} = -4.84 + 0.92 \times \text{DSRI} + 0.528 \times \text{GMI} + 0.404 \times \text{AQI} + 0.892 \times \text{SGI} + 0.115 \times \text{DEPI} - 0.172 \times \text{SGAI} + 4.679 \times \text{TATA} - 0.327 \times \text{LVGI}$$

Trong đó logic trích xuất 8 chỉ số thành phần được cài đặt như sau:

import numpy as np
import pandas as pd

def calculate_beneish_m_score(t0: dict, t1: dict) -> dict:
    """
    Tính toán 8 chỉ số Beneish M-Score giữa năm hiện tại (t0) và năm trước (t1).
    t0, t1: dict chứa các trường số liệu kế toán từ BCTC.
    """
    # 1. Days Sales in Receivables Index (DSRI)
    dsri = (t0['net_receivables'] / t0['sales']) / (t1['net_receivables'] / t1['sales'])
    
    # 2. Gross Margin Index (GMI)
    gm_t1 = (t1['sales'] - t1['cogs']) / t1['sales']
    gm_t0 = (t0['sales'] - t0['cogs']) / t0['sales']
    gmi = gm_t1 / gm_t0 if gm_t0 != 0 else 1.0
    
    # 3. Asset Quality Index (AQI) - PP&E bao gồm TSCĐ, BĐS đầu tư, XDCB dở dang
    non_ca_ppe_t0 = 1.0 - (t0['current_assets'] + t0['ppe_net']) / t0['total_assets']
    non_ca_ppe_t1 = 1.0 - (t1['current_assets'] + t1['ppe_net']) / t1['total_assets']
    aqi = non_ca_ppe_t0 / non_ca_ppe_t1 if non_ca_ppe_t1 != 0 else 1.0
    
    # 4. Sales Growth Index (SGI)
    sgi = t0['sales'] / t1['sales']
    
    # 5. Depreciation Index (DEPI)
    depr_rate_t1 = t1['depreciation'] / (t1['ppe_net'] + t1['depreciation'])
    depr_rate_t0 = t0['depreciation'] / (t0['ppe_net'] + t0['depreciation'])
    depi = depr_rate_t1 / depr_rate_t0 if depr_rate_t0 != 0 else 1.0
    
    # 6. Sales, General & Administrative Expenses Index (SGAI)
    sgai = (t0['sga_expense'] / t0['sales']) / (t1['sga_expense'] / t1['sales'])
    
    # 7. Total Accruals to Total Assets (TATA)
    tata = (t0['net_income'] - t0['operating_cash_flow']) / t0['total_assets']
    
    # 8. Leverage Index (LVGI)
    lev_t0 = (t0['current_liabilities'] + t0['long_term_debt']) / t0['total_assets']
    lev_t1 = (t1['current_liabilities'] + t1['long_term_debt']) / t1['total_assets']
    lvgi = lev_t0 / lev_t1 if lev_t1 != 0 else 1.0
    
    # Beneish Regression Calculation
    m_score = (-4.84 + (0.920 * dsri) + (0.528 * gmi) + (0.404 * aqi) + 
               (0.892 * sgi) + (0.115 * depi) - (0.172 * sgai) + 
               (4.679 * tata) - (0.327 * lvgi))
    
    classification = "Manipulator" if m_score > -1.78 else ("Grey Zone" if m_score >= -2.22 else "Non-Manipulator")
    
    return {
        "DSRI": dsri, "GMI": gmi, "AQI": aqi, "SGI": sgi,
        "DEPI": depi, "SGAI": sgai, "TATA": tata, "LVGI": lvgi,
        "M_Score": m_score, "Classification": classification
    }

Testing và validation

Tiêu chuẩn kiểm định độ chính xác:

  • Độ lệch LNST: $$\Delta_{\text{LNST}} = \frac{\text{LNST}{\text{Sau kiểm toán}} - \text{LNST}{\text{Trước kiểm toán}}}{\text{LNST}_{\text{Sau kiểm toán}}} \times 100%$$
  • Đánh giá đúng:
    • Mô hình dự báo "Gian lận" ($M > -1.78$) VÀ $|\Delta_{\text{LNST}}| \ge 5%$.
    • Mô hình dự báo "Không gian lận" ($M \le -2.22$) VÀ $|\Delta_{\text{LNST}}| < 5%$.
  • Đánh giá sai: Bất kỳ sai lệch chéo nào giữa dự báo và biến động thực tế kiểm toán.

Kết quả đạt được

Phân tích trên mẫu 60 doanh nghiệp bất động sản niêm yết năm 2021:

[Tổng mẫu: 60 Doanh nghiệp BĐS]

Dữ liệu tính toán chi tiết một số doanh nghiệp tiêu biểu:

Mã CP M-Score Phân loại mô hình Biến động LNST sau kiểm toán Nhận định kiểm định
NBB +215.9548 Gian lận cao Lệch lớn do phân loại doanh thu tài chính Đúng
CDC +57.7471 Gian lận cao Điều chỉnh chi phí trích trước Đúng
FLC +51.6854 Gian lận cao Loại trừ hợp nhất Bamboo Airways, sai lệch lớn Đúng
DXS +46.7604 Gian lận cao Điều chỉnh trích lập dự phòng phải thu Đúng
TDH +42.5825 Gian lận cao Hồi tố thuế linh kiện điện tử Đúng
LDG +39.6597 Gian lận cao Điều chỉnh doanh thu chuyển nhượng dự án Đúng
VHM +31.6694 Gian lận cao Ghi nhận dồn tích bàn giao đại đô thị Biến động trọng yếu
DIG +2.3599 Gian lận cao Bổ sung doanh thu chưa thực hiện 135,9 tỷ Đúng
HQC +1.8333 Gian lận cao Hàng bán bị trả lại, LNST giảm 57% Đúng
CRE +1.3078 Gian lận cao Điều chỉnh phân loại chi phí môi giới Đúng
HAG -2.4394 Không gian lận Biến động dưới ngưỡng trọng yếu kiểm toán Đúng
VIC -3.0185 Không gian lận BCTC kiểm toán giữ vững tính nhất quán Đúng
BCM -15.2086 Không gian lận Dòng tiền tương ứng doanh thu thực tế Đúng
SJS -117.4108 Không gian lận Không phát hiện điều chỉnh dồn tích bất thường Đúng

Đổi mới và đóng góp

Nghiên cứu mang lại những cải tiến kỹ thuật rõ nét trong việc nhận diện gian lận tài chính tại thị trường mới nổi:

  1. Hiệu chỉnh bối cảnh cho biến chất lượng tài sản (AQI): Nghiên cứu mở rộng cấu phần tài sản dài hạn phi vật chất trong công thức AQI gốc để bao gồm các khoản mục đặc thù của BĐS Việt Nam: Quyền sử dụng đất, Chi phí xây dựng cơ bản dở dang của các dự án treo, và Bất động sản đầu tư.
  2. Chứng minh tính thực nghiệm của biến dồn tích (TATA): Nghiên cứu chứng minh trọng số của chỉ số TATA ($+4.679$) là biến số nhạy cảm nhất đối với ngành BĐS. Các doanh nghiệp ghi nhận lợi nhuận kế toán cao nhưng dòng tiền từ hoạt động kinh doanh (CFO) âm nặng nề (như NBB, FLC, LDG) đều bị mô hình nhận diện chính xác với giá trị M-Score dương rất lớn.
  3. So sánh tương quan giữa các mô hình phân tích:
Tiêu chí Beneish M-Score (Nghiên cứu này) Altman Z-Score Dechow F-Score
Mục tiêu nhận diện Thao túng số liệu & gian lận kế toán Rủi ro vỡ nợ / Phá sản Hành vi kế toán dồn tích bất thường
Độ nhạy với ngành BĐS Rất cao (Đo lường trực tiếp 8 góc độ) Thấp (Bị nhiễu bởi cơ cấu nợ vay dự án) Trung bình
Khả năng dự báo trước kiểm toán Phát hiện trước khi công bố BCTC soát xét Chỉ phát hiện khi nợ xấu lộ diện Yêu cầu số liệu đầy đủ cả năm
Độ chính xác thực nghiệm Tương thích cao với độ lệch kiểm toán $\ge 5%$ 60 - 65% 68 - 72%

Ứng dụng thực tế và triển khai

Kịch bản ứng dụng thực tế

  • Kiểm toán viên độc lập: Sử dụng thuật toán M-Score làm thủ tục phân tích sơ bộ (Preliminary Analytical Procedures) ở giai đoạn lập kế hoạch kiểm toán (Planning Phase) theo chuẩn mực VSA 240, nhằm khoanh vùng các khoản mục rủi ro cao (Doanh thu dồn tích, Phải thu khách hàng, Chi phí trích trước).
  • Ngân hàng thương mại & Tổ chức tín dụng: Tích hợp M-Score vào hệ thống chấm điểm tín dụng tự động (Credit Scoring Engine) trước khi giải ngân các gói vay tài trợ dự án BĐS. Doanh nghiệp có $M > -1.78$ buộc phải chuyển sang quy trình thẩm định tài sản bảo đảm nghiêm ngặt.
  • Nhà đầu tư chứng khoán: Sàng lọc danh mục, loại bỏ các cổ phiếu BĐS có nguy cơ "thổi phồng" lợi nhuận ảo trước kỳ công bố BCTC kiểm toán.

Kiến trúc triển khai hệ thống (Microservices Architecture)

[Client Web / Mobile App]
[API Gateway (FastAPI / Nginx)]
[ETL Service (BCTC Parser)]   [Beneish Compute Worker]
       [PostgreSQL Database]
       [Alert & Dashboard Engine]

Phân tích chi phí - lợi ích (Cost-Benefit Analysis)

  • Chi phí phát triển & vận hành: Rất thấp nhờ sử dụng hoàn toàn mã nguồn mở (Python, PostgreSQL, Docker).
  • Lợi ích kinh tế: Giúp ngân hàng và quỹ đầu tư giảm thiểu hàng tỷ đồng nợ xấu hoặc tổn thất vốn do đầu tư vào các công ty bị xử phạt gian lận tài chính (điển hình như trường hợp FLC, TDH trong giai đoạn 2021–2022). Thời gian hoàn vốn đầu tư (ROI) đạt được ngay sau khi ngăn chặn thành công 01 khoản cấp tín dụng rủi ro cao.

Hạn chế và hướng phát triển

Dù đạt được kết quả phân loại ấn tượng, đề tài ghi nhận một số hạn chế kỹ thuật:

  1. Hạn chế dữ liệu cắt ngang (Cross-sectional Data): Dữ liệu mới chỉ thu thập trong phạm vi năm tài chính 2021 — giai đoạn thị trường BĐS chịu tác động kép từ dịch COVID-19 và các cơn sốt đất cục bộ, dẫn đến một số chỉ số tăng trưởng doanh thu (SGI) có biến động cực đoan.
  2. Mô hình tĩnh (Static Regression Weights): Trọng số của mô hình Beneish gốc dựa trên dữ liệu doanh nghiệp Mỹ, chưa được tái ước lượng (Re-estimated) bằng hồi quy Logistic riêng cho thị trường BĐS Việt Nam.

Hướng phát triển tiếp theo:

  • Ứng dụng kỹ thuật Machine Learning (Random Forest, XGBoost, LightGBM) kết hợp hồi quy Logistic để tối ưu hóa bộ trọng số mới phù hợp với chuẩn mực kế toán Việt Nam (VAS) và IFRS.
  • Tích hợp mô-đun NLP để tự động đọc và phân tích ý kiến kiểm toán (Audit Opinion), các đoạn nhấn mạnh và thuyết minh công nợ bên liên quan.

Đối tượng hưởng lợi

  • Sinh viên & Giảng viên khối ngành Kinh tế: Cung cấp ca nghiên cứu thực tế (Case Study) trực quan về rủi ro kế toán và ứng dụng toán định lượng trong kiểm toán tài chính.
  • Lập trình viên & Kỹ sư dữ liệu Fintech: Có sẵn bộ khung thuật toán, thiết kế CSDL và pipeline tính toán chỉ số tài chính phục vụ phát triển các module phân tích tự động.
  • Kiểm toán viên & Doanh nghiệp: Nâng cao hiệu suất kiểm soát nội bộ, giảm 30–40% thời gian rà soát thủ công các khoản mục không trọng yếu.
  • Nhà đầu tư & Ngân hàng thương mại: Giảm thiểu tối đa xác suất giải ngân nhầm vào các doanh nghiệp có chất lượng tài sản kém và lợi nhuận ảo.

Câu hỏi thường gặp

1. Yêu cầu kỹ thuật tối thiểu để triển khai hệ thống là gì?

Hệ thống yêu cầu máy chủ chạy hệ điều hành Linux (Ubuntu 20.04+), Python 3.10+, RAM tối thiểu 4GB và hệ quản trị CSDL PostgreSQL 14+. Hệ thống có thể đóng gói toàn bộ qua Docker Container để vận hành tự động.

2. Mô hình có gặp giới hạn khi xử lý các doanh nghiệp BĐS có doanh thu đột biến?

Có. Khi doanh nghiệp ghi nhận doanh thu đột biến từ bán sỉ dự án, chỉ số SGI (Sales Growth Index) tăng vọt sẽ kéo M-Score lên cao. Trong trường hợp này, hệ thống cần đối soát thêm chỉ số TATA (Dồn tích) và CFO (Dòng tiền kinh doanh) để đưa ra kết luận chính xác.

3. Tích hợp công cụ này vào phần mềm ERP của doanh nghiệp như thế nào?

Công cụ cung cấp RESTful API endpoint /api/v1/calculate-mscore. Hệ thống ERP chỉ cần gửi payload JSON chứa bảng Cân đối kế toán và Kết quả kinh doanh, API sẽ phản hồi điểm M-Score và cờ cảnh báo trong vòng dưới 200ms.

4. Chi phí bảo trì và vận hành hệ thống định kỳ ra sao?

Do thuật toán thuần túy là tính toán đại số ma trận trên dữ liệu số học, chi phí tính toán (Compute Cost) gần như bằng không. Chi phí duy trì chủ yếu nằm ở việc mua bản quyền API dữ liệu tài chính BCTC sạch từ các nhà cung cấp dữ liệu thị trường (như FiinGroup, Vietstock).

5. Khác biệt cốt lõi giữa M-Score và Z-Score là gì?

Altman Z-Score đo lường xác suất vỡ nợ (Khả năng thanh toán), trong khi Beneish M-Score đo lường xác suất gian lận và bóp méo số liệu kế toán (Tính trung thực của báo cáo). Một doanh nghiệp có thể có Z-Score rất tốt (chưa phá sản) nhưng M-Score lại cảnh báo gian lận nghiêm trọng để duy trì hình ảnh tài chính đẹp.


Kết luận

Đề tài đã ứng dụng thành công mô hình định lượng Beneish M-Score để phân tích và đánh giá toàn diện rủi ro gian lận BCTC trước kiểm toán trên 60 doanh nghiệp bất động sản niêm yết tại Việt Nam năm 2021. Kết quả thực nghiệm đã chỉ ra tỷ lệ đáng báo động với 60% (36/60) doanh nghiệp nằm trong nhóm có xác suất lớn chủ động thao túng báo cáo tài chính và lợi nhuận, phản ánh chính xác các sai lệch trọng yếu được điều chỉnh sau kiểm toán.

Nghiên cứu khẳng định giá trị thực tiễn vượt trội của các công cụ phân tích dữ liệu định lượng trong việc nâng cao tính minh bạch thị trường, bảo vệ quyền lợi hợp pháp của nhà đầu tư và hỗ trợ đắc lực cho các cơ quan thanh tra, kiểm toán độc lập trong kỷ nguyên chuyển đổi số ngành tài chính.