Giới thiệu dự án

Thị trường chứng khoán Việt Nam đã trải qua hơn hai thập kỷ phát triển với tốc độ tăng trưởng vốn hóa ấn tượng, đóng vai trò là kênh dẫn vốn trung và dài hạn huyết mạch của nền kinh tế. Theo định hướng phát triển của Chính phủ, mục tiêu tỷ lệ người dân tham gia thị trường đạt 5% - 8% dân số vào năm 2025 đặt ra bài toán cấp thiết về việc nâng cao năng lực định giá tài sản và quản trị rủi ro danh mục đầu tư. Đặc biệt, trong giai đoạn 2012 - 2022, thị trường chứng kiến sự chuyển dịch cấu trúc sâu sắc từ tiến trình cổ phần hóa hơn 600 doanh nghiệp nhà nước (SOEs) và sự bùng nổ của dòng vốn cá nhân trong đại dịch COVID-19 (quy mô vốn hóa toàn thị trường đạt 123% GDP vào cuối năm 2021).

Thực trạng này làm bộc lộ rõ các lỗ hổng của các mô hình định giá truyền thống:

  • Mô hình định giá tài sản vốn (CAPM - Capital Asset Pricing Model): Giả định chỉ có một nguồn rủi ro hệ thống duy nhất ($\beta$), không thể giải thích được các dị biệt thị trường (market anomalies) như hiệu ứng quy mô (size effect) hay hiệu ứng giá trị (value effect).
  • Mô hình Fama-French 3 nhân tố (1993): Dù bổ sung nhân tố Quy mô ($SMB$) và Giá trị ($HML$), mô hình vẫn bỏ sót các biến số cốt lõi về hiệu quả hoạt động kinh doanh và chiến lược phân bổ vốn đầu tư của doanh nghiệp niêm yết tại các thị trường cận biên/mới nổi.

Đề tài "Ứng dụng mô hình Fama-French 5 nhân tố đo lường tỷ suất sinh lời kỳ vọng từ thị trường chứng khoán Việt Nam" do tác giả Trần Đức Thành (Trường Đại học Ngân hàng TP.HCM) thực hiện dưới sự hướng dẫn của TS. Trần Anh Tuấn tập trung giải quyết triệt để bài toán định giá tài sản thực nghiệm.

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

  1. Xác định và đo lường tác động lượng hóa của 5 nhân tố: Rủi ro thị trường ($MER$), Quy mô vốn hóa ($SMB$), Giá trị sổ sách trên giá trị thị trường ($HML$), Lợi nhuận hoạt động ($RMW$), và Đầu tư mở rộng tài sản ($CMA$) lên tỷ suất sinh lời của cổ phiếu trên sàn HOSE và HNX.
  2. Kiểm định tính phù hợp và kiểm tra giả thuyết "nhân tố giá trị $HML$ có bị dư thừa hay không" trong bối cảnh thị trường chứng khoán Việt Nam giai đoạn 2012 - 2022.
  3. Ứng dụng kỹ thuật trực giao hóa (Orthogonalization) để triệt tiêu hiện tượng đa cộng tuyến, xây dựng giải pháp phân bổ danh mục đầu tư định lượng tối ưu.

Phạm vi và Dữ liệu: Nghiên cứu phân tích toàn bộ doanh nghiệp phi tài chính niêm yết trên HOSE và HNX giai đoạn 01/01/2012 – 31/12/2022, đáp ứng điều kiện tối thiểu 3 năm liên tiếp công bố báo cáo tài chính kiểm toán. Nhằm khắc phục hạn chế chuỗi thời gian ngắn tại Việt Nam (chỉ có ~160 quan sát nếu tính theo tháng), đề tài tiên phong xử lý dữ liệu theo tần suất 522 tuần quan sát, tiệm cận tiêu chuẩn thống kê quốc tế.


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

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

Tiêu chí Mô hình CAPM (Sharpe, 1964) Mô hình Fama-French 3 nhân tố (1993) Mô hình Fama-French 5 nhân tố (2015)
Nhân tố rủi ro 1 nhân tố: Rủi ro thị trường ($R_m - R_f$) 3 nhân tố: $R_m - R_f$, $SMB$, $HML$ 5 nhân tố: $R_m - R_f$, $SMB$, $HML$, $RMW$, $CMA$
Khả năng giải thích ($Adj. R^2$) Thấp ($\approx 40% - 45%$) Trung bình ($\approx 50% - 65%$) Rất cao ($\approx 65% - 85%$)
Đánh giá rủi ro nội tại Bỏ qua hoàn toàn cấu trúc tài chính Chỉ đo lường quy mô và giá trị sổ sách Đánh giá toàn diện cả khả năng sinh lời và chính sách tái đầu tư
Kiểm định GRS ($p$-value) Thường xuyên bị bác bỏ ($GRS > 2$) Cải thiện nhưng chưa tối ưu Thống kê $GRS$ tiệm cận 0, số lần bác bỏ thấp nhất

Bảng ưu tiên yêu cầu hệ thống (MoSCoW):

  • Must-have: Module trích xuất và lọc dữ liệu báo cáo tài chính/giá đóng cửa; thuật toán chia tách danh mục $2 \times 3$, $2 \times 2$, $2 \times 2 \times 2 \times 2$; thuật toán hồi quy OLS đa biến; module kiểm định GRS (Gibbons, Ross & Shanken, 1989).
  • Should-have: Thuật toán trực giao hóa nhân tố (Gram-Schmidt Orthogonalization) để loại bỏ đa cộng tuyến; ma trận tương quan giữa các nhân tố.
  • Could-have: Xây dựng ma trận 25 danh mục ($5 \times 5$) và 32 danh mục ($2 \times 4 \times 4$) phục vụ so sánh độ nhạy.
  • Won't-have (giai đoạn này): Tích hợp giao dịch tự động tần suất cao (High-Frequency Trading) và mở rộng cho nhóm cổ phiếu UPCoM.

Thiết kế hệ thống

Kiến trúc xử lý dữ liệu định lượng được tổ chức theo đường ống dẫn (pipeline) khép kín, đảm bảo tính tái lập (reproducibility) trong kinh tế lượng tài chính:

Technology Stack và Môi trường thực thi:

  • Ngôn ngữ: Python 3.10.12
  • Thư viện tính toán & dữ liệu: pandas (v2.1.4), numpy (v1.26.2)
  • Thư viện kinh tế lượng: statsmodels (v0.14.0), scipy (v1.11.4)
  • Nguồn dữ liệu chuyên sâu: Hệ thống FiinPro-X Terminal API, thư viện vnstock3 (v0.2.2), dữ liệu Trái phiếu Chính phủ kỳ hạn 1 năm từ Ngân hàng Nhà nước/Kho bạc Nhà nước.

Cấu trúc lược đồ dữ liệu (Data Schema):

  • Financial_Daily: [Ticker (String), Date (Datetime), Close_Price (Float), Shares_Outstanding (Int64), Market_Cap (Float)]
  • Financial_Annual: [Ticker (String), Year (Int), Total_Assets (Float), Total_Equity (Float), Operating_Profit (Float)]
  • Factor_Weekly: [Week_Index (Int), Date (Datetime), Rf (Float), Rm (Float), MER (Float), SMB (Float), HML (Float), RMW (Float), CMA (Float)]

Methodology

Quy trình nghiên cứu áp dụng khung phân tích thực nghiệm chuẩn của Fama & French (2015), được tinh chỉnh phù hợp với thị trường Việt Nam:

  1. Lọc dữ liệu: Loại bỏ các mã cổ phiếu bị hủy niêm yết giữa chừng hoặc thiếu dữ liệu tài chính 3 năm liên tiếp; xử lý giá trị ngoại lai (outliers) bằng kỹ thuật Winsorization tại ngưỡng 1% và 99%.
  2. Xác định tỷ suất sinh lời vượt trội ($MER$): Lấy tỷ suất sinh lời bình quân tuần của VN-Index trừ đi lãi suất trái phiếu chính phủ kỳ hạn 1 năm ($R_f$).
  3. Phân loại danh mục đa chiều:
    • Quy mô ($Size$): Phân vị trung vị 50% (Small - $S$, Big - $B$).
    • Giá trị ($B/M$): Tỷ lệ 30% thấp ($L$), 40% trung bình ($N$), 30% cao ($H$).
    • Khả năng sinh lời ($OP$): Tỷ lệ 30% yếu ($W$), 40% trung bình ($N$), 30% mạnh ($R$).
    • Đầu tư mở rộng ($INV$): Tỷ lệ 30% thận trọng ($C$), 40% trung bình ($N$), 30% tích cực ($A$).
  4. Kiểm soát rủi ro mô hình: Xử lý hiện tượng tự tương quan và phương sai sai số thay đổi bằng phương pháp ước lượng sai số chuẩn vững Newey-West HAC.

Implementation và kết quả

Development process

Trọng tâm triển khai kỹ thuật nằm ở thuật toán tính toán 5 nhân tố và module trực giao hóa nhằm triệt tiêu tương quan giữa các biến giải thích.

import numpy as np
import pandas as pd
import statsmodels.api as sm

def calculate_fama_french_factors(df_stocks):
    """
    Tính toán 5 nhân tố Fama-French theo phương pháp 2x3.
    df_stocks chứa: Return, Size_Group, BM_Group, OP_Group, INV_Group
    """
    # 1. Nhân tố Quy mô (SMB)
    smb_bm = (df_stocks.query("Size_Group == 'S'")['Return'].mean() - 
              df_stocks.query("Size_Group == 'B'")['Return'].mean())
    
    # 2. Nhân tố Giá trị (HML)
    hml = 0.5 * (df_stocks.query("Size_Group == 'S' & BM_Group == 'H'")['Return'].mean() +
                 df_stocks.query("Size_Group == 'B' & BM_Group == 'H'")['Return'].mean()) - \
          0.5 * (df_stocks.query("Size_Group == 'S' & BM_Group == 'L'")['Return'].mean() +
                 df_stocks.query("Size_Group == 'B' & BM_Group == 'L'")['Return'].mean())
          
    # 3. Nhân tố Lợi nhuận (RMW)
    rmw = 0.5 * (df_stocks.query("Size_Group == 'S' & OP_Group == 'R'")['Return'].mean() +
                 df_stocks.query("Size_Group == 'B' & OP_Group == 'R'")['Return'].mean()) - \
          0.5 * (df_stocks.query("Size_Group == 'S' & OP_Group == 'W'")['Return'].mean() +
                 df_stocks.query("Size_Group == 'B' & OP_Group == 'W'")['Return'].mean())
          
    # 4. Nhân tố Đầu tư (CMA)
    cma = 0.5 * (df_stocks.query("Size_Group == 'S' & INV_Group == 'C'")['Return'].mean() +
                 df_stocks.query("Size_Group == 'B' & INV_Group == 'C'")['Return'].mean()) - \
          0.5 * (df_stocks.query("Size_Group == 'S' & INV_Group == 'A'")['Return'].mean() +
                 df_stocks.query("Size_Group == 'B' & INV_Group == 'A'")['Return'].mean())
          
    return smb_bm, hml, rmw, cma

def orthogonalize_factors(mer, smb, hml, rmw, cma):
    """
    Trực giao hóa tuần tự các nhân tố để loại bỏ hiện tượng đa cộng tuyến.
    Phương pháp: Lấy hệ số chặn + phần dư từ các hồi quy tuần tự.
    """
    # SMBO = intercept + residual(SMB ~ MER)
    model_smb = sm.OLS(smb, sm.add_constant(mer)).fit()
    smbo = model_smb.params.iloc[0] + model_smb.resid

    # HMLO = intercept + residual(HML ~ MER + SMBO)
    X_hml = pd.DataFrame({'MER': mer, 'SMBO': smbo})
    model_hml = sm.OLS(hml, sm.add_constant(X_hml)).fit()
    hmlo = model_hml.params.iloc[0] + model_hml.resid

    # RMWO = intercept + residual(RMW ~ MER + SMBO + HMLO)
    X_rmw = pd.DataFrame({'MER': mer, 'SMBO': smbo, 'HMLO': hmlo})
    model_rmw = sm.OLS(rmw, sm.add_constant(X_rmw)).fit()
    rmwo = model_rmw.params.iloc[0] + model_rmw.resid

    # CMAO = intercept + residual(CMA ~ MER + SMBO + HMLO + RMWO)
    X_cma = pd.DataFrame({'MER': mer, 'SMBO': smbo, 'HMLO': hmlo, 'RMWO': rmwo})
    model_cma = sm.OLS(cma, sm.add_constant(X_cma)).fit()
    cmao = model_cma.params.iloc[0] + model_cma.resid

    return smbo, hmlo, rmwo, cmao

Mô hình hồi quy 5 nhân tố trực giao hoàn chỉnh: $$R_{it} - R_{ft} = a_i + b_i (R_{mt} - R_{ft}) + s_i SMBO_t + h_i HMLO_t + r_i RMWO_t + c_i CMAO_t + e_{it}$$

Testing và validation

Hiệu năng của các mô hình được kiểm định nghiêm ngặt trên 6 tập danh mục thử nghiệm: 3 tập 25 danh mục ($5 \times 5$ Size-OP, Size-B/M, Size-INV) và 3 tập 32 danh mục ($2 \times 4 \times 4$ Size-OP-INV, Size-B/M-INV, Size-B/M-OP).

Kết quả kiểm định mức độ phù hợp mô hình (Phương pháp 2x3):

Mô hình kiểm định Tập 25 danh mục Size-OP ($GRS$ / $Adj. R^2$) Tập 25 danh mục Size-B/M ($GRS$ / $Adj. R^2$) Tập 25 danh mục Size-INV ($GRS$ / $Adj. R^2$)
CAPM 2.62 / 0.44 1.62 / 0.48 1.67 / 0.51
FF 3 Nhân tố ($MER, SMB, HML$) 0.89 / 0.62 0.74 / 0.68 0.79 / 0.70
FF 5 Nhân tố Gốc 0.42 / 0.73 0.38 / 0.77 0.31 / 0.82
FF 5 Nhân tố Trực Giao (Orthogonal) 0.29 / 0.79 0.24 / 0.83 0.19 / 0.86

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

  1. Hiệu năng giải thích vượt trội: Mô hình Fama-French 5 nhân tố trực giao đạt hệ số $Adj. R^2$ trung bình từ 79% đến 86% trên các danh mục, vượt trội hoàn toàn so với CAPM (44% - 51%) và mô hình 3 nhân tố (62% - 70%).
  2. Khẳng định tính độc lập của nhân tố Giá trị ($HML$): Khác biệt hoàn toàn với kết luận của Eugene Fama và Kenneth French (2015) trên thị trường Mỹ (cho rằng $HML$ trở nên thừa thãi khi có $RMW$ và $CMA$), tại thị trường Việt Nam, khi dùng 4 nhân tố còn lại để giải thích $HML$, hệ số $Adj. R^2$ chỉ đạt mức 56% - 67% (dưới ngưỡng 70%). Điều này chứng minh $HML$ chứa đựng thông tin định giá rủi ro riêng biệt mà các nhân tố khác không thể thay thế.
  3. Đặc tính nhân tố Đầu tư ($CMA$): Nhân tố $CMA$ có mức ý nghĩa giải thích đơn lẻ tương đối thấp ($Adj. R^2 \approx 24% - 31%$), tuy nhiên khi được trực giao hóa ($CMAO$), nó giúp ổn định phần dư và giảm sai số chặn $A|a_i|$ tiệm cận mức 0.

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

  • Đổi mới về phương pháp phân tích chuỗi thời gian: Chuyển đổi toàn diện khung phân tích sang tần suất 522 tuần quan sát thay vì khung tháng truyền thống, giải quyết triệt để vấn đề thiếu hụt cỡ mẫu lớn (Large Sample Properties) trong nghiên cứu tài chính thực nghiệm tại các thị trường chứng khoán mới nổi.
  • Xử lý triệt để hiện tượng Đa cộng tuyến: Ứng dụng kỹ thuật chuỗi hồi quy phần dư trực giao hóa (Orthogonalization), triệt tiêu sự phụ thuộc tuyến tính giữa các chỉ tiêu báo cáo tài chính vốn có độ tương quan tự nhiên cao ($Corr(SMB, HML) > 0.7$).
  • Đóng góp học thuật thực chứng: Cung cấp bằng chứng thực nghiệm rõ ràng phản biện lại giả định "loại bỏ $HML$" của mô hình Fama-French gốc khi áp dụng vào cấu trúc thị trường cận biên/mới nổi.

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

Trường hợp sử dụng thực tế (Use Cases)

  • Xây dựng quỹ đầu tư chỉ số thông minh (Smart Beta / Factor ETF): Các công ty quản lý quỹ có thể thiết lập các chiến lược phân bổ tài sản tập trung vào nhóm cổ phiếu vốn hóa nhỏ có lợi nhuận hoạt động mạnh ($S-R$) và giá trị sổ sách cao ($S-H$), mang lại tỷ suất sinh lời vượt trội so với chỉ số chung.
  • Định giá chi phí sử dụng vốn chủ sở hữu (Cost of Equity): Doanh nghiệp và tổ chức tư vấn tài chính có thể áp dụng mô hình 5 nhân tố để xác định tỷ suất sinh lời kỳ vọng chính xác hơn trong các thương vụ M&A và thẩm định dự án đầu tư.
  • Quản trị rủi ro danh mục (Multi-factor Risk Attribution): Giúp nhà quản lý danh mục đo lường chính xác danh mục đang chịu phơi nhiễm (exposure) với rủi ro quy mô, rủi ro đòn bẩy hay rủi ro đầu tư quá mức.

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

  • Hạn chế kỹ thuật: Mô hình nghiên cứu trên tập dữ liệu giai đoạn 2012 - 2022 chưa tính đến chi phí giao dịch thực tế (Transaction Costs) và độ trượt giá (Slippage) khi tái cân bằng danh mục theo tuần; chưa bao phủ các cổ phiếu trên sàn UPCoM.
  • Hướng phát triển:
    • Tích hợp thêm nhân tố Động lượng (Momentum Factor - $WML$) để phát triển mô hình Fama-French 6 nhân tố.
    • Ứng dụng các thuật toán học máy (Machine Learning) như ElasticNet, Random Forest và LSTM để dự báo tỷ suất sinh lời phi tuyến tính dựa trên các nhân tố đã được trực giao hóa.

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

  • Sinh viên & Học viên cao học: Tiếp cận phương pháp luận kinh tế lượng tài chính chuẩn mực, hiểu rõ quy trình thu thập và xử lý dữ liệu thực nghiệm quy mô lớn bằng Python.
  • Nhà phân tích định lượng (Quants) & Lập trình viên Fintech: Sở hữu mã nguồn thuật toán phân loại danh mục, kỹ thuật trực giao hóa nhân tố có thể tích hợp trực tiếp vào các hệ thống giao dịch tự động.
  • Công ty Quản lý Quỹ & Doanh nghiệp: Có công cụ lượng hóa rủi ro khoa học, tối ưu hóa danh mục đầu tư và xác định chi phí vốn chuẩn xác.
  • Giới nghiên cứu học thuật: Cung cấp nguồn tài liệu tham khảo thực nghiệm giá trị cao về cấu trúc thị trường chứng khoán Việt Nam trong giai đoạn 10 năm chuyển biến mạnh mẽ.

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

1. Yêu cầu kỹ thuật phần cứng và phần mềm để triển khai mô hình là gì?

Hệ thống yêu cầu môi trường Python 3.10 trở lên với tối thiểu 8GB RAM để xử lý tập dữ liệu 522 tuần của toàn bộ cổ phiếu niêm yết. Các thư viện bắt buộc bao gồm pandas, numpy, statsmodelsscipy. Dữ liệu đầu vào cần kết nối qua API của FiinPro-X hoặc các thư viện trích xuất dữ liệu tài chính tin cậy.

2. Giới hạn quy mô (Scalability) của mô hình khi mở rộng số lượng cổ phiếu?

Mô hình có độ phức tạp tính toán $O(N \log N)$ cho khâu sắp xếp danh mục phân vị và $O(K^2 \cdot T)$ cho khâu hồi quy OLS đa biến (với $N$ là số lượng cổ phiếu, $K=5$ là số nhân tố, $T=522$ là số tuần). Hệ thống có khả năng mở rộng mượt mà khi bổ sung toàn bộ cổ phiếu UPCoM mà không gặp nghẽn cổ chai về bộ nhớ.

3. Làm thế nào để tích hợp mô hình vào hệ thống phân tích hiện hữu?

Mô hình có thể đóng gói thành một RESTful API microservice bằng FastAPI. Hàng tuần, sau khi đóng phiên giao dịch thứ Sáu, hệ thống tự động kích hoạt pipeline: lấy dữ liệu giá, tính toán 5 nhân tố, thực hiện trực giao hóa và trả về ma trận hệ số beta rủi ro ($b_i, s_i, h_i, r_i, c_i$) cho từng cổ phiếu qua JSON endpoint.

4. Chi phí vận hành và nhu cầu bảo trì hệ thống như thế nào?

Chi phí chính đến từ việc duy trì gói thuê bao dữ liệu tài chính chuyên nghiệp (như FiinPro-X). Module tính toán mã nguồn mở Python không phát sinh phí bản quyền phần mềm. Việc bảo trì định kỳ chỉ bao gồm cập nhật danh sách phân loại ngành và rà soát báo cáo tài chính kiểm toán sau mỗi mùa công bố thông tin quý/năm.

5. Tại sao nhân tố Giá trị ($HML$) không bị loại bỏ tại thị trường Việt Nam?

Tại các thị trường phát triển như Mỹ, thông tin tài chính được phản ánh rất nhanh vào giá khiến $HML$ bị hấp thụ bởi $RMW$ và $CMA$. Tuy nhiên, tại thị trường cận biên/mới nổi như Việt Nam với tỷ trọng giao dịch của nhà đầu tư cá nhân chiếm hơn 80%, tâm lý bầy đàn và tính bất cân xứng thông tin cao khiến thị giá thường xuyên lệch xa giá trị sổ sách trong thời gian dài. Do đó, $HML$ vẫn đóng vai trò là một thước đo bù đắp rủi ro độc lập không thể thay thế.


Kết luận

Khóa luận tốt nghiệp của tác giả Trần Đức Thành đã chứng minh tính ưu việt vượt bậc của Mô hình Fama-French 5 nhân tố trực giao trong việc giải thích tỷ suất sinh lời kỳ vọng trên thị trường chứng khoán Việt Nam giai đoạn 2012 - 2022 ($Adj. R^2$ đạt tới 86%, kiểm định $GRS$ tiệm cận 0). Công trình không chỉ cung cấp đóng góp quan trọng về mặt học thuật khi làm sáng tỏ vai trò không thể thay thế của nhân tố giá trị ($HML$), mà còn mở ra giải pháp phân bổ danh mục đầu tư định lượng hiệu quả cho các nhà quản lý quỹ và nhà đầu tư cá nhân trên hành trình chuyên nghiệp hóa thị trường tài chính Việt Nam.