Bối cảnh và vấn đề nghiên cứu

Thị trường chứng khoán đóng vai trò là kênh huy động và phân bổ nguồn vốn trung, dài hạn thiết yếu cho nền kinh tế. Tại Việt Nam, sau hơn 24 năm hình thành và phát triển kể từ phiên giao dịch đầu tiên tại Trung tâm Giao dịch Chứng khoán Thành phố Hồ Chí Minh (nay là Sở Giao dịch Chứng khoán TP.HCM - HOSE) vào ngày 28/07/2000, quy mô thị trường đã có sự tăng trưởng đáng kể:

  • Tổng vốn huy động năm 2023 đạt 418.271 tỷ đồng (tăng 33,5% so với năm trước); giai đoạn 2011 đến tháng 4/2024 huy động khoảng 1,8 triệu tỷ đồng (đóng góp bình quân 20,5% tổng vốn đầu tư toàn xã hội), nâng tổng vốn lũy kế từ khi thành lập lên khoảng 2,7 triệu tỷ đồng.
  • Vốn hóa thị trường cổ phiếu tính đến cuối tháng 3/2024 ước đạt gần 6,7 triệu tỷ đồng (tăng 12,2% so với cuối năm 2023), tương đương khoảng 92% GDP vào tháng 4/2024.
  • Thị trường trái phiếu niêm yết đạt hơn 2.040 nghìn tỷ đồng vào cuối tháng 2/2024 (tăng 17,1% so với cuối 2023).
  • Chỉ số VN-Index cuối tháng 3/2024 đạt 1.286,11 điểm (tăng 13,8% so với cuối 2023); giá trị giao dịch bình quân quý 1/2024 đạt 22.529 tỷ đồng/phiên (tăng 28,2% so với bình quân năm 2023).

Biến động giá cổ phiếu phản ánh sự luân chuyển dòng tiền và chịu tác động của nhiều yếu tố vĩ mô phức tạp, mang tính phi tuyến và nhiễu cao. Việc dự báo giá đóng cửa hàng ngày trở thành bài toán cấp thiết nhằm hỗ trợ các nhà đầu tư, nhà quản lý doanh nghiệp và tổ chức tín dụng kiểm soát rủi ro. Trước thực tế đó, tác giả Nguyễn Thu Huyền (ngành Phân tích Dữ liệu Kinh doanh - Business Data Analytics, Trường Quốc tế - Đại học Quốc gia Hà Nội) đã thực hiện đề tài tốt nghiệp: "Applying Machine Learning Algorithms for Stock Price Forecasting" dưới sự hướng dẫn của TS. Nguyễn Doãn Đồng.

Mục tiêu và nhiệm vụ nghiên cứu của đề tài gồm:

  1. Nghiên cứu cơ sở lý thuyết về thị trường chứng khoán, các thuật toán học máy (Machine Learning - ML) và học sâu (Deep Learning - DL) ứng dụng trong dự báo chuỗi thời gian tài chính.
  2. Thu thập dữ liệu lịch sử giao dịch từ Yahoo Finance đối với nhóm 4 ngân hàng thương mại lớn tại Việt Nam (Vietinbank - CTG, BIDV - BID, Vietcombank - VCB, Techcombank - TCB).
  3. Thực hiện tiền xử lý dữ liệu, chuẩn hóa chuỗi thời gian và trích xuất đặc trưng phục vụ huấn luyện mô hình.
  4. Đề xuất kiến trúc học sâu Transformer chuyên biệt cho chuỗi thời gian gồm 3 tầng mã hóa (encoder layers), kết hợp cơ chế chú ý đa đầu (Multi-Head Attention).
  5. Huấn luyện, đánh giá và so sánh thực nghiệm mô hình đề xuất với 4 mô hình tham chiếu: Mạng nơ-ron nhân tạo (ANN), Hồi quy vector hỗ trợ (SVR), Rừng ngẫu nhiên (Random Forest), và Mạng bộ nhớ dài-ngắn (LSTM).
  6. Xây dựng ứng dụng web trực quan hóa dữ liệu và dự báo giá cổ phiếu nhằm hỗ trợ người dùng cuối.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Dữ liệu chuỗi thời gian giá cổ phiếu (giá mở cửa, cao nhất, thấp nhất, đóng cửa) của các ngân hàng thương mại lớn tại Việt Nam thu thập từ Yahoo Finance.
  • Phạm vi nghiên cứu: Kỹ thuật học máy và học sâu giám sát ứng dụng trên tập dữ liệu lịch sử giao dịch khoảng 10 năm với quy mô từ 2.000 đến 5.000 mẫu cho mỗi mã cổ phiếu.

Cơ sở lý thuyết và phương pháp

Khung lý thuyết và mô hình tiếp cận

Khóa luận hệ thống hóa các khái niệm nền tảng về thị trường tài chính và cấu trúc chứng khoán:

  • Phân loại công cụ tài chính: Cổ phiếu (cổ phiếu phổ thông, cổ phiếu ưu đãi biểu quyết, cổ phiếu ưu đãi cổ tức), trái phiếu (trái phiếu vô danh, trái phiếu ghi danh, trái phiếu chính phủ, trái phiếu công trình, trái phiếu doanh nghiệp) và chứng chỉ quỹ đầu tư (quỹ mở, quỹ đóng, quỹ cổ phiếu, quỹ trái phiếu, quỹ hỗn hợp).
  • Phân loại thị trường: Thị trường sơ cấp (phát hành riêng lẻ, phát hành ra công chúng) và thứ cấp; thị trường tập trung (Sở giao dịch) và phi tập trung (OTC); thị trường giao ngay (Spot market) và thị trường tương lai (Futures market).
  • Các thuật toán học máy và học sâu:
    • Mô hình truyền thống và học máy: ARIMA, Artificial Neural Networks (ANN), Support Vector Regression (SVR), Random Forest.
    • Mạng nơ-ron hồi quy (RNN) & LSTM: Giải quyết vấn đề phụ thuộc thời gian. Khóa luận phân tích hạn chế triệt tiêu đạo hàm (vanishing gradient) của RNN truyền thống và trình bày cơ chế đóng/mở thông tin của tế bào LSTM thông qua 3 cổng: cổng quên ($f_t$), cổng vào ($i_t$), và cổng ra ($o_t$).
    • Kiến trúc Transformer (Vaswani et al., 2017): Mô hình dựa hoàn toàn trên cơ chế tự chú ý (Self-Attention) loại bỏ sự phụ thuộc vào các bước đệ quy tuần tự của RNN/CNN, cho phép nắm bắt phụ thuộc dài hạn và xử lý song song hiệu quả.

Phương pháp nghiên cứu

Khóa luận kết hợp đồng bộ ba nhóm phương pháp:

  • Phương pháp nghiên cứu lý thuyết: Tổng hợp, phân tích tài liệu chuyên khảo về chứng khoán, giải thuật học máy và học sâu ứng dụng trên dữ liệu chuỗi thời gian.
  • Phương pháp thực nghiệm: Thiết kế quy trình xử lý dữ liệu, cài đặt mã nguồn mô hình mạng nơ-ron, cấu hình siêu tham số và tối ưu hóa hàm mất mát.
  • Phương pháp so sánh, đánh giá: Sử dụng các chỉ số thống kê toán học chuẩn hóa để so sánh độ chính xác giữa các thuật toán trên cùng một tập kiểm thử.

Nguồn dữ liệu và quy trình tiền xử lý

Dữ liệu được thu thập trực tiếp từ cổng thông tin tài chính Yahoo Finance. Quy trình tiền xử lý dữ liệu chuỗi thời gian được thực hiện qua 4 bước:

Bước thực hiện Thao tác kỹ thuật Mục đích
1. Chuyển đổi định dạng thời gian Chuyển chuỗi ngày tháng sang định dạng Datetime ${d_1, d_2, \dots, d_n}$. Chuẩn hóa cấu trúc dữ liệu theo chỉ mục thời gian.
2. Sắp xếp thứ tự thời gian Thực hiện hàm sắp xếp $M_{sorted} = Sort(M, by\ d_i)$. Bảo toàn tính tuần tự nhân quả của chuỗi thời gian.
3. Xử lý ngày giao dịch bị khuyết Tái lập chỉ mục chuỗi ngày liên tục ($R = {d_1, d_2, \dots, d_m}$) và điền khuyết bằng phương pháp Forward Fill (ffill). Khắc phục khoảng trống dữ liệu do ngày nghỉ cuối tuần và ngày lễ.
4. Chuẩn hóa đặc trưng số Áp dụng công thức chuẩn hóa Z-score: $z = \frac{x - \mu}{\sigma}$ (với $\mu$ là giá trị trung bình, $\sigma$ là độ lệch chuẩn). Đưa dữ liệu về phân phối chuẩn (trung bình bằng 0, độ lệch chuẩn bằng 1), giúp quá trình hội tụ gradient ổn định.

Quy mô tập dữ liệu thực nghiệm:

  • Cổ phiếu CTG (Vietinbank): khoảng 10 năm giao dịch, quy mô 5.000 mẫu.
  • Cổ phiếu BID (BIDV): quy mô 2.000 mẫu.
  • Cổ phiếu VCB (Vietcombank): quy mô 2.000 mẫu.
  • Cổ phiếu TCB (Techcombank): quy mô 2.000 mẫu.

Thiết kế và triển khai hệ thống

Kiến trúc mô hình Transformer đề xuất

Mô hình học sâu giám sát được đề xuất sử dụng cấu trúc xếp chồng 3 tầng mã hóa (Stacked 3 Encoder Layers) với 3 đầu chú ý (3 Attention Heads). Mỗi tầng Encoder bao gồm các khối chức năng:

  1. Chuẩn hóa tầng (Layer Normalization): Đặt ở đầu mỗi khối encoder nhằm giảm hiện tượng dịch chuyển biến đồng thời nội bộ (internal covariate shift): $$\text{LayerNorm}(x) = \frac{x - \mu}{\sqrt{\sigma^2 + \epsilon}}$$
  2. Cơ chế chú ý đa đầu (Multi-Head Attention): Sử dụng cơ chế chú ý tích vô hướng có tỷ lệ (Scaled Dot-Product Attention) trên các không gian chiếu của ma trận truy vấn (Query - $Q$), khóa (Key - $K$), và giá trị (Value - $V$): $$\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V$$
  3. Dropout: Loại bỏ ngẫu nhiên một tỷ lệ nơ-ron trong quá trình huấn luyện nhằm giảm hiện tượng quá khớp (overfitting), được áp dụng kép ở cả bước Attention và mạng cấp tiến (FFN).
  4. Kết nối phần dư (Residual Connections): Cộng đầu vào trực tiếp vào đầu ra của khối xử lý để bảo toàn dòng gradient và chống suy biến mạng sâu: $$\text{Output} = \text{Input} + \text{Sublayer}(\text{Input})$$
  5. Mạng cấp tiến (Feed Forward Network - FFN): Gồm hai phép biến đổi tuyến tính qua tầng Dense kết hợp hàm kích hoạt phi tuyến ReLU: $$\text{FFN}(x) = \max(0, xW_1 + b_1)W_2 + b_2$$

Cấu hình huấn luyện mô hình

  • Bộ tối ưu hóa (Optimizer): Thuật toán Adam.
  • Lịch trình điều chỉnh tốc độ học: Phân rã theo hàm mũ (Exponential Decay) giúp tốc độ học giảm dần theo thời gian huấn luyện: $$\text{LR}(t) = \text{Initial_LR} \times \text{Decay_Rate}^{\frac{\text{Step}}{\text{Decay_Steps}}}$$
  • Hàm mất mát: Sai số bình phương trung bình (Mean Squared Error - MSE): $$\text{MSE} = \frac{1}{N} \sum_{i=1}^N (y_i - \hat{y}_i)^2$$
  • Tham số thực nghiệm: Số epoch = 100, kích thước lô (batch size) = 32.

Ứng dụng Web trực quan hóa kết quả

Khóa luận xây dựng giao diện ứng dụng web hỗ trợ trực quan hóa quá trình dự báo với các chức năng chính:

  • Module Huấn luyện mô hình ("Model training"): Tải dữ liệu, tiền xử lý và chạy huấn luyện mô hình học sâu.
  • Module Đánh giá mô hình ("Model Evaluation"): Hiển thị biểu đồ giá thực tế so với giá dự báo và xuất các chỉ số định lượng ($R^2$, RMSE, MAE, MAPE).
  • Module Dự đoán ("Prediction"): Cho phép người dùng lựa chọn 1 trong 5 thuật toán (ANN, SVR, Random Forest, LSTM, Transformer) trên 4 mã cổ phiếu ngân hàng (CTG, BID, VCB, TCB) để đưa ra dự báo giá đóng cửa tiếp theo.

Nội dung chính theo từng chương

Chương 1: Giới thiệu tổng quan và cơ sở đề tài

Chương 1 trình bày tính cấp thiết của bài toán dự báo chứng khoán trong bối cảnh phát triển thị trường tài chính Việt Nam. Chương này xác định rõ mục tiêu nghiên cứu, đối tượng, phạm vi khảo sát nhóm 4 ngân hàng thương mại, các phương pháp nghiên cứu lý thuyết - thực nghiệm, ý nghĩa khoa học và thực tiễn của đề tài, cùng bố cục tổng thể của khóa luận.

Chương 2: Cơ sở lý thuyết về thị trường chứng khoán và học sâu

Nội dung chương tập trung làm rõ:

  • Bản chất kinh tế của chứng khoán, vai trò điều tiết vốn và phân loại thị trường (sơ cấp, thứ cấp, tập trung, phi tập trung, giao ngay, tương lai).
  • Tổng quan các kỹ thuật học máy và học sâu: phân loại học có giám sát/không giám sát, mạng nơ-ron truyền thẳng (ANN/MLP), hồi quy vector hỗ trợ (SVR), rừng ngẫu nhiên (Random Forest).
  • Phân tích chi tiết mạng hồi quy RNN, hiện tượng triệt tiêu gradient trên chuỗi dài, cấu trúc tế bào nhớ LSTM (cổng quên, cổng vào, cổng ra).
  • Kiến trúc Transformer chuẩn (Vaswani et al., 2017), nguyên lý hoạt động của cơ chế tự chú ý (Self-Attention), cơ chế chú ý đa đầu và các ứng dụng tiền đề trong dự báo chuỗi thời gian.
  • Tổng quan các hướng tiếp cận dự báo giá cổ phiếu trước đây (kết hợp ARIMA-SVM, Wavelet-SVM, Wavelet-ANN, CNN, mạng đối nghịch GAN kết hợp LSTM/BiLSTM).

Chương 3: Phương pháp nghiên cứu và mô hình đề xuất

Chương 3 mô tả chi tiết thiết kế hệ thống và mô hình thực nghiệm:

  • Đề xuất kiến trúc Transformer 3 tầng Encoder chuyên biệt cho bài toán dự báo chuỗi thời gian giá cổ phiếu, phân tích vai trò của từng thành phần (LayerNorm, Multi-Head Attention với 3 đầu chú ý, Dropout, Residual Connection, 2 tầng Dense kích hoạt ReLU).
  • Thiết lập toán học cho bộ lập lịch tốc độ học phân rã mũ (Exponential Decay) và bộ tối ưu Adam với hàm mất mát MSE.
  • Quy trình 4 bước thu thập và tiền xử lý dữ liệu từ Yahoo Finance (chuyển đổi Datetime, sắp xếp thời gian, tái lập chỉ mục và Forward Fill ngày khuyết, chuẩn hóa dữ liệu Z-score).
  • Đặc tả thiết kế và các chức năng của ứng dụng web trực quan hóa dự báo.

Chương 4 & 5: Thực nghiệm, đánh giá kết quả và kết luận

(Được phản ánh qua danh mục bảng biểu và hình vẽ của khóa luận)

  • Báo cáo dữ liệu thực nghiệm trên 4 bộ dữ liệu cổ phiếu ngân hàng: CTG (5.000 mẫu), BID (2.000 mẫu), VCB (2.000 mẫu), TCB (2.000 mẫu).
  • Trình bày kết quả đánh giá chi tiết trên 5 mô hình: ANN, SVR, Random Forest, LSTM và Transformer 3 tầng Encoder thông qua các biểu đồ so sánh đường giá và bảng tổng hợp 4 chỉ số đo lường.
  • Trình diễn giao diện và chức năng của ứng dụng web thực tế trên ví dụ cổ phiếu CTG (Vietinbank).

Kết quả và đóng góp

Tiêu chí và kết quả đánh giá thực nghiệm

Khóa luận sử dụng 4 chỉ số thống kê tiêu chuẩn để đo lường độ chính xác của các mô hình dự báo:

Chỉ số đo lường Công thức toán học Ý nghĩa đánh giá
Hệ số xác định ($R^2$) $R^2 = 1 - \frac{\sum (y_i - \hat{y}_i)^2}{\sum (y_i - \bar{y})^2}$ Thể hiện mức độ giải thích của mô hình đối với biến phụ thuộc ($0 \le R^2 \le 1$, càng gần 1 càng chính xác).
Sai số tuyệt đối trung bình (MAE) $\text{MAE} = \frac{1}{N} \sum_{i=1}^N |y_i - \hat{y}_i|$ Đo lường độ lệch tuyệt đối trung bình giữa giá dự báo và giá thực tế.
Căn bậc hai sai số bình phương trung bình (RMSE) $\text{RMSE} = \sqrt{\frac{1}{N} \sum_{i=1}^N (y_i - \hat{y}_i)^2}$ Phạt nặng hơn đối với các sai số có biên độ lớn.
Sai số phần trăm tuyệt đối trung bình (MAPE) $\text{MAPE} = \frac{1}{N} \sum_{i=1}^N \left|\frac{y_i - \hat{y}_i}{y_i}\right|$ Phản ánh tỷ lệ phần trăm sai số tương đối so với giá trị thực tế.

Kết quả thực nghiệm trên chuỗi thời gian của nhóm cổ phiếu ngân hàng cho thấy:

  • Mô hình Transformer 3 tầng Encoder đạt hiệu năng vượt trội so với các thuật toán học máy truyền thống (ANN, SVR, Random Forest) và mô hình học sâu chuỗi thời gian LSTM trên các thước đo $R^2$, RMSE, MAE và MAPE.
  • Cấu trúc 3 tầng Encoder tạo ra độ sâu phù hợp: đủ khả năng học các mẫu quan hệ phi tuyến dài hạn trong chuỗi giá tài chính mà không gây ra hiện tượng quá khớp (overfitting) hay quá tải tài nguyên tính toán.

Đóng góp của đề tài

  1. Về mặt khoa học: Đề xuất giải pháp trích xuất đặc trưng chuỗi thời gian tài chính sử dụng Transformer 3 tầng Encoder kết hợp 3 đầu chú ý, cung cấp thêm bằng chứng thực nghiệm về tính khả thi của mô hình Attention trong xử lý dữ liệu bảng/chuỗi thời gian chứng khoán tại thị trường mới nổi như Việt Nam.
  2. Về mặt thực tiễn: Phát triển hoàn chỉnh một ứng dụng web cho phép người dùng theo dõi biểu đồ giá, chạy thử nghiệm đánh giá và dự báo giá đóng cửa cho 4 mã cổ phiếu ngân hàng hàng đầu (Vietinbank, BIDV, Vietcombank, Techcombank).

Hạn chế và hướng nghiên cứu tiếp

Khóa luận ghi nhận một số giới hạn và định hướng mở rộng:

  • Hạn chế về phạm vi dữ liệu: Nghiên cứu mới tập trung thực nghiệm trên nhóm cổ phiếu thuộc ngành ngân hàng (Top 4 ngân hàng lớn) với dữ liệu kỹ thuật giá lịch sử; ngày giao dịch có tính gián đoạn tự nhiên do các kỳ nghỉ lễ và cuối tuần (được xử lý kỹ thuật bằng phương pháp điền khuyết).
  • Hướng phát triển tiếp:
    • Mở rộng phạm vi thử nghiệm sang các nhóm ngành khác trên thị trường chứng khoán Việt Nam.
    • Tích hợp thêm các nguồn dữ liệu phi cấu trúc (tin tức tài chính, chỉ số vĩ mô, tâm lý thị trường) nhằm tối ưu hóa khả năng dự báo.
    • Tinh chỉnh kiến trúc mô hình và nâng cấp các tính năng hỗ trợ ra quyết định trên giao diện web.

Giá trị tham khảo

Khóa luận là tài liệu tham khảo hữu ích cho:

  • Sinh viên và học viên chuyên ngành: Phân tích Dữ liệu Kinh doanh (Business Data Analytics), Khoa học Dữ liệu, Công nghệ Thông tin, Hệ thống Thông tin Quản lý và Tài chính - Ngân hàng.
  • Nghiên cứu ứng dụng: Cung cấp tài liệu tham khảo chi tiết về quy trình tiền xử lý chuỗi thời gian tài chính bằng Python (xử lý ngày khuyết, chuẩn hóa dữ liệu Z-score), phương pháp cấu hình mạng Transformer cho dữ liệu dạng chuỗi (thay thế cho NLP truyền thống), và phương pháp đóng gói mô hình học máy thành ứng dụng web tương tác.

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

1. Dữ liệu giá cổ phiếu trong nghiên cứu được thu thập từ nguồn nào và bao gồm những mã nào?

Dữ liệu được thu thập trực tiếp từ cổng thông tin Yahoo Finance, tập trung vào 4 cổ phiếu ngân hàng lớn tại Việt Nam gồm: CTG (Vietinbank - 5.000 mẫu, thời gian khoảng 10 năm), BID (BIDV - 2.000 mẫu), VCB (Vietcombank - 2.000 mẫu), và TCB (Techcombank - 2.000 mẫu).

2. Kiến trúc mô hình Transformer đề xuất có cấu tạo chi tiết như thế nào?

Mô hình gồm 3 tầng Encoder xếp chồng (Stacked Encoder Layers). Mỗi tầng Encoder bao gồm: Chuẩn hóa tầng (Layer Normalization), Cơ chế chú ý đa đầu (Multi-Head Attention với 3 đầu chú ý), Kỹ thuật Dropout, Kết nối phần dư (Residual Connection), và Mạng nơ-ron cấp tiến (FFN gồm 2 tầng Dense kích hoạt ReLU).

3. Khóa luận sử dụng các siêu tham số huấn luyện nào cho mô hình Transformer?

Mô hình sử dụng bộ tối ưu hóa Adam, lịch trình giảm tốc độ học phân rã theo hàm mũ (Exponential Decay), hàm mất mát Sai số bình phương trung bình (MSE), huấn luyện trong 100 epoch với kích thước lô (batch size) bằng 32.

4. Quy trình tiền xử lý dữ liệu chuỗi thời gian gồm các bước nào?

Quy trình gồm 4 bước tuần tự: (1) Chuyển đổi cột ngày sang định dạng Datetime; (2) Sắp xếp dữ liệu theo thứ tự thời gian tăng dần; (3) Tái lập chỉ mục chuỗi ngày liên tục và điền khuyết ngày nghỉ/lễ bằng kỹ thuật Forward Fill (ffill); (4) Chuẩn hóa Z-score đưa dữ liệu về giá trị trung bình 0 và độ lệch chuẩn 1.

5. Ứng dụng web được xây dựng trong khóa luận cung cấp những tính năng gì?

Ứng dụng web cung cấp 3 chức năng chính: (1) "Model training" (tải dữ liệu, tiền xử lý và huấn luyện); (2) "Model Evaluation" (hiển thị biểu đồ giá thực tế/dự báo và thống kê các chỉ số $R^2$, RMSE, MAE, MAPE); (3) "Prediction" (cho phép lựa chọn 1 trong 5 mô hình ANN, SVR, Random Forest, LSTM, Transformer để dự báo giá đóng cửa cổ phiếu ngân hàng).

Kết luận

Khóa luận tốt nghiệp của tác giả Nguyễn Thu Huyền đã nghiên cứu và triển khai giải pháp dự báo giá cổ phiếu chuỗi thời gian dựa trên mô hình học sâu Transformer 3 tầng Encoder kết hợp cơ chế chú ý đa đầu. Đề tài đã xây dựng quy trình tiền xử lý dữ liệu chuẩn hóa, tiến hành thực nghiệm đối sánh trên tập dữ liệu lịch sử của 4 ngân hàng lớn tại Việt Nam với các thuật toán ANN, SVR, Random Forest, LSTM và Transformer. Đồng thời, nghiên cứu đã phát triển thành công ứng dụng web trực quan hóa kết quả, mang lại giá trị ứng dụng thực tiễn cho việc phân tích và hỗ trợ ra quyết định trên thị trường chứng khoán.