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

Thị trường chứng khoán Việt Nam sau hơn 23 năm hình thành và phát triển đã khẳng định vai trò là kênh huy động vốn dài hạn của nền kinh tế và là kênh phân bổ tài sản của nhiều nhà đầu tư. Sau giai đoạn đại dịch COVID-19, thị trường chứng kiến sự gia tăng mạnh mẽ về số lượng người tham gia; theo dữ liệu từ Bộ Tài chính được tác giả trích dẫn, riêng trong năm 2023 số tài khoản mở mới đã tăng trên 350.000 tài khoản, nâng tổng số tài khoản toàn thị trường lên hơn 7,4 triệu (tương đương 7,5% dân số). Đi cùng với quy mô gia tăng là áp lực từ các biến động phức tạp của kinh tế vĩ mô quốc tế, áp lực lạm phát và các rủi ro địa chính trị. Thị trường tài chính hiện đại sản sinh khối lượng dữ liệu khổng lồ với tốc độ thay đổi nhanh, đặt ra yêu cầu cấp thiết về việc ứng dụng công nghệ và tự động hóa trong phân tích kỹ thuật nhằm giảm thiểu độ trễ trong quyết định đầu tư. Trong bối cảnh đó, ngôn ngữ lập trình Python nổi lên như một công cụ tiêu chuẩn trong ngành tài chính định lượng, cho phép thu thập dữ liệu, tính toán các chỉ báo kỹ thuật và thực thi kiểm định chiến lược. Xuất phát từ thực tế này, tác giả Nguyễn Lê Thanh Thy đã thực hiện khóa luận tốt nghiệp ngành Tài chính – Ngân hàng tại Trường Đại học Ngân hàng TP. Hồ Chí Minh với đề tài: "Ứng dụng phương pháp học máy trong giao dịch cổ phiếu theo chỉ báo bằng ngôn ngữ lập trình Python".

Về mục tiêu nghiên cứu, khóa luận xác định:

  • Mục tiêu tổng quát: Nghiên cứu ứng dụng phương pháp học máy trong giao dịch cổ phiếu theo chỉ báo bằng ngôn ngữ lập trình Python nhằm cho phép người dùng (nhà đầu tư cá nhân, nhà quản lý quỹ) đề xuất danh mục đầu tư cùng với chiến lược giao dịch tương ứng để tối đa hóa lợi nhuận và tối ưu hóa rủi ro.
  • Mục tiêu cụ thể:
    1. Tổng hợp, nghiên cứu các tài liệu về phương pháp học máy trong giao dịch cổ phiếu dựa trên phân tích kỹ thuật, cụ thể là các chỉ báo kỹ thuật và tối ưu hóa rủi ro cho danh mục đầu tư.
    2. Xây dựng thuật toán tính toán chỉ báo, giao dịch cổ phiếu dựa trên tín hiệu của chỉ báo tương ứng và đề xuất danh mục đầu tư hiệu quả.
    3. So sánh, đánh giá hiệu quả, tính khả thi và đề xuất giải pháp tối ưu cho hoạt động ứng dụng học máy trong giao dịch cổ phiếu tự động theo chỉ báo.

Khóa luận giải quyết ba câu hỏi nghiên cứu:

  1. Cơ sở lý thuyết nào liên quan đến cổ phiếu, ngôn ngữ lập trình, phương pháp học máy, các chỉ báo kỹ thuật, các chiến thuật giao dịch theo chỉ báo?
  2. Các thuật toán giao dịch tự động theo từng chỉ báo xây dựng như thế nào? Giao dịch có hiệu quả và chính xác hay không?
  3. Các đề xuất nào nhằm ứng dụng học máy trong giao dịch cổ phiếu theo chỉ báo vào thực tiễn?

Đối tượng nghiên cứu của đề tài là các phương pháp học máy và thuật toán trong giao dịch cổ phiếu theo chỉ báo kỹ thuật bằng ngôn ngữ Python. Phạm vi nghiên cứu về mặt không gian tập trung vào 30 mã cổ phiếu thuộc rổ chỉ số VN30 niêm yết tại Sở Giao dịch Chứng khoán Thành phố Hồ Chí Minh (HOSE) theo danh mục cập nhật ngày 18/02/2024. Phạm vi thời gian nghiên cứu kéo dài 6 năm, từ ngày 01/01/2018 đến ngày 31/12/2023; trong đó giai đoạn 2018 – 2022 đóng vai trò là tập dữ liệu huấn luyện và xây dựng danh mục, còn năm 2023 đóng vai trò là tập dữ liệu kiểm tra độc lập. Toàn bộ tính toán và thực thi thuật toán được triển khai trên nền tảng Google Colab.

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

Khóa luận thiết lập nền tảng lý thuyết thông qua hệ thống các định nghĩa học thuật và khung pháp lý hiện hành:

  • Khái niệm về cổ phiếu: Trích dẫn quy định tại Khoản 2, Điều 4 Luật Chứng khoán năm 2019 (có hiệu lực từ 01/01/2021) xác nhận cổ phiếu là loại chứng khoán xác nhận quyền và lợi ích hợp pháp của người sở hữu đối với một phần vốn cổ phần của tổ chức phát hành; kết hợp với các định nghĩa tài chính của Stoll (2006) và Waldman (2005) về quyền sở hữu vốn và phân phối rủi ro trên thị trường trung gian.
  • Công cụ lập trình: Khóa luận khái quát sự phát triển của ngôn ngữ Python do Guido van Rossum giới thiệu năm 1991, trải qua các mốc Python 1.0 (1994), Python 2.0 (2000), Python 3.0 (2008) đến phiên bản ổn định 3.12 (tháng 10/2023), phân tích sự tương thích của hệ sinh thái thư viện Python đối với tính toán định lượng và kiểm thử chiến thuật tài chính.
  • Chỉ báo phân tích kỹ thuật: Dựa trên cơ sở lý thuyết phân tích hành vi thị trường (Nguyễn Duy Linh và ctg, 2023), tác giả sử dụng bốn chỉ báo kỹ thuật cốt lõi:
    1. Đường trung bình di động giản đơn (SMA): Tính trung bình cộng giá đóng cửa của $n$ phiên gần nhất nhằm xác định xu hướng và các ngưỡng hỗ trợ/kháng cự động.
    2. Dải Bollinger (Bollinger Bands): Công cụ do John Bollinger phát triển, gồm đường SMA ở trục giữa và hai dải biên trên/dưới xác định bằng khoảng cách độ lệch chuẩn, dùng để nhận diện biến động và vùng quá độ của giá.
    3. Chỉ số sức mạnh tương đối (RSI): Chỉ báo dao động do J. Welles Wilder Jr. giới thiệu năm 1978, vận hành trên thang điểm từ 0 đến 100 nhằm đo lường tương quan giữa mức tăng và giảm giá trung bình trong 14 kỳ, xác định vùng quá mua (trên 70) và quá bán (dưới 30).
    4. Đường trung bình động hội tụ phân kỳ (MACD): Phát triển bởi Gerald Appel năm 1979, cấu thành từ chênh lệch giữa hai đường trung bình động hàm mũ (EMA 12 ngày trừ EMA 26 ngày), kết hợp đường tín hiệu Signal (EMA 9 ngày của MACD), biểu đồ Histogram và đường tham chiếu Zero.
  • Lý thuyết danh mục đầu tư hiện đại và thước đo hiệu quả: Áp dụng lý thuyết đa dạng hóa danh mục của Harry Markowitz để mô hình hóa tỷ suất sinh lợi kỳ vọng $E(R_{port}) = \sum w_i R_i$ và phương sai rủi ro danh mục $\sigma_{port}^2$. Để tối ưu hóa phân bổ vốn, nghiên cứu sử dụng hệ số Sharpe (Sharpe Ratio) do William F. Sharpe phát triển từ mô hình CAPM: $$\text{Tỷ lệ Sharpe} = \frac{R_p - R_f}{\sigma_p}$$ Trong đó $R_p$ là tỷ suất lợi nhuận của danh mục, $R_f$ là tỷ suất sinh lợi phi rủi ro (lấy theo lãi suất trái phiếu chính phủ kỳ hạn 10 năm phát hành ngày 29/11/2023), và $\sigma_p$ là độ lệch chuẩn rủi ro.

Phương pháp nghiên cứu kết hợp ba kỹ thuật:

  • Phương pháp nghiên cứu tại bàn: Tổng hợp tài liệu học thuật trong và ngoài nước về học máy, phân tích kỹ thuật và tối ưu hóa danh mục.
  • Phương pháp định lượng và thực nghiệm thuật toán: Thu thập chuỗi giá đóng cửa lịch sử, lập trình các hàm tín hiệu kỹ thuật, mô phỏng giao dịch backtest và giải bài toán tối ưu hóa tỷ trọng bằng thư viện scipy.optimize với hàm mục tiêu tối thiểu hóa giá trị âm của hệ số Sharpe (minimize negative Sharpe).
  • Phương pháp phân tích – tổng hợp: Thống kê tỷ suất sinh lợi, tỷ lệ thắng/thua, độ biến động của từng mã và từng danh mục qua các chu kỳ để rút ra quy luật tương thích giữa chiến lược và đặc tính cổ phiếu.

Nguồn dữ liệu thứ cấp được truy xuất tự động thông qua gói thư viện mã nguồn mở vnstock do tác giả Vũ Thịnh phát triển, thu thập toàn bộ dữ liệu giá đóng cửa điều chỉnh của 30 cổ phiếu thuộc chỉ số VN30 trong suốt giai đoạn từ năm 2018 đến hết năm 2023.

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

Chương 1: Tổng quan về nghiên cứu

Chương mở đầu đặt nền móng cho đề tài thông qua việc phân tích thực trạng tăng trưởng của thị trường chứng khoán Việt Nam và sự cần thiết của việc số hóa quy trình đầu tư. Tác giả chỉ ra rằng phần lớn nhà đầu tư cá nhân gặp trở ngại trong việc xử lý khối lượng lớn dữ liệu giá và thường chịu ảnh hưởng tâm lý khi ra quyết định. Chương này xác định rõ ràng mục tiêu nghiên cứu, hệ thống câu hỏi, đối tượng và phạm vi nghiên cứu giới hạn trong nhóm VN30 (nhằm bảo đảm tính thanh khoản, tính liên tục của dữ liệu và giới hạn tính toán của công cụ Google Colab), đồng thời phác thảo cấu trúc 5 chương của khóa luận.

Chương 2: Cơ sở lý thuyết và các nghiên cứu thực nghiệm

Chương 2 trình bày có hệ thống các khái niệm pháp lý và lý thuyết tài chính liên quan đến cổ phiếu, nền tảng ngôn ngữ Python và cấu trúc toán học của các chỉ báo SMA, dải Bollinger, RSI, MACD. Tác giả phân tích chi tiết cơ chế nhận diện xu hướng, phân kỳ, hội tụ, quá mua, quá bán của từng công cụ, đồng thời trình bày khung lý thuyết danh mục đầu tư Markowitz và phương pháp tối ưu hóa Sharpe Ratio. Trong phần khảo lược nghiên cứu, tác giả phân tích các công trình của:

  • Lu (2016) về ứng dụng học máy tự động hóa giao dịch trên chỉ số S&P 500, nhưng hạn chế ở việc chỉ tập trung vào dự báo giá mà bỏ qua các chỉ báo kỹ thuật;
  • Jevtic và ctg (2022) về dự báo giá và chiến lược tín hiệu chéo trên thị trường dầu thô;
  • Antonio Agudelo Aguirre và ctg (2020) về thuật toán học máy kết hợp chỉ báo MACD trên sàn NASDAQ.

Từ đó, chương 2 chỉ ra khoảng trống nghiên cứu: các nghiên cứu trước đây chủ yếu thực hiện ở thị trường phát triển, tập trung vào mô hình dự báo đơn lẻ hoặc từng chỉ báo cô lập; thiếu vắng mô hình kết hợp kiểm thử chiến thuật đa chỉ báo với bước tối ưu hóa danh mục Markowitz - Sharpe trên dữ liệu thị trường chứng khoán Việt Nam.

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

Chương 3 chi tiết hóa quy trình nghiên cứu thực nghiệm gồm 4 bước liên hoàn:

  1. Thu thập dữ liệu: Tải chuỗi giá lịch sử 30 cổ phiếu VN30 qua thư viện vnstock.
  2. Xây dựng chiến lược giao dịch và thuật toán:
    • Chiến lược SMA: Mua khi SMA(20) cắt lên trên SMA(50); Bán khi SMA(20) cắt xuống dưới SMA(50).
    • Chiến lược dải Bollinger: Thiết lập chu kỳ 21 ngày, độ lệch chuẩn 1; Mua khi giá giảm vượt dải dưới (Bollinger Bounce); Bán khi giá vượt dải trên.
    • Chiến lược RSI: Chu kỳ 14 ngày; Mua khi RSI < 30 (quá bán); Bán khi RSI > 70 (quá mua).
    • Chiến lược MACD: Mua khi đường MACD cắt đường Zero từ dưới lên (chuyển từ âm sang dương); Bán khi MACD cắt đường Zero từ trên xuống (chuyển từ dương sang âm).
  3. Quy tắc mô phỏng backtesting:
    • Giai đoạn huấn luyện (2018 – 2022): Vốn ban đầu 100.000.000 VNĐ cho mỗi mã cổ phiếu riêng lẻ; Phí giao dịch 0,01%/lệnh; Khối lượng mua mỗi lần bằng $(95% \times \text{Số tiền hiện có}) / \text{Giá mua}$; Bán toàn bộ 100% lượng cổ phiếu đang nắm giữ khi có tín hiệu bán.
    • Xây dựng danh mục: Chọn 5 cổ phiếu có tỷ suất sinh lợi cao nhất sau giao dịch huấn luyện cho từng chiến lược. Tối ưu hóa phân bổ tỷ trọng bằng hàm minimize của SciPy: ràng buộc tỷ trọng mỗi cổ phiếu nằm trong khoảng $10% \le w_i \le 50%$, tổng tỷ trọng bằng 100%.
  4. Giai đoạn kiểm tra (năm 2023): Cấp vốn danh mục 1.000.000.000 VNĐ, phân bổ vốn theo tỷ trọng tối ưu đã xác định từ giai đoạn huấn luyện, thực thi giao dịch theo đúng quy tắc kỹ thuật tương ứng để đánh giá ngoài mẫu (out-of-sample).

Chương 4: Kết quả nghiên cứu

Chương 4 cung cấp số liệu thực nghiệm toàn diện qua hai giai đoạn:

  • Giai đoạn huấn luyện (2018 – 2022):
    • Chiến lược SMA ghi nhận 20 mã có lãi, 10 mã lỗ; sinh lợi cao nhất là VIB (+234%), thấp nhất là SSB (+2%), mã lỗ nặng nhất là VRE (-43%). Top 5 cổ phiếu lựa chọn: VIB, SSI, FPT, HPG, BCM.
    • Chiến lược dải Bollinger ghi nhận 11 mã lãi, 19 mã lỗ; sinh lợi cao nhất là ACB (+72,3%), thấp nhất là MSN (+0,2%), mã lỗ nặng nhất là HPG (-63%). Top 5 lựa chọn: ACB, TPB, GVR, FPT, TCB.
    • Chiến lược RSI ghi nhận 14 mã lãi, 16 mã lỗ; sinh lợi cao nhất là BID (+242%), thấp nhất là VNM (+3%), mã lỗ nặng nhất là SSI (-51%). Top 5 lựa chọn: BID, CTG, ACB, VRE, GAS.
    • Chiến lược MACD ghi nhận 20 mã lãi, 10 mã lỗ; sinh lợi cao nhất là BCM (+243%), thấp nhất là TCB (+1%), mã lỗ nặng nhất là VRE (-60%). Top 5 lựa chọn: BCM, VIB, HPG, SHB, SSI.
  • Kết quả tối ưu hóa danh mục:
    • Danh mục SMA: Sharpe cực đại đạt 0,79; tỷ trọng tối ưu gồm FPT (30%), VIB (29%), BCM (21%), SSI (10%), HPG (10%); tỷ suất sinh lợi kỳ vọng 19%/năm, rủi ro ước tính 21%.
    • Danh mục Bollinger: Sharpe cực đại đạt 0,86; tỷ trọng gồm FPT (50%), TPB (21%), ACB (20%), GVR (10%), TCB (10%); tỷ suất sinh lợi kỳ vọng 18%/năm, rủi ro ước tính 17%.
    • Danh mục RSI: Sharpe cực đại đạt 0,28; tỷ trọng gồm ACB (48%), BID (22%), CTG (10%), VRE (10%), GAS (10%); tỷ suất sinh lợi kỳ vọng 10%/năm, rủi ro ước tính 24%.
    • Danh mục MACD: Sharpe cực đại đạt 0,68; tỷ trọng gồm VIB (41%), BCM (29%), HPG (10%), SHB (10%), SSI (10%); tỷ suất sinh lợi kỳ vọng 10%/năm, rủi ro ước tính 24%.
  • Kết quả kiểm tra ngoài mẫu năm 2023:
    • Danh mục SMA: Toàn bộ 5 mã đều sinh lời (SSI đạt cao nhất trên 52%, các mã khác dao động 18% - 27%), tỷ suất sinh lợi thực tế của cả danh mục đạt 20,94% (vượt mức kỳ vọng 19%).
    • Danh mục Bollinger: Toàn bộ 5 mã đều sinh lời (TPB cao nhất 17%), sinh lợi tập trung trong khoảng 15% - 17%.
    • Danh mục RSI: Chỉ có 3 mã sinh lời (BID cao nhất 14,28%, CTG đạt 5,91%), mã VRE lỗ 10,41%, riêng mã ACB không phát sinh bất kỳ giao dịch nào do RSI năm 2023 không bao giờ giảm xuống dưới ngưỡng 30.
    • Danh mục MACD: Có 3 mã sinh lời (SSI cao nhất đạt 41,87%, CTG 15,16%), 2 mã ghi nhận thua lỗ khoảng 7% (VIB, BCM).
    • Tác giả kết luận: Danh mục đầu tư theo chỉ báo SMA là danh mục tối ưu nhất với tỷ suất sinh lợi cao nhất (20,94%).

Chương 5: Kết luận và đề xuất

Chương cuối cùng tổng kết mức độ hoàn thành đối với ba mục tiêu nghiên cứu ban đầu. Đồng thời, tác giả đề xuất một quy trình 5 bước áp dụng thực tiễn cho nhà đầu tư cá nhân và tổ chức: Bước 1 - Thu thập dữ liệu (tối thiểu 5 năm lịch sử, chia tỷ lệ huấn luyện $\ge 2$ năm, kiểm tra $\le 1$ năm); Bước 2 - Xây dựng chiến lược theo chỉ báo và tối ưu hóa rủi ro; Bước 3 - Giao dịch và tối ưu hóa danh mục trên tập huấn luyện (chọn 3 - 6 cổ phiếu theo quan điểm của Warren Buffett để bảo đảm đa dạng hóa); Bước 4 - Giao dịch kiểm tra danh mục tối ưu trên tập dữ liệu ngoài mẫu; Bước 5 - Triển khai thực tế và rà soát định kỳ (3 tháng, 6 tháng hoặc 1 năm) để tái cơ cấu danh mục.

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

Nghiên cứu mang lại các kết quả định lượng cụ thể được tổng hợp qua các bảng số liệu sau:

Chỉ báo kỹ thuật Số mã sinh lời (2018–2022) Số mã thua lỗ (2018–2022) Cổ phiếu sinh lời cao nhất Cổ phiếu thua lỗ nhiều nhất Hệ số Sharpe tối ưu
SMA (20, 50) 20 / 30 10 / 30 VIB (+234%) VRE (-43%) 0,79
Bollinger Bands 11 / 30 19 / 30 ACB (+72,3%) HPG (-63%) 0,86
RSI (14) 14 / 30 16 / 30 BID (+242%) SSI (-51%) 0,28
MACD (12, 26, 9) 20 / 30 10 / 30 BCM (+243%) VRE (-60%) 0,68

Bảng 1: Tổng hợp hiệu suất kiểm thử 4 chỉ báo giai đoạn huấn luyện 2018 – 2022.

Danh mục theo chỉ báo Cơ cấu phân bổ tỷ trọng tối ưu TSSL kỳ vọng năm Rủi ro ước tính TSSL thực tế năm 2023
Danh mục SMA FPT (30%), VIB (29%), BCM (21%), SSI (10%), HPG (10%) 19,00% 21,00% 20,94%
Danh mục Bollinger FPT (50%), TPB (21%), ACB (20%), GVR (10%), TCB (10%) 18,00% 17,00% Đạt lợi nhuận dương (TPB đạt cao nhất 17%)
Danh mục RSI ACB (48%), BID (22%), CTG (10%), VRE (10%), GAS (10%) 10,00% 24,00% 3 mã lãi (BID 14,28%), 1 mã lỗ (VRE -10,41%), 1 mã không phát sinh lệnh (ACB)
Danh mục MACD VIB (41%), BCM (29%), HPG (10%), SHB (10%), SSI (10%) 10,00% 24,00% 3 mã lãi (SSI 41,87%), 2 mã lỗ (VIB, BCM lỗ ~7%)

Bảng 2: So sánh cơ cấu danh mục tối ưu và hiệu quả thực nghiệm trong năm kiểm tra 2023.

Về giải pháp và đề xuất thực tiễn: Tác giả đề xuất quy trình chuẩn 5 bước đưa thuật toán vào hoạt động quản lý danh mục thực tế, nhấn mạnh nguyên tắc tái thẩm định định kỳ 3 tháng, 6 tháng hoặc 1 năm dựa trên chuỗi dữ liệu giá mới nhất để kịp thời cơ cấu lại tỷ trọng và thay thế các cổ phiếu suy giảm động lượng.

Đóng góp của khóa luận so với các nghiên cứu trước:

  • Khắc phục sự đơn lẻ của các nghiên cứu quốc tế trước đây (vốn chỉ dừng lại ở dự báo chuỗi thời gian hoặc khảo sát riêng rẽ một chỉ báo như nghiên cứu của Lu năm 2016 hay Aguirre năm 2020) bằng việc thiết lập một khung thực nghiệm so sánh đa chỉ báo (SMA, Bollinger, RSI, MACD) trên cùng một tập dữ liệu chuẩn hóa của thị trường Việt Nam.
  • Kết hợp hoàn chỉnh giữa việc sinh tín hiệu giao dịch theo phân tích kỹ thuật và mô hình phân bổ tài sản tối ưu rủi ro theo lý thuyết Markowitz và hệ số Sharpe, chứng minh tính khả thi của việc tự động hóa toàn bộ quy trình từ tải dữ liệu, backtest đến tính toán tỷ trọng vốn bằng ngôn ngữ Python.

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

Khóa luận chỉ ra một số hạn chế gắn liền với phạm vi và điều kiện thực nghiệm:

  • Giới hạn về không gian dữ liệu: Khóa luận chỉ thực hiện kiểm tra trên 30 mã cổ phiếu thuộc rổ VN30 nhằm bảo đảm dữ liệu giá đóng cửa không bị khuyết thiếu và nằm trong năng lực xử lý phần cứng của nền tảng Google Colab miễn phí.
  • Giới hạn về tham số kỹ thuật: Các thông số cấu hình chỉ báo được ấn định cố định (SMA 20/50, Bollinger 21 ngày với độ lệch chuẩn 1, RSI 14 ngày với ngưỡng 30/70, MACD chuẩn) mà chưa áp dụng các thuật toán tối ưu hóa siêu tham số (hyperparameter optimization) linh hoạt theo từng chu kỳ thị trường.
  • Hiện tượng khuyết tín hiệu: Chiến lược dựa trên RSI cho thấy sự không tương thích đối với các cổ phiếu có biên độ dao động hẹp và xu hướng ổn định trong năm 2023 (điển hình là ACB không xuất hiện điểm mua nào do RSI không chạm ngưỡng quá bán 30).
  • Giới hạn thời gian kiểm tra ngoài mẫu: Dữ liệu kiểm tra độc lập chỉ thực hiện trong phạm vi một năm dương lịch (năm 2023), chưa kiểm chứng qua nhiều chu kỳ kinh tế đầy đủ (chu kỳ suy thoái kéo dài hoặc chu kỳ bùng nổ).

Hướng mở rộng được đề xuất:

  • Mở rộng quy mô tập dữ liệu sang toàn bộ các mã niêm yết trên HOSE và HNX.
  • Áp dụng các kỹ thuật học máy nâng cao nhằm tự động tinh chỉnh tham số của các chỉ báo kỹ thuật theo từng trạng thái thị trường.
  • Kéo dài giai đoạn kiểm tra ngoài mẫu trên nhiều năm và tích hợp thêm các yếu tố quản trị rủi ro phức tạp hơn như lệnh cắt lỗ tự động (Stop-loss), chốt lời từng phần (Take-profit) và kiểm soát mức sụt giảm tài sản tối đa (Maximum Drawdown).

Giá trị tham khảo

Công trình mang lại giá trị tham khảo học thuật và ứng dụng thực hành cho các nhóm đối tượng:

  • Sinh viên và học viên chuyên ngành Tài chính – Ngân hàng, Công nghệ tài chính (Fintech), Quản trị rủi ro tài chính: Tài liệu cung cấp ví dụ mẫu mực về việc ứng dụng ngôn ngữ lập trình Python trong tài chính định lượng, minh họa cụ thể cách thức chuyển hóa các công thức toán học và nguyên lý tài chính (chỉ báo kỹ thuật, độ lệch chuẩn, hiệp phương sai, tỷ lệ Sharpe) thành mã lệnh thuật toán.
  • Người nghiên cứu các đề tài tương tự: Phần đáng tham khảo nhất là Chương 3 (Phương pháp nghiên cứu) với quy trình 4 bước mạch lạc, logic thiết lập hàm mục tiêu giải bài toán tối ưu tỷ trọng danh mục bằng thư viện SciPy, và cách khai thác thư viện vnstock để tự động hóa việc lấy dữ liệu thị trường Việt Nam.
  • Nhà đầu tư cá nhân và chuyên viên quản lý danh mục: Chương 4 và Chương 5 cung cấp góc nhìn thực nghiệm khách quan về hiệu quả tương đối của từng chỉ báo kỹ thuật trên rổ VN30, đặc biệt là bằng chứng thực nghiệm cho thấy sự vượt trội của chiến lược giao cắt SMA(20)/SMA(50) kết hợp tối ưu tỷ trọng Sharpe trong việc tạo ra tỷ suất sinh lợi dương vượt mức kỳ vọng.

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

1. Trong số các chiến lược kỹ thuật được thử nghiệm, chiến lược nào đem lại hiệu suất đầu tư cao nhất trong năm kiểm tra 2023?
Chiến lược giao dịch theo chỉ báo đường trung bình di động giản đơn SMA (với cặp đường SMA 20 ngày và SMA 50 ngày) kết hợp danh mục tối ưu Sharpe đem lại hiệu quả cao nhất. Danh mục này đạt tỷ suất sinh lợi thực tế trong năm 2023 là 20,94%, vượt qua mức tỷ suất sinh lợi kỳ vọng đã tính toán trước đó là 19,00%.

2. Tại sao cổ phiếu ACB trong danh mục tối ưu của chỉ báo RSI lại không phát sinh bất kỳ giao dịch nào trong suốt năm 2023?
Theo thuật toán thiết lập, chiến lược RSI chu kỳ 14 ngày chỉ thực hiện lệnh mua khi chỉ số RSI giảm xuống dưới ngưỡng 30 (vùng quá bán). Trong suốt năm 2023, biến động giá của mã cổ phiếu ACB diễn ra tương đối ổn định, chỉ số RSI của ACB không lần nào giảm xuống dưới mức 30, dẫn đến việc điều kiện mua không được kích hoạt và không có giao dịch nào được thực thi.

3. Bài toán tối ưu hóa tỷ trọng phân bổ vốn bằng tỷ lệ Sharpe trong khóa luận được thiết lập với những ràng buộc nào?
Tác giả giải bài toán bằng cách tối thiểu hóa giá trị âm của tỷ lệ Sharpe thông qua hàm minimize của thư viện SciPy với các điều kiện: tỷ trọng vốn phân bổ vào mỗi mã cổ phiếu phải đạt tối thiểu $10%$ ($w_i \ge 0,10$) và không vượt quá $50%$ ($w_i \le 0,50$) để bảo đảm tính đa dạng hóa danh mục; tổng tỷ trọng của tất cả 5 tài sản trong danh mục phải đúng bằng $100%$ ($\sum w_i = 1$); lãi suất phi rủi ro $R_f$ căn cứ theo lãi suất trái phiếu chính phủ kỳ hạn 10 năm phát hành ngày 29/11/2023.

4. Khóa luận áp dụng các giả định nào về vốn đầu tư ban đầu, chi phí giao dịch và khối lượng giao dịch trong mô hình thực nghiệm?
Trong giai đoạn huấn luyện (2018 – 2022), mỗi cổ phiếu được cấp vốn ban đầu 100.000.000 VNĐ; sang giai đoạn kiểm tra danh mục năm 2023, tổng vốn đầu tư là 1.000.000.000 VNĐ phân bổ theo tỷ trọng tối ưu. Chi phí giao dịch được ấn định là 0,01%/giao dịch. Số lượng cổ phiếu mua tại mỗi tín hiệu được tính bằng công thức: $(95% \times \text{Số tiền hiện có}) / \text{Giá mua}$. Đối với lệnh bán, hệ thống bán toàn bộ 100% số lượng cổ phiếu đang nắm giữ.

Kết luận

Khóa luận tốt nghiệp của tác giả Nguyễn Lê Thanh Thy đã giải quyết trọn vẹn mục tiêu nghiên cứu thông qua việc số hóa và kiểm nghiệm các chiến lược giao dịch cổ phiếu theo chỉ báo kỹ thuật bằng ngôn ngữ Python trên nhóm cổ phiếu VN30 giai đoạn 2018 – 2023. Kết quả thực nghiệm khẳng định việc tích hợp tín hiệu kỹ thuật (đặc biệt là giao cắt SMA) với mô hình tối ưu hóa rủi ro Markowitz và tỷ lệ Sharpe giúp nâng cao tỷ suất sinh lợi thực tế, đạt 20,94% trong năm kiểm tra ngoài mẫu 2023. Công trình đóng góp quy trình 5 bước ứng dụng thực tế có giá trị thực tiễn rõ rệt, đồng thời là tài liệu tham khảo phương pháp luận chuẩn xác cho các nghiên cứu định lượng tài chính tiếp theo tại thị trường chứng khoán Việt Nam.