1. Trang chủ
  2. » Luận Văn - Báo Cáo

đồ án cuối kỳ phương pháp nghiên cứu liên ngành đề tài stock price prediction in vietnam

23 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Trang 1

TRƯỜNG ĐẠI HỌC KINH TẾ - LUẬT KHOA HE THONG THONG TIN

ĐỎ ÁN CUÓI KỲ

Môn: PHƯƠNG PHÁP NGHIÊN CỨU LIÊN NGÀNH

Đề tai: STOCK PRICE PREDICTION IN VIETNAM

GVGD: TS Nguyén Thôn Dã

NHOM SINH VIEN THUC HIEN

STT Ho va tén MSSV 1 | Tw Ha Phuc K224060808

2 | Tran Nhu Cam Ly K224060795

3 | Bui Xuan Mai K224060796

4 | Nguyễn Ngọc Gia Nghi K224060802

5 | Nguyễn Thanh Thúy Tiên K224060816

Trang 2

LỜI CÁM ƠN

Đầu tiên, Nhóm chúng em xin gửi lời cảm ơn chân thành đến giảng viên bộ môn - Tiến sĩ Nguyễn Thôn Dã đã dạy đỗ và truyền đạt những kiến thức quý báu cho chúng em trong suốt thời gian học tập vừa qua Tuy thời gian thực hiện đỗ án cuối kỳ có hạn, nhưng Thầy đã hướng dẫn, nhận xét và góp ý vô cùng tận tình Nhờ có vậy, giúp chúng em làm nền tảng và vận dụng được vào bài cudi ky

Tuy nhiên, do chưa có nhiều kinh nghiệm làm đề tài cũng như hạn chế về kiến thức, báo cáo không thể tránh khỏi những thiếu sót Chúng em rất mong nhận được những ý kiến, góp ý quý giá của Thầy để có thể cải thiện những thiếu sót trong báo cáo này và

học hỏi nhiều kinh nghiệm đề hoàn thành tốt hơn những bài sắp tới

Chúng em xin chân thành cảm ơn!

Trang 3

MỤC LỤC

I8 1 4 PC nh ố 4 “AI; 2 5 SA ri nan 5 SN Ng 1 an 5 E279 17 1.aeeea.AAAẦẦ 7 SZ// , 167/, 186 6 4 8 KS¿ .0) n1nn6ốeốeốố.aaAẢẢ HH 10 3.3.1 Gathering machine learning data ccc c ccc tk HH 1111111 21H ng 11 ST) .HA II nh a ổ nan nh h 12 SEN 7A a4 nha 16 3.3.5 Deploying an application to predict stock price in Viet NaHH 17 "na e 17 5 Conclusion and Future Scope 0 0 0200112221112 21112211521 1112111 8k re 18 (ii nh .ẻ 20

Trang 4

ABSTRACT

Nghiên cứu này tập trung vào ứng dụng các mô hình máy học, bao gồm Linear Regression, KNN, SVM và LSTM đề dự đoán giá chứng khoán của Ngân hàng TMCP Ngoại thương Việt Nam (Vietcombank) có ký hiệu là VCB trên thị trường chứng khoán Việt Nam Dữ liệu sử dụng trong nghiên cứu là thông tin lịch sử về giá chứng khoán của mã chứng khoán Các đặc trưng của đữ liệu bao gồm giá mở cửa, giá đóng cửa, khối lượng giao dịch và các chỉ số liên quan khác Các mô hình máy học được đào tạo và đánh giá sử dụng dữ liệu này để dự đoán giá chứng khoán Hiệu suất của từng mô hình được đánh giá băng các phương pháp đo đạc như sai số trung bình bình phương, độ chính xác và độ chính xác Kết quả sẽ cho thấy hiệu suất và khả năng dự đoán của từng mô hình trong việc dự đoán giá chứng khoán VCB trên thị trường chứng khoán Việt Nam

Trang 5

1 Introduction

Thị trường chứng khoán Việt Nam là một phần quan trọng của hệ thống tài chính quốc gia, đóng vai trò quyết định trong việc huy động vốn và cung cấp cơ hội đầu tư cho các nhà đầu tư Việc tra cứu thông tin về các mã chứng khoán, thông tin liên quan đến công ty, và so sánh các mã chứng khoán với nhau là những nhu cầu cơ bản của họ Áp dụng machine learning và deep learning để đự đoán giá chứng khoán là một trong những ứng dụng quan trọng và phức tạp của trí tuệ nhân tạo trong lĩnh vực tài chính Đến nay, đã có rất nhiều nghiên cứu về đề tài này và đã cho ra nhiều kết quả khá triển vọng trong tương lai

Gần đây, việc đự đoán thị trường chứng khoán có thê được nâng cao bằng cách sử dụng máy hoc (Machine Learning) Những kỹ thuật như Máy Vecto hé tro (Support Vector Machine - SVM), hoặc một số vectơ dựa trên mạng noron kỹ thuật như Mạng nơron nhân tạo (ANN), Mạng nơ ron tái phát (RNN) và mạng nơ ron sâu mạng lưới

thần kinh như Bộ nhớ ngan dai (Long short term memory - LSTM) [1] [2] [3] Day la

những công cụ tốt có thể giúp xử lý dữ liệu đầu vào và đầu ra của một tập dữ liệu phức tạp Trong bài báo này, chúng tôi sẽ trình bày về việc sử đụng các kỹ thuật trên đề dự đoán giá chứng khoán Việt Nam

Các phần tiếp theo của bài báo bao gồm: phân 2 trình bày về các nghiên cứu liên quan đến bài toán Trong phần 3, chúng tôi sẽ trình bày cơ sở lý thuyết Phần 4 trình bày những kết quả thực nghiệm của mô hình đề xuất, trong đó có kết hợp so sánh với một số kết quả của mô hình khác Cuối cùng, trong phần 5 chúng tôi nêu lên một số kết luận và những định hướng nghiên cứu tiếp theo

2 Related work

Dự đoán giá chứng khoán là một vấn đề quan trọng trong tài chính, có thế giúp nhà đầu tư đưa ra quyết định đầu tư hiệu quả hơn Đề dự đoán giá trên thị trường chứng khoán, mọi người tìm kiếm những phương pháp và công cụ như vậy sẽ làm tăng lợi nhuận của họ, đồng thời giảm thiểu rủi ro [4] Dự đoán đóng một vai trò rất quan trọng trong hoạt động kinh doanh trên thị trường chứng khoán, một quá trình được cho là rất phức tạp và đây thử thách Việc sử dụng các phương pháp truyền thông như phân tích cơ bản và kỹ thuật có thế không đảm bảo độ tin cậy của dự đoán [5] Sự phát triển mạnh mẽ của các mô hình học máy, học sâu như Linear Regression, KNN, SVM, LSTM được ứng dụng vào dự đoán giá cô phiếu và đã đạt được một số kết quả khả quan, được nêu ra trong các bài viết [6] [7] [8] Chúng tôi nhận thấy tầm quan trọng của việc so sánh các mô hình dự đoán khác nhau để tìm ra mô hình phù hợp nhất cho từng tình huống cụ thê đặc biệt là trong ngắn hạn và dài hạn Ngoài ra, chúng tôi có ý

Trang 6

tưởng để bài nghiên cứu có thể ứng dụng dự đoán cho hầu hết các mã chứng khoán ở Việt Nam, thông qua dữ liệu được lấy trực tiếp nhờ vào thư viện hỗ trợ Nghiên cứu chúng tôi tập trung vào tìm kiếm giải pháp cho việc dự đoán, hỗ trợ đưa ra quyết định đầu tư ở Việt Nam bên cạnh nghiên cứu về mô hình, thuật toán

3 Methodology 3.1 Model AI 3.1.1 Machine learning

“+ Linear Regression

Linear regression (héi quy tuyến tính) là một thuật toán khá phổ biến của Supervised Learning (Học có giám sát) với đầu ra đự đoán liên tục và độ đốc không đổi nhằm dự đoán các giá trị trong một phạm vi liên tục Hồi quy tuyến tính là một phương pháp thống kê đề dự đoán gia tri cua bién phụ thuộc (Y) dựa trên giá trị của một hoặc nhiều

biến độc lập (X) [9]

Dữ liệu đầu vào trong bài nghiên cứu của chúng tôi là các điểm đữ liệu lấy theo chuỗi 60 ngày liên tiếp và đầu ra là giá của ngày tiếp theo, thực hiện tiếp tục cho đến hết tập dữ liệu đầu vào Vì vậy mô hình hồi quy tuyến tính được sử dụng ở đây là hồi quy tuyến tính đa biến Mô hình nảy sử dụng nhiều biến độc lập dé dự đoán biến phụ

thuộc, và mối quan hệ giữa các biến độc lập và biến phụ thuộc lả tuyến tính [10] Công thức hồi quy đa biến:

Y =0 +IXI +2X2 + + BaXn + e [LI] Trong đó:

e Y là biến phụ thuộc

® XI, X2, Xn là các biến giải thích e £0 la hang sé

e 61, £2, ., Bn la cdc hệ số hồi quy ® c là sai sỐ

< SVM

Model SVM (Support Vector Machine) là một loại thuật toán học máy được hướng dẫn sử dụng cho các bài toán phân loại hoặc hồi quy đữ liệu theo các lớp khác nhau [12]

Cách hoạt động của SVM sẽ có 3 bước Bước | sé 1a tim mét hé thong tuyén tinh (hyperplane) đề phân biệt các lớp dữ liệu Hệ thống tuyến tính là một đường thắng hoặc một đường cong có thé chia hai lớp đữ liệu thành hai phần riêng biệt Sau đó là

5

Trang 7

tìm các điểm đữ liệu gần nhất (support vector) với hệ thống tuyến tính Các điểm này được gọi là vector hỗ trợ, vì chúng ảnh hưởng đến vị trí và hướng của hệ thông tuyến tính Cuối cùng, tối ưu hóa lề (margin) của hệ thống tuyến tính Lễ là khoảng cách giữa hệ thông tuyến tính và các điểm đữ liệu gần nhất từ mỗi lớp Mục tiêu của model

Khoảng cách giữa điểm đữ liệu x ¡ và ranh giới quyết định có thé được tính như sau:

llw|| đại điện cho chuân Eucliđe của vectơ trọng số w Định mức Euclide của vectơ pháp tuyến W [14]

s* KNN

K-nearest neighbor ( KNN ) là một trong những thuật toán học có giám sát đơn giản nhất trong Machine Learning Ý tưởng của KNN là tìm ra output của đữ liệu dựa trên thông tin của những dữ liệu training gần nó nhất [I5]

Quy trình làm việc của KNN gồm những bước sau Bước đầu tiên, chúng ta sẽ xác định tham số K băng cách sử dụng số láng giềng gần nhất Tiếp theo, chúng ta tính toán khoảng cách đối tượng cần phân lớp với tất cả các đối tượng trong training data Sau đó, chúng ta sẽ sắp xếp khoảng cách theo thứ tự tăng dần đồng thời xác định K láng giềng gần nhất với đối tượng cần phân lớp rồi lay tat cả các lớp của K láng giềng gân nhất Cuối cùng, dựa vào phần lớn lớp của K ta sẽ xác định được lớp cho đối tượng cần phân lớp

Thuật toán KNN cho rằng những dữ liệu tương tự nhau sẽ tồn tại gần nhau trong một không gian, từ đó công việc của chúng ta là sẽ tìm k điểm gần với dữ liệu cần kiêm tra nhất Việc tìm khoảng cách giữa 2 điểm cũng có nhiều công thức có thế sử đụng, tùy trường hợp mà chúng ta lựa chọn cho phù hợp Đây là 3 cách cơ bản đề tính khoảng

cách 2 điểm dữ liệu x, y có k thuộc tính [16]:

Trang 8

Distance functions lk

l6»)

X; — Y;

Hochreiter va Schmidhuber da phat minh ra mang Long Short-Term Memory (LSTM)

vào năm 1997 [L7] LSTM là một biến thê của mạng thần kinh tái phát hoặc RNN và

được chứng minh là hoạt động tốt với các mô hình học tập và ghi nhớ theo thời g1an LSTM được thiết kế để xử lý vẫn đề phụ thuộc lâu dài về vấn đề tiêu biến và bùng nỗ gradient trong RNN [18] [19] LSTM có bốn thành phần chính bao gồm Cell State (Ct), Hidden State (Ht), Forget Gate (Ft) va Input Gate (It) va Output Gate (Ot)

Hinh 1: Hinh xién cua LTSM [20]

Nhu duoc hién thi trong Hình 1, đây là phương thức vận hành mô hình LSTM thông

thường Các công thức như sau [21]:

Trang 9

Ft, It 1an lượt là viết tắt cua Forget Gate va Input Gate (co chế quên và lưu vào bộ nhớ dài hạn), lúc này máy tiếp tục làm mới kiến thức về cuôn sách trong trí nhớ dài hạn của não (ví dụ: nêu một nhân vật chết, có thế quên một số chi tiết nhất định về nhân vật này) Ot là viết tắt của Output Gate (cơ chế truy xuất từ trí nhớ đài hạn) Thay vi lúc nào cũng sử dụng toàn bộ trí nhớ dài hạn, máy sẽ học những phần nào cần tập trung vào một thời điểm nhất định Ct là viết tắt của Cell State (trí nhớ đài hạn) dùng để lưu trữ các chỉ tiết cần thiết đề máy hiểu được ngữ cảnh sau này mà không cần lật trang lại (tên, nơi ở, mối quan hệ giữa các nhân vật ) Ht là viết tắt cba Hidden State (trí nhớ ngắn hạn) dùng đề lưu trữ các chỉ tiết nhất định cụ thể cho cảnh mà máy đang đọc cho đến khi cảnh này kết thúc và quên nó đi (trời đã sáng, hai nhân vật đã đi đạo )

Nghiên cứu này chúng tôi đã lựa chọn mô hình LSTM của RNN để dự đoán giá cô

phiếu Bộ nhớ ngắn hạn dài (LSTM) là kiến trúc RNN phô biến, được giới thiệu bởi

Sepp Hochreiter và Juergen Schmidhuber [22] Mô hình LSTM có thê giải quyết được vấn đề mà mô hình RNN cơ bản không thé dự đoán được trạng thái hiện tại của mô hình LSTM có ba “ô”: : công vào, công ra và công quên, giúp nó lọc và đự đoán thông tin mà mạng nơ-ron yêu câu [23]

3.2 Description of Data

Bộ đữ liệu này bao gồm thông tin về giá chứng khoán lịch sử của các mã chứng khoán được lấy từ thư viện vnstock Dữ liệu được thu thập từ các ngày giao dịch và bao gồm các thông tin quan trọng như giá mở cửa (open), giá cao nhất trong ngày (high), gia thấp nhất trong ngày (low), giá đóng cửa (close) và khối lượng giao dịch (volume) Mỗi mã chứng khoán được đại diện bởi một tập hợp các thông tin giá trị tương ứng với các chỉ số trên Giá mở cửa là giá chứng khoán trong ngày giao dịch khi thị trường mở cửa, giá cao nhất là mức giá tôi đa mà cô phiếu đã đạt trong ngày, giá thấp nhất là mức giá tối thiêu mà cổ phiếu đã đạt trong ngày, và giá đóng cửa là giá chứng khoán khi thị trường đóng cửa trong ngày đó Khối lượng giao dịch chỉ ra tổng số cô phiếu đã được giao dịch trong ngày

Đề minh họa cho toàn bộ quá trình, chúng tôi lựa chọn mã chứng khoán cụ thé la mã chứng khoán của Ngân hàng TMCP Ngoại thương Việt Nam (Vietcombank) có ký

hiệu là VCB Dữ liệu đầu vào được lấy từ ngày 01- 01- 2021 đến 24- 11- 2023

Trang 10

Bảng 1: Mẫu dữ liệu giao dịch từ 04/01/2021-15/01/2021 chưa qua xử lý

open 64269

64930

65250 68200

70830

68600

69250 69250

68860

68730

high 65450 65980 69650 71160 70830 69320 69250 69580 68990

68800 63810 64930 65120 68200 68530 68270 68340 68200 67750 67220

low close 65120 68860 70170 68730 68530 69250 68730 68140 67680

64930 855900

739200 2080400 889000 963900 847400 634900 1064200 832200 1099800

volume ticker VCB VCB VCB VCB VCB VCB VCB VCB VCB VCB

Bảng 2 và 3 : Số liệu thống kê mô tả của tập đữ liệu

count mean

std

min

25% 50% 75%

max

open 724.000000

93700.000000

high 724.000000 72037.839779 8914.756598 55290.000000 65160.000000 68820.000000 78260.000000 93700.000000

low

724.000000 70319.834254 8947.576744

52500.000000

63610.000000 66890.000000 76332.500000 92500.000000

close

724.000000 71220.219613 8977.621711 52500.000000 64379.000000 67740.000000 77412.500000 93400.000000

volume

7.240000€+02 1.232381e+06 6.559934e+05 1.139000e+05 8.001500e+05 1.092400e+06 1.504075e+06 6.274200e+06

Trang 11

<class 'pandas.core.frame.DataFrame ' > RangeIndex: 724 entries, @ to 723

Data columns (total 6 columns): # Column Non-Null Count Dtype 9 time 724

1 open 724

2 high 724

3 low 724 4 close 724 5 volume 724

dtypes: int64(5), memory usage: 34

liệu là int64 và tat cả các cột đều không có giá trị null

3.3 Process Diagram

Bài viết nhằm mục đích nghiên cứu và đánh giá mức độ hiệu quả của các mô hình AI trong việc ứng dụng tiến hành dự báo giá của các mã chứng khoán được niêm yết ở Việt Nam Nghiên cứu này đã sử dụng các phương pháp phân tích khác nhau, bao gồm một số kỹ thuật ML truyền thống và kỹ thuật DL với khả năng học các cấu trúc thông tin phức tạp của bệ dữ liệu, đưa ra những dự đoán từ dữ liệu chứng khoán lịch sử Quy trình tổng hợp của nghiên cứu sẽ được thể hiện ở Hình 2 đưới đây:

Ngày đăng: 27/08/2024, 12:12

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w