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

Khóa luận tốt nghiệp Hệ thống thông tin: Xây dựng mô hình dự báo giá chứng khoán Việt Nam bằng phương pháp học sâu cho chuỗi thời gian đa biến

83 1 0
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

Thông tin cơ bản

Tiêu đề Xây dựng mô hình dự báo giá chứng khoán Việt Nam bằng phương pháp học sâu cho chuỗi thời gian đa biến
Tác giả Nguyễn Thành Nội, Vừ Quang Huy
Người hướng dẫn PGS.TS Nguyễn Đinh Thuận, Th.S Đỗ Duy Thanh
Trường học Trường Đại học Công nghệ Thông tin - Đại học Quốc gia Thành phố Hồ Chí Minh
Chuyên ngành Hệ thống Thông tin
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2023
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 83
Dung lượng 44,18 MB

Cấu trúc

  • 2.2.2 Cách kiểm định tinh dừng của chuỗi thời gian (0)
  • 2.2.3 Biến đồi chuỗi không dừng thành chuỗi dừng (0)
  • 2.3. DO do WGC LONG nh ca (0)
    • 2.3.2 Akaike Information Criterion (ẠC)..........................-- -s++-sss+<ssx+sssxss 15 2.3.3. Bayesian information criterion (BèC)............................-----ô ô<< ô<++<e+ss 16 CHƯƠNG 3 CÁC PHƯƠNG PHÁP DỰ ĐOÁN.......................-cccccccvcierrrrrrrrrrrrre 18 3.1. Phương pháp dự đoán chuỗi thời gian đa biến (24)
    • 3.1.1 Mô hình thống kê Vector Autoregression [1 I] (27)
    • 3.1.2 Mô hình hồi quy máy học ......................----- 2-2 222 £+£££ke£x+rxsrxsrssrez 21 3.1.3. Mô hình học sâu..........................--- + 1211113222311 1 11k 11 server 25 3.2. _ Phương pháp dự báo chuỗi thời gian dài.......................---- 2 5-5 5s s+s+se£s 37 (30)
    • 3.2.1 Transformer [Š],...........................----- -- cc 113333321 EEEE+EEESEEEkkeessseee 37 (46)
    • 3.2.2 Autoformer [[ÍÓ ]..............- - - - - - - - - << << << + + 1 *EE E3 EEEEEEEEEEkEeeeeeesesssszzzzxsxxe 42 CHƯƠNG4_ THỰC NGHIỆM VÀ ĐÁNH GIA ......................-----:©-cc:+2cv+vssrxvessrx 47 ah (51)
    • 4.1.1 Nguồn dữ liệu...........................--- 2-52 22EE2EESEECEEEEEEEEEEEEEEEEErkerkrrree 41 (56)
    • 4.1.2 Tiền xử lý dit liệu...................... ---- 2-52 2222k E211 21x EEkerrei 48 4.2. _ Thiết lập cho quá trình thực nghiệm ......................-- 2-5 ©52+5z+++cxe+se+: 49 4.3, Độ đo đánh giá.................................. Ăn HH TH Tnhh HH như 50 4.4. Két quả và thảo luận..........................----- 2+2 ++EEEEEEEE2 2217121211211 re 50 (0)
    • 4.4.1 Kết quả thực nghiệm dự báo chuỗi thời gian đa biến (59)
    • 4.4.2 Kết quả thực nghiệm dự báo chuỗi thời gian dài (62)
  • CHUGONG 5 UNG DUNG c0 (0)

Nội dung

Đề tài nghiên cứu sẽ hướng đến việc nghiên cứu va ứng dụng các mô hình chuỗi thời gian đa biến dé sử dụng các mã cổphiếu có ảnh hưởng lớn này phục vụ cho dự báo chỉ số VN Index 30 với cá

DO do WGC LONG nh ca

Akaike Information Criterion (ẠC) -s++-sss+<ssx+sssxss 15 2.3.3 Bayesian information criterion (BèC) -ô ô<< ô<++<e+ss 16 CHƯƠNG 3 CÁC PHƯƠNG PHÁP DỰ ĐOÁN .-cccccccvcierrrrrrrrrrrrre 18 3.1 Phương pháp dự đoán chuỗi thời gian đa biến

Tiêu chí thông tin Akaike được đặt theo tên của nhà thống kê người Nhật Bản

Hirotugu Akaike Bây giờ nó tạo thành cơ sở của một mô hình cho các nên tảng của thống kê Tiêu chí thông tin Akaike (AIC) là công cụ tinh sai số dự đoán dé lựa chon giữa các mô hình thông kê hoặc kinh tế lồng nhau Về cơ bản, AIC là một thước đo về chất lượng của mỗi mô hình kinh tế có sẵn khi chúng liên quan đến nhau cho một tập dữ liệu nhất định.

AIC được thành lập dựa trên lý thuyết thông tin Khi mô hình thống kê được sử dụng đề thê hiện quá trình tạo ra dữ liệu, việc biểu diễn gần như không bao giờ chính xác Vì vậy một SỐ thông tin sẽ bi mất, AIC ước tính lượng thông tin tương đối bị mắt, mô hình mat càng ít thông tin thì chất lượng của mô hình đó càng cao.

AIC=2k — 2 * In(likelihood) Trong đó: e In(likelihood) là một chỉ tiêu đánh giá gọi là hợp lí cực đại. e klà số lượng tham số.

Nếu cỡ mẫu nhỏ thì có thể dùng công thức tính AICc:

15 e klà số lượng tham số. e _n là số lượng mau.

Tiêu chí thông tin BIC hoặc tiêu chí thông tin Schwarz (hay SIC, SBC, SBIC) được phát triển bởi Gideon E Schwarz và được xuất bản trong một bài báo năm 1978, nơi ông đưa ra một lập luận Bayes cho việc áp dụng nó BIC là một tiêu chí dé lựa chọn mô hình trong số các mô hình hữu hạn; mô hình có BIC thấp hơn có khả năng là mô hình thực sự và được ưu tiên hơn Một phần, nó dựa trên hàm khả năng sảy ra và nó liên quan chặt chẽ đến tiêu chí Akaike (AIC)

Khi lắp các mô hình, có thể tăng khả năng sảy ra bằng cách thêm các thông số, nhưng làm như vậy có thé dẫn đến hiện tượng overfitting Cả BIC va AIC đều có găng giải quyết vấn đề này bằng cách đưa ra khoản phạt cho số lượng biến tham số trong mô hình, thời gian phat của BIC lớn hơn AIC.

Trong đó: e In(likelihood) là một chỉ tiêu đánh giá gọi là hợp lí cực đại. e klà số lượng tham số. e n là lượng mẫu.

Ví dụ tung đồng xu 10 lần và ngửa 7 lần vậy đồng xu có cân đối? Trong thực tế đây là trường hợp thường xảy ra khi mô hình hóa một quá trình ngẫu nhiên (real life stochastic process) khi không biết 0 mà chỉ có thé quan sát x Do đó cần ước tinh 0 dé giá trị này phù hợp với giá trị quan sát x.

Trong trường hợp ngược lại này giá trị của p là chưa xác định likelihood function sẽ việt như sau:

Likelihood sẽ là tập hợp của các parameter thỏa mãn các kết quả đầu ra quan sát được và bằng đúng xác xuất xảy ra của những quan sát này Theo đó ham likelihood được viết gần như hàm xác xuất với lưu ý là 0 chưa biết và X = x đã biết.

CHUONG3 CÁC PHƯƠNG PHÁP DỰ DOAN

3.1 Phương pháp dự đoán chuỗi thời gian đa biến

Mô hình thống kê Vector Autoregression [1 I]

Mô hình VAR: hay còn gọi là mô hình tự hồi quy véctơ (VAR) là một trong bốn phương pháp dự báo kinh tế dựa vào chuỗi dit liệu thời gian, bao gồm: e_ Mô hình hồi quy đơn phương trình © Mô hình hồi quy phương trình đồng thời © Mô hình trung bình trượt kết hợp tự hồi quy ( ARIMA) © Mô hình tự hồi quy vectơ (VAR)

Mô hình véc tơ tự hồi quy cho phép kiểm định tác động của các biến độc lập đến biến phụ thuộc, mô hình này được hồi quy phụ thuộc tương ứng vào giá trị quá khứ của từng biến Về bản chất VAR thật ra là sự liên kết của hai phương pháp: tự hồi quy đơn chiều (univariate autoregression — AR) và hệ phương trình ngẫu nhiên

VAR hay ở chỗ nó lay ưu điểm của AR là rất dé ước lượng bằng phương pháp tối thiểu hóa phan du (OLS) nó lay ưu điểm của SEs là ước lượng nhiều biến trong cùng một hệ thống Và đồng thời nó khắc phục nhược điểm của SEs là nó không cần quan tâm đến tính nội sinh của biến kinh tế (endogeneity) Tức là các biến kinh tế vĩ mô thường mang tính nội sinh khi chúng tác động qua lại lẫn nhau Thuộc tính này làm cho phương pháp cô điển hồi quy bội dùng một phương trình hồi quy nhiều khi bị sai lệch khi ước lượng Day là những lý do cơ bản khiến VAR trở nên phổ biến trong nghiên cứu kinh tế vĩ mô. Ưu — Nhược điểm của mô hình VAR se Uudiém o_ Đây là phương pháp đơn giản Tat cả các biến trong VAR đều là biến nội sinh. o Phép ước lượng đơn giản, phương pháp OLS thông thường có thé được áp dụng cho từng phương trình riêng rẽ.

18 o Các dự báo tính được bằng phương pháp nay, trong nhiều trường hợp, tốt hơn các dự báo tính được từ các mô hình phương trình đồng thời phức tạp hơn. e Nhược điểm o Do trọng tâm được đặt vào dự báo, các mô hình VAR ít phù hợp cho phân tích chính sách. o Thách thức thực nghiệm lớn nhất trong phương pháp xây dựng mô hình

VAR là lựa chọn khoảng trễ thích hợp Giả sử mô hình VAR ba biến và 8 độ trễ của mỗi biến trong từng phương trình Như vậy sẽ có 24 tham số trễ trong mỗi phương trình cộng với số hạng không đổi, và như vậy có tất cả

25 tham số Trừ khi cỡ mẫu lớn, ước lượng nhiều tham số sẽ sử dụng rất nhiều bậc tự do với tất các van dé khó khăn liên quan (Nếu mô hình VAR m phương trình với p giá trị trễ của m biến thì phải ước lượng tất cả là (m

+ pm2) thông sô). o Trong một mô hình VAR m biến, tất cả m biến nội sinh có tính dừng Nếu điều kiện này không được thỏa mã sẽ phải biến đổi đữ liệu một cách thích hợp (vi dụ bằng cách lấy sai phân bậc 1), việc này là không dé dang và kết quả của mô hình sẽ giảm đi độ tin cậy © Do các hệ số đơn lẻ trong các mô hình VAR ước lượng thường khó giải thích IRF phát hiện phản ứng của biến phụ thuộc trong hệ VAR đối với các cú sốc của các số hạng sai số Mặc dù giá trị sử dụng của phân tích IRF bị nhiều nhà nghiên cứu nghi ngờ, nó vẫn là trọng tâm của phân tích VAR.

Thuật toán VAR (Vector Autoregression) là một phương pháp dự báo trong lĩnh vực dự báo chuỗi thời gian đa biến Nó được sử dụng đề mô hình hóa và dự báo tương quan giữa các biến trong một chuỗi thời gian đa biến bằng cách xem xét sự phụ thuộc của mỗi biến vào các biến khác trong quá khứ.

Mô hình VAR(p) xem xét một chuỗi thời gian đa biến với p biến (p > Dé xây dựng mô hình VAR, đữ liệu lịch sử của các biến được sử dụng dé ước lượng các hệ số của mô hình.

Mô hình VAR(p) có dạng sau: ¥, = C+ A,Y,-1 + 4;Ÿ,_; +++ + Apft_p + &

Y,la vector chứa gia tri của các bién tai thoi diém t. c là vector hang số.

Ai, Ao, ôAp là cỏc ma trận hệ số. £, là vector nhiễu ngẫu nhiên tại thời điểm t

3.1.1.3 Phương pháp ước lượng mô hình VAR e Xét tính dừng của các biến trong mô hình Nếu chưa dừng thì xử lý kỹ thuật lay sai phân dé đưa về các chuỗi dừng e Lựa chọn khoảng trễ phù hợp (Dựa vào các ước lượng điều kiện thông tin như AIC, BIC) e Xem xét mức độ phù hợp của mô hình chạy ra (bằng việc kiểm định tính dừng của phần dư) Nếu phần dư của mô hình dừng thì mô hình nhận được phù hợp với chuỗi thời gian và ngược lại Mô hình VAR được xem là ôn định nếu có phần dư là một chuỗi dừng và tất cả nghiệm của đa thức đặc trưng đều nằm trong vòng tròn đơn vị hay các mô đun tính toán được đều có giá trị nhỏ hơn 1 Do đó, sau khi ước lượng VAR cần kiểm định tính 6n định của mô hình Việc xác định tính dừng của phần dư có thê dùng kiểm định nghiệm đơn vị e So sánh các mô hình phù hợp và lựa chọn mô hình hợp nhất

Khó khăn trong việc lựa chọn khoảng trễ thích hợp Nếu mô hình có k biến, và độ trễ là k thì sẽ có k?p hệ số góc và k hệ số chặn, khi k càng lớn thì số hệ số phải ước lượng càng tăng Giả sử, xét mô hình VAR có 3 biến và mỗi biến có 8 trễ đưa vào phương trình Như xem xét ở trên thì hệ số cần phải ước lượng là 3?.8 + 3 = 75 Và nếu tăng số biến và số trễ đưa vào mỗi phương trình thì hệ số phải ước lượng sẽ khá

Mô hình hồi quy máy học - 2-2 222 £+£££ke£x+rxsrxsrssrez 21 3.1.3 Mô hình học sâu - + 1211113222311 1 11k 11 server 25 3.2 _ Phương pháp dự báo chuỗi thời gian dài . 2 5-5 5s s+s+se£s 37

XGBoost (Extreme Gradient Boosting) là một thuật toán hoc máy cực kỳ mạnh mẽ và phô biến trong việc giải quyết các bài toán phân loại và hồi quy Nó là một biến thể cải tiến của thuật toán Gradient Boosting, nham tăng cường hiệu suất và tốc độ huấn luyện.

Cách hoạt động của XGBoost:

* Khoi tạo dự đoán ban đầu: XGBoost bắt đầu bằng một dự đoán ban đầu đơn giản, ví dụ như giá tri trung bình của nhãn trong tập dữ liệu.

* Xây dựng cây quyết định: XGBoost xây dựng một cây quyết định dé dự đoán sai số còn lại Mỗi cây quyết định có các quy tắc dựa trên các đặc trưng của dữ liệu.

- Tối ưu hóa độ lỗi: XGBoost tính toán độ lỗi giữa dự đoán ban dau và giá tri thực tế Nó sử dụng độ lỗi này đề tối ưu hóa cây quyết định, tìm kiếm các quy tắc tốt hon dé giảm độ lỗi. ằ Cap nhật dự đoỏn: Sau khi xõy dựng cõy quyết định, XGBoost cập nhật dự đoán băng cách thêm dự đoán của cây mới, nhân với một hệ số học Quá trình này được lặp lại cho tất cả các cây trong mô hình. ° _ Kết hợp các cây: Cuối cùng, XGBoost kết hợp các dự đoán từ tat cả các cây dé tạo ra dự đoán cuối cùng Đối với bài toán hôi quy, dự đoán cuối cùng là tổng của các dự đoán cây Đối với bài toán phân loại, XGBoost sử dung ham sigmoid dé chuyên đổi dự đoán thành xác suất. ằ Lap lại quỏ trỡnh: Quỏ trỡnh xõy dựng cõy, tối ưu húa và cập nhật dự đoỏn được lặp lại nhiều lần cho đến khi đạt được số lượng cây đã được xác định trước hoặc khi độ lỗi không thay đôi đáng kê.

Hình 3-1 Cấu trúc cơ bản của XGBoost Ưu điểm của XGBoost: e Hiéu suât cao: XGBoost thường cho kết quả dự đoán tot và có hiệu suât cao trên nhiêu bài toán Điêu này là do câu trúc mô hình của XGBoost và các kỹ thuật tối ưu hóa được áp dụng. e Xử lý dữ liệu lớn: XGBoost được thiết kế đề xử lý dữ liệu lớn với số lượng quan sát và đặc trưng lớn Nó có khả năng mở rộng tốt và có thê được tối ưu hóa đê chạy trên các câu hình phân tán. e Tu động xử lý các giá trị thiểu: XGBoost có khả năng tự động xử lý các giá trị thiếu trong dữ liệu mà không cần xử lý trước Thuật toán tự động tạo ra các quy tac dé xử lý giá trị thiếu trong quá trình xây dung cây quyết định. e Xác định độ quan trọng của đặc trưng: XGBoost cung cấp các phương pháp để tính toán độ quan trọng của các đặc trưng trong mô hình Điều này giúp bạn hiểu rõ hơn về tam quan trọng của từng đặc trưng và có thé tinh chỉnh mô hình dựa trên thông tin này. e Kết hợp với các mô hình khác: XGBoost có kha năng kết hợp với các mô hình học máy khác dé tạo ra các hệ thống hoc máy phức tạp Bạn có thé kết hợp XGBoost với các mô hình như mang neural dé tăng cường khả năng dự đoán.

Hạn chế của XGBoost: e Doi hỏi hiêu biệt vê siêu tham sô: XGBoost có nhiêu siêu tham sô quan trọng cân được điêu chỉnh và tinh chỉnh Điêu này yêu câu người dùng có hiệu biệt vê các siêu tham sô và có kỹ năng tìm kiêm và đánh giá các giá tri tối ưu cho chúng. e Thời gian huấn luyện: XGBoost có thé tốn nhiều thời gian huấn luyện, đặc biệt là khi áp dụng trên tập dữ liệu lớn với nhiều đặc trưng Việc tăng số lượng cây quyết định và độ sâu cây cũng có thé làm tăng thời gian huấn luyện. e©_ Dễ bị overfiting: Nếu không điều chỉnh tốt các siêu tham số, XGBoost có thé dé dang bị overfitting trên tập huấn luyện, dẫn đến hiện tượng mô hình không tổng quát hóa tốt trên dữ liệu mới. e Khó xử lý dữ liệu không cân bằng: XGBoost không tự động xử lý dữ liệu không cân bằng Nếu dữ liệu có mắt cân bằng giữa các lớp, bạn cần áp dụng các kỹ thuật cân bằng dit liệu hoặc điều chỉnh trọng số mẫu dé đảm bảo mô hình học tốt từ cả hai lớp.

Random Forest (Rừng ngẫu nhiên) là một thuật toán học máy được sử dụng trong bài toán phân loại và hồi quy Nó là một mô hình dự đoán dựa trên việc kết hợp dự đoán của nhiều cây quyết định (Decision Tree) độc lập.

Một Random Forest được tạo ra bằng cách xây dựng một tập hợp các cây quyết định độc lập, mỗi cây được huấn luyện trên một tập con ngẫu nhiên của dữ liệu huấn luyện Trong quá trình huấn luyện, mỗi cây quyết định sẽ được xây dựng bằng cách chia tập dữ liệu thành các phân nhóm dựa trên các đặc trưng của dữ liệu Quá trình chia nhánh dựa trên các tiêu chí như độ tương đồng giữa các mẫu và đặc trưng quan trọng nhất.

Khi có một điểm dữ liệu mới cần được dự đoán, Random Forest tính toán dự đoán của mỗi cây trong tập hợp và sau đó lấy kết quả dự đoán băng cách sử dụng đa số

23 phiếu bầu (voting) hoặc trung bình (trong trường hợp hồi quy) của các cây Điều này giúp giảm thiểu tác động của các nhiễu và tăng tính ổn định và chính xác của mô hình.

Feature(f) Feature(f) © “ a 4 el fe b og b ó h é b đ h fe} b ở bò Oo 8 ó 6 ó à ó â Ó Ò Ò Ò ỏ le) 00

Hình 3-2 Cầu trúc Random Forest

Một số lợi ích của Random Forest bao gồm: e Xu lý dữ liệu thiếu: Random Forest có khả năng xử lý dữ liệu thiếu một cách tốt hơn so với một số mô hình khác. e Tính ôn định: Random Forest ôn định và ít bi anh hưởng bởi đữ liệu nhiễu. e _ Đánh giá độ quan trọng của đặc trưng: Random Forest cung cấp thông tin về độ quan trọng của từng đặc trưng trong quá trình dự đoán. e Khả năng mở rộng: Random Forest có thể được mở rộng dé xử lý các tác vụ phân loại và hồi quy phức tạp.

Một sô hạn chê của Random Forest bao gôm: e Tính chậm: Random Forest có thê tốn nhiều thời gian huấn luyện so với một số mô hình học máy khác, đặc biệt là khi sé luong cay va sỐ lượng đặc trưng lớn.

24 e Sử dụng bộ nhớ: Random Forest yêu cầu lưu trữ toàn bộ cây quyết định trong bộ nhớ, do đó có thể đòi hỏi một lượng bộ nhớ lớn, đặc biệt khi xử lý các tập dữ liệu lon. e Không tốt với dữ liệu không cân bằng: Khi có sự mất cân bằng mạnh trong các lớp dữ liệu, Random Forest có thé có xu hướng chọn các lớp đa số và bỏ qua các lớp thiểu số, dẫn đến sự thiếu cân bằng trong dự đoán. e Dễ bị overfitting: Mặc dù Random Forest có khả năng giảm overfitting so với cây quyết định đơn lẻ, nhưng nếu số lượng cây quá lớn hoặc không có điều chỉnh thích hợp, nó có thé dẫn đến overfitting. e Khong tạo ra dự đoán chính xác cho dữ liệu ngoài phạm vi huấn luyện:

Random Forest không thé dự đoán một điểm dữ liệu nằm ngoài phạm vi của dữ liệu huan luyện, vì nó chỉ dựa trên các cây đã được huấn luyện trên dit liệu đó. e Khó hiểu: Mô hình Random Forest khá phức tạp và khó dé hiểu và giải thích so với một cây quyết định đơn lẻ.

Một trong những cách tiếp cận phổ biến dé dự báo chuỗi thời gian đa biến là tận dụng đồ thị Trong ngữ cảnh của biểu diễn đồ thị, mọi biến chuỗi thời gian trong bộ dữ liệu được mô tả là các nút trong đồ thị và cạnh là biểu diễn tượng trưng cho mối quan hệ giữa 2 chuỗi thời gian trong cấu trúc đô thị Cau trúc của đồ thị được hình thành dưới dạng ma trận kè dé biểu diễn đồ thị trong mô hình.

Node embeddings /static features Graph Learning Layer

Residual Connections Residual Connections Residual Connections

1x1 [ |JJTC Module GC |JJTC Module GC „ô-_ | TC Module GC

Conv (d=q°) | Module (d=q?) | Module (d=qTM) | Module

Inputs: ¥ x €RTinxNxP Skip Connections | Skip Connections Skip Connections

Hình 3-3 Kiến trúc tổng quan của MTGNN-I9

Transformer [Š], - cc 113333321 EEEE+EEESEEEkkeessseee 37

Cơ chế self-attention là một co chế attention trong đó tất cả các phan tử trình tự đầu vào so sánh với nhau ở các vị trí khác nhau dé biéu diễn mức độ quan trọng giữa các điểm dit liệu này Đối với chuỗi đầu vào X € R!X#với L là độ dài chuỗi và d là chiều của dit liệu, đầu vào cho cơ chế attention nay bao gồm các giá tri Query, Key và Value Các giá trị Query, Key, Value là phép chiếu tuyến tính của input X trên các chiều không gian kích thước đự, dự, đ„tương ứng như các phương trình sau:

Với Q,K € R!X4+ VU € REX, Mứ,, W, € RIX4 WE RIX,

Hình 3-11 Mô ta chỉ tiết Scale dot attention

Sau các phương trình chiêu (17) cho các giá tri Query, Key va Value trên, giờ đây, kêt quả của self-attention đã có thê tính toán Mô hình Transformer sử dụng Scaled- dot self-attention để tính toán đầu ra được mô tả theo như hình minh họa lẫn công

37 thức cụ thể dưới đây:

Cơ chế self-attention trong Transformer là quá trình thực hiện tuần tự phương trình chiếu (17) và Scaled Dot Attention (18) Do đó, dé sử dụng lại sau self-attention được ký hiệu thành SelfAttention(.)

{ Weights J number of tokens d, = d, number of tokens 1

Cross-attention tương tự như self-attention ngoại trừ đầu vào của cross-attention là các giá trị key, query, value đến từ các nguồn khác nhau Cross-attention được ký hiệu là CrossAttention(.)

Wi raw attention weights mask XI Xa X3 X4 X5 X6

Hình 3-13 Minh họa về lop masking cho self-attention

Trường hop self-attention cần lớp masking cho thứ tự trước sau dé ngăn chặn các dữ liệu từ một điểm có khả năng truy cập được giá tri tại các điểm trong tương lai, đặc biệt là trên các lớp decoder khi decoder phải đảm bảo dự đoán vi trí i chỉ có thể phụ thuộc vào dit liệu quá khứ đã biết có thứ tự thời gian nhỏ hơn i Trong trường hợp này, các giá tri self-attention được chỉnh sửa với lớp masking thứ tự biểu thị là SelfAttention(X, masking) Công thức cho cơ chế attention với lớp masking giống như self-attention mặc định, ngoại trừ quy trình lấp đầy giá trị âm vô cực với những điểm dữ liệu có masking thể hiện thứ tự phía sau khi tính điểm naskFill(QKT) ụ

Vax Để cung cấp kha năng embedding theo vị trí về thời gian cho quy trình cần

Self Attention(X, masked) = Softmax( masking, bài báo cáo sẽ sử dung embed các tinh năng thời gian dưới dang masking.

Cụ thể trong dữ liệu của đầu vào được thu thập, đối với mỗi điểm dữ liệu sẽ có ngày biểu thị vị trí của đữ liệu đó Do đó, ngày được nhúng thành dưới dạng vectơ time feature được tính như sau: timeFeature = [dow, dơm, doy] dayOƒWeek

Vi phương trình trên được mô tả với single head attention, với phiên ban multi- head để song song hóa quá trình tính toán cũng có thê được biểu diễn như sau:

Multihead(Q,K,V) = Woutpue Concat (heady, head;) với head; = Self Attention(Q;, K;, V;)

LAdd & Norm _) : 25516:Roinni Multi-Head

Nx | Gasca Nom] Add & Norm Masked

Multi-Head Multi-Head Attention Attention †_ 7

Hình 3-15 Kiến trúc tong quát của Transformer)

40 Đâu vào của bộ encoder và decoder được chuân bị với một lớp embedding như sau:

Với Xeni Xaei 6 R'TM41a đầu vào bộ encoder va đầu vào bộ decoder có chuỗi là một phần của chuỗi đầu vào 1 < L và Xạ € R9*#(O là độ dài đầu ra) là các phan trống được điền bằng 0.

3.2.1.2.1 Encoder Đối với đầu vào của chuỗi thời gian đã embedding được sử dụng là X„„;với Xeni € RL*#L là độ dai đầu vào chuỗi, d là kích thước của hidden dimension Các bước sau đây là quy trình của một lớp encoder:

Sin = Norm(Self Attention(Xoni) + Xeni)

Lớp bộ encoder tính toán trọng số self-attention của đầu vào của encoder với các key, query và value đều đến từ cùng một nguồn chính là đầu vào đó Do đó, mỗi vị trí trong chuỗi thời gian có thê tham gia vào tất cả đề tính attention cho các vị trí khác nhau Trong cài đặt nhiều lớp encoder, đầu vào của bộ encoder X„„;là đầu ra S2, tir lớp trước đó Với nhiều lớp mã hóa, self-attention có thé tận dụng dé tìm hiểu tam quan trọng của các vi trí khác dé trích xuất sự phụ thuộc.

3.2.1.2.2 Decoder Đầu ra từ lớp mã hóa cuối cùng sẽ được sử dụng làm đầu vào dé tính toán cross- attention Một lớp mã hóa decoder được mô tả bằng một chuỗi các phương trình sau:

Sie = Norm(Self Attention(Xqe;,masked) + Xaei) (19)

Sa = Norm(CrossAttention(Sje, Sen, Son) + Ste)

Cac lớp bộ giải mã của Transformer bao g6m việc tính toán self-attention của dau

41 vào bộ giải mã với các lớp masking dé ngăn thông tin rò rỉ từ đữ liệu trong tương lai. Theo trình tự, kết quả S4„sau khi cộng và chuẩn hóa từ phương trình đầu tiên của (19), được sử dung dé tính toán cross-attention giữa St, voi S„, đầu ra của encoder. Mục tiêu của phương trình của cross-attention là tìm hiểu mô hình giữa mối quan hệ từ dit liệu lịch sử, được biéu thị thông qua đầu ra của encoder và các giá trị dự đoán. Phần còn lại của bộ giải mã vẫn giống như các thành phần khác của Transformer. Đầu ra cuối cùng của lớp Decoder cuối cùng được đưa vào lớp ánh xạ tuyến tính dé định hình lại thành kết qua dự đoán.

Autoformer [[ÍÓ ] - - - - - - - - - << << << + + 1 *EE E3 EEEEEEEEEEkEeeeeeesesssszzzzxsxxe 42 CHƯƠNG4_ THỰC NGHIỆM VÀ ĐÁNH GIA -:©-cc:+2cv+vssrxvessrx 47 ah

3.2.2.1 Phân rã chuỗi (Series decomposition) [29]

Dé dat được mô hình hữu ich cho dự báo dai han, phương pháp nay tận dụng ý tưởng phân tách chuỗi thời gian thành các phần theo mùa và theo xu hướng Vì đường trung bình động (moving average) được sử dụng dé trích xuất xu hướng trong một khoảng thời gian nên phần mùa vụ được coi là dữ liệu sau khi loại bỏ thành phần chu kỳ xu hướng Dé thé hiện sự phân tách trong mô hình, Average Pool được sử dụng làm phép tính trung bình động Đối với chuỗi đầu vào có độ dài L và kích thước d,

Với X,,X, € R'*“#lần lượt là phan mang yếu tố xu hướng va phan đữ liệu mang yếu tô mùa vụ sau khi phân tách tương ứng Phần Padding(.) trong (20) được sử dụng để giữ nguyên độ dài cho chuỗi đầu ra.

Dé sử dụng lại trong bài báo cáo này, SeriesDecomposition(.) sẽ được ký hiệu của sự phân tách chuỗi với cặp giá trị đầu ra là X,, X, tương ứng.

3.2.2.2 Tự tương quan (Auto-correlation)

Cơ chế tự tương quan hay tương quan chuỗi (Auto-Correlation) được sử dung dé thay thé self-attention trong mô hình Autoformer Cơ chế này có thé được chia thành hai giai đoạn chính Giai đoạn đầu tiên là khám phá sự phụ thuộc dựa trên thời gian

42 và giai đoạn thứ hai là tổng hợp thời gian trễ.

Do lý thuyết về quá trình ngẫu nhiên [6], tương quan tự động là mối tương quan của tín hiệu với bản sao bị trễ của chính nó dưới dạng độ trễ hàm Đối với quá trình thời gian rời rac {X +}, giá trị tự tương quan được biéu diễn như sau

Ryx(t) thé hiện mối tương quan giữa {X :} và độ trễ thời gian trễ của chính nó {

Xt—r } Đề đạt được tốc độ tính toán hiệu quả cho các phụ thuộc dựa trên thời gian thông qua tương quan chuỗi, phép biến đổi Fourier nhanh (Fast Fourier Transform) [14] dựa trên đó được áp dụng như phương trình sau:

Biến đổi Fourier nhanh biểu thị là Fp(f) = FFT (X(t))

SwŒ) = Fe QF) =] Xe Pde | X,e"2eVá

Rye ©) = IFFT(Sx()) = | Sex (fF) e”"4ƒ

Trong đó r € {1, ,L}, F¿(ƒ) biểu thi phép toán liên hợp của phép biến đổi Fourier nhanh, IFFT là nghịch đảo của phép biến đồi Fourier nhanh Sự tự tương quan được tính toán với tất cả các độ trễ trong {1 L} trong một lần duy nhất dựa trên FFT.

Khi xử lý tự tương quan như một giải pháp thay thế cho self-attention trong Autoformer với truy vấn Q, khóa K và giá trị V, mô hình cũng phải phải tính toán sự tự tương quan giữa các giá trị truy vấn Q và khóa K sau phép chiếu Sau khi nắm bắt các phụ thuộc dựa trên khoảng thời gian Rg x(T), giai đoạn tiếp theo cho lớp attention là tông hợp độ trễ thời gian Chỉ top k điểm thời gian có kết quả tự tương quan cao nhất T¡|í € {1, k} được ghi lại để tạo đầu ra cho cơ chế attention và k được tính là k = |e x log L| với e là siêu tham số có thé điều chỉnh Đầu ra Auto-Correlation attention được tính như phương trình dưới đây:

Với Roll(V,r)đại diện cho hoạt động mà phần tử V được dịch chuyền với độ trễ thời gian 7.

Vi phương trình trên được mô tả với single head attention, với phiên bản multihead dé song song hóa quá trình tính toán cũng có thé được biéu diễn như sau:

Multihead(Q,K,V) = Woutput Concat (heady, head„) với head; = AutoCorr(Q;, K;, V;)

\ Auto- Series Feed Series Part Zero

Auto- Series ÿ Auto- Series Feed Series ie 7 TT 7en Correlation -” Pe i Decomp Forward i Decomp

AA x2 i J 7 input Data Mean uoyoIpaid

Hình 3-16 Kiến trúc của Autoformer! Đối với đầu vào của chuỗi thời gian được thực hiện embedding như Xvới X €

R'*#L là độ dai đầu vào chuỗi, d là kích thước của chiều không gian Với điều kiện 1 là độ dài chuỗi đánh dau mà 1 < L, chuỗi đánh dấu nay sẽ được sử dụng dé trích xuất các thành phần xu hướng lặp lại và các thành phần mùa vụ thông qua phân tách chuỗi. Đâu vào của bộ encoder được xây dựng như sau:

Với Xens Xen € Ra lần lượt phan theo mùa và xu hướng cho lớp encoder thông qua quá trình phân tách chuỗi đánh dấu va Xo, Xmean € R9*# (O là độ dài đầu ra) lần lượt là phần dữ liệu trống được điền bằng 0 và giá trị trung bình của X. XaesXaet 6 RÚ†9)X# là đầu vào theo mùa và xu hướng cho lớp decoder.

Encoder tập trung vào mô hình để trích xuất thành phần mang yếu tổ mùa vụ theo mùa vụ Đầu ra của bộ mã hóa chứa thông tin theo mùa trong quá khứ và sẽ được sử dụng để giúp bộ giải mã tạo mẫu hình của chuỗi thời gian theo mùa vụ cho dự đoán:

Sản,_ = SeriesDecomp(AutoCorr(X) + X) Sẩn,_= SeriesDecomp(FeedForward(Si,) + Sdn

Decoder bao gồm hai phan: cấu trúc tích lũy cho các thành phan theo chu kỳ xu hướng và cơ chế tương quan tự động xếp chồng cho các thành phần theo mùa, được hiển thị như công thức dưới đây:

Sie, Tae = SeriesDecomp(AutoCorr(Xa¿s) + Xaes) (21) Sao, TT, = SeriesDecomp(AutoCorr (Ste, Sen) + Ste) (22)

Se Tago = SeriesDecomp(FeedForward(S4,) + Sg.) (23)

Tae = Xaet + Wy * Tae + Wz * Tẩ, +Ws*Tae (24)

Mỗi lớp của decoder chứa tự tương quan bên trong tại (21) va tự tương quan giữa encoder-decoder (22) giữa phan theo mùa S},va trích xuất theo mùa từ lớp encoder cuối cùng Điều này có thé cải thiện dự đoán và sử dụng thông tin theo mùa trong quá khứ tương ứng Mô hình trích xuất xu hướng (23) từ thành phần xu hướng của đầu vào bộ decoder với các biến xu hướng ấn trung gian trong decoder, cho phép

Autoformer tinh chỉnh dần dự đoán xu hướng và loại bỏ thông tin nhiễu dé khám phá các yếu tố phụ thuộc theo thời gian trong cơ chế tự tương quan Khi cài đặt decoder

Autoformer thành nhiều lớp, đầu vào bộ decoder Xges, XaerSé được thay thé bằng lớp decoder trước đó Kết quả dự đoán là sự kết hợp tổng của các thành phần theo mùa và xu hướng tông hợp với phương trình (24).

CHƯƠNG 4 THỰC NGHIỆM VÀ ĐÁNH GIÁ

Nguồn dữ liệu - 2-52 22EE2EESEECEEEEEEEEEEEEEEEEErkerkrrree 41

Dữ liệu các chỉ số VN30 và một số cô phiếu thuộc VN30 (BID, BVH, CTG, FPT,

GAS, HPG, KDH, MBB, MSN, MWG, NVL, PDR, PNJ, REE, SBT, SSI, STB, TCH,

VCB, VIC, VNM) từ năm 2015 — 2022 bao gồm 1500 điểm dữ liệu được lay từ nguồn investing.com với dang file csv.

Investing.com Senin / Fee Son

Daily vẻ, Download Data [ 05/22/2023 - 06/21/2023 | Ey]

Date = Price Open High Low Vol Change %+ TELA 27245 +534% 161L37M © 06/21/2023 1,101.98 1,104.24 1,106.90 1,101.38 73.04K -0.2196 AMD 11893 -096% 5851M ©

0612012023 1,104.27 1,098.92 1,104.27 1,095.38 145.93K +0.4996 AMZN 12578 +023 550M © 06/19/2023 1,098.94 1,110.01 111.21 1,098.31 193.10K -0.9186 AAPL 18501 +005% 4893M © 06/16/2023 1,109.06 1,108.59 1,125.62 1,105.74 320.74K +0.049 NVDA 43808 +2619% 4475M © 06/15/2023 1,108.57 1,110.52 1,113.23 1,104.60 171.34 0.18% MSFT 338.05 -125% 2599M © 06/14/2023 1,110.60 1,116.53 1,123.86 1,110.60 230.82K 0.43% META 28433 +119% 2052M © 06/13/2023 1,115.39 1,110.95 1,115.39 1,108.50 237.70K +0.52%

0/08/2023 1,092.46 1,107.86 1,110.87 1,092.46 279.41K -1.20% How to trade on the market by using chart

Forex Trading 101: Your Ultimate Trading nein2I2a22 1 noe ne + n74 R1 + non 22 1 n7a or 282 BRU ase a Aner

Hình 4-1 Lay dữ liệu từ trang investing.com

Với mỗi mã cô phiếu cũng như chỉ số VN Index 30 sẽ có bộ dữ liệu được lấy từ trang web investing.com với các thuộc tính bao gồm: ngày (Date), giá chốt đóng cửa (Price), giá mở cửa (Open), giá cao nhất trong ngày (High), giá thấp nhất trong ngày (Low), khối lượng giao dich (Vol), tỉ lệ phần trăm thay đổi so với ngày trước

Vi dụ về bộ dit liệu của chỉ số VN Index 30 (tương tự với các bộ đữ liệu của các mã cô phiếu khác)

Bảng 4-1 Dữ liệu mẫu của bộ dữ liệu VN Index 30

Date Price Open High Low Vol Change %

4.1.2 Tiền xử lý dữ liệu

Dữ liệu sau khi được tải xuống tat cả bao gồm 21 mã cô phiếu và chỉ số VN Index

30, được lấy giá đóng cửa và nối với nhau thành 1 dataframe duy nhất Bên cạnh đó còn thực hiện xóa các dòng dit liệu bị thiếu (trường hợp một số mã cổ phiếu có thời gian lên sàn chứng khoán chậm hơn các mã cô phiếu khác) Dataframe sau khi được làm sạch được lưu thành file csv tổng hợp dé sử dụng.

Vi dụ về dataframe sau quá trình tiền xử lý với từng cột chứa giá đóng cửa của từng mã cổ phiếu cũng như chỉ số VN Index 30 như sau:

Bảng 4-2 Dataframe mẫu sau tién xử | lý

BID CTG FPT HPG | VCB VIC VNM VN30

Phương pháp về dự đoán chuỗi thời gian da biến sẽ sử dung nhiều biến chuỗi thời gian phục vụ cho việc dự đoán, trong bài toán hiện tại là chuỗi thời gian của các mã cô phiếu cùng chuỗi thời gian chỉ số VN Index 30 Trong phần thực nghiệm, các mô hình đa biến sẽ so sánh với mô hình đơn biến, các mô hình đơn biến cũng sẽ được tiền xử lý tương tự với mô hình đa biến ngoại trừ việc bộ dit liệu chỉ chứa 1 chuỗi thời gian dé phục vụ dự đoán Ví du ta sẽ sử dung 1 biến chuỗi thời gian VN Index

30 để dự đoán giá trị tương lai ngày tiếp theo của VN Index 30.

Bang 4-3 Dữ liệu dau vào mô hình đơn biên

Với các phương pháp sử dụng hồi quy học máy và phương pháp hồi quy, các mô hình cần được thực hiện sai phân dé phuc vu tốt hon cho nhiệm vu của mô hình Các mô hình còn lại sử dụng Standard Scaler dé scale nhỏ dữ liệu cũng như chuẩn hóa.

Dữ liệu được tông hợp được chuyền đổi thành ma trận dưới kích thước n x T với n là số biến chuỗi thời gian, T là lookback window với mỗi điểm đữ liệu Các điểm dữ liệu được xếp chồng lên nhau Ví dụ điểm đữ liệu 1 tại thời điểm 1 đến I+T, điểm dữ liệu từ thời điểm 2 đến 2+T,

Việc chia dữ liệu train set và test set đối với thuật toán hồi quy bao gồm XGBoost Regression, Random Forest Regression va VAR theo tỉ lệ 8/2 Con đối với các model học sâu thì thiết lập kèm theo phan dữ liệu validation với tỉ lệ train/validation/test là 6/2/2 Các phần dữ liệu train, validation, test được chia theo khối trình tự thời gian.

Vi dụ bộ dữ liệu từ thời điểm T+1 đến thời điểm T+100 thì với tỉ lệ 6/2/2, phan dir liệu train là từ T+1 đến T+60, phan dif liệu validation từ T+61 đến T+80 và phan dữ liệu test từ T+81 đến T+100.

Trường hợp đặc biệt cho bài toán chuỗi thời gian dài với hai model là Autoformer và Transformer nhạy cảm với overfitting, nên ta phải thiết lập với số epoch thấp, learning rate nhỏ và tăng phần đữ liệu lên Vì vậy Autoformer và Transformer được chia với train/validation/test là 7.5/1/1.5

4.2 Thiết lập cho quá trình thực nghiệm

Các mô hình thực nghiệm được sử dụng trên máy tính hệ điều hành Ubuntu 22.04.2 LTS, CPU Intel Core i5-5300U với 2 nhân-4 luồng và 8Gb RAM không sử dụng

Các phương pháp học sâu trong quá trình huấn luyện được thiết lập sử dụng ADAM optimizer với MSE Loss và learning rate là 0,001, batch size 64, số lần lặp

1000 cho các phương pháp học sâu của bài toán đa biến bao gồm MTGNN, LSTNet,

Bởi vi các mô hình mang kiến trúc dạng với transformer dé dự báo thời gian dai dễ gặp phải overfit Chính vì vậy với các mô hình của bài toán dự báo chuỗi thời gian đài bao gồm Autoformer, Transformer được thiết lập với learning rate thấp 0.0001,

49 số epoch tối đa là 20, cùng với đó là cơ chế Early Stopping đi kèm với số epoch tối đa là 3 tính từ khi mô hình không được cải thiện.

Các số liệu dé tài sử dung dé đánh giá tính hiệu qua và độ chính xác của các mô hình bao gồm Root Mean Square Error (RMSE), Mean Absolute Error (MAE) và Mean Absolute Percentage Error (MAPE) và Hệ số tương quan (CORR). ¡=1 — yi)?

Trong đó n là số lượng mẫu thử nghiệm, 7, là giá trị dự đoán từ mô hình dự báo,

CORR = y, là giá trị thực tế Các chỉ số RMSE, MAE, MAPE với giá trị càng thấp và CORR với giá trị càng cao cho biết mô hình dự đoán đạt kết quả càng tốt.

4.4 Kết quả và thảo luận

4.4.1 Kết quả thực nghiệm dự báo chuỗi thời gian đa biến

Bảng 4-4 Bảng kết quản dự đoán chuỗi thời gian đa biến

VAR |XGBoost ng LSTNet |MTGNN | DSTP —_—

Kết quả dự đoán của chuỗi thời gian đa biến được thé hiện trong Bảng 4-4 , mô hình có kết quả dự đoán tốt nhất là LSTNet với MAPE nhỏ nhất là 1,12% và CORR cao nhất là 99,5% trong số tat cả các mô hình trong thử nghiệm LSTNet có MAPE

50 tốt hơn 0,01% và CORR tốt hơn 0,02% so với mô hình Vector Autoregression tốt thứ hai và vượt trội so với các mô hình học sâu khác.

Với cách tiếp cận dựa trên đồ thị, MTGNN được xem là mô hình có kết quả thấp nhất trong thí nghiệm này Dưới mô tả của các nghiên cứu của MTGNN tập trung vào các biến có tương quan không gian như các mối quan hệ địa lý bao gồm năng lượng mặt trời hoặc lưu lượng giao thông tại các vi trí khác nhau Vì vậy, với cấu trúc phức tạp của thị trường chứng khoán, đồ thị truyền thống không đủ dé thé hiện tính liên thông của chứng khoán mặc dù các lớp xây dựng đồ thị học được đề xuất bởi nhóm tác giả. Đáng ngạc nhiên là các phương pháp tiếp cận đa biến đối với mô hình hồi quy học máy và hồi quy thống kê cho thấy hiệu quả tốt trong việc dự đoán VN Index 30 và thậm chí vượt trội so với các mô hình hoc sâu khác ngoại trừ LSTNet Hiệu qua của mô hình có sử dụng quan hệ tuyến tính trên tập dữ liệu này là do tác động trực tiếp của giá cô phiếu có vốn hóa và tính thanh khoản cao đến các chỉ số thị trường chứng khoán bao gồm chỉ số VN 30 Các chỉ số chứng khoán được tính toán thông qua sự kết hợp của mọi cổ phiếu trong rõ của chúng theo công thức, theo sau là các tỷ lệ nhưng thay đổi theo thời gian Do đó, mô hình tuyến tính cũng có thé biểu thi mối quan hệ giữa chỉ số thị trường và các cô phiếu thành phần của nó.

Kết quả thực nghiệm dự báo chuỗi thời gian đa biến

Bảng 4-4 Bảng kết quản dự đoán chuỗi thời gian đa biến

VAR |XGBoost ng LSTNet |MTGNN | DSTP —_—

Kết quả dự đoán của chuỗi thời gian đa biến được thé hiện trong Bảng 4-4 , mô hình có kết quả dự đoán tốt nhất là LSTNet với MAPE nhỏ nhất là 1,12% và CORR cao nhất là 99,5% trong số tat cả các mô hình trong thử nghiệm LSTNet có MAPE

50 tốt hơn 0,01% và CORR tốt hơn 0,02% so với mô hình Vector Autoregression tốt thứ hai và vượt trội so với các mô hình học sâu khác.

Với cách tiếp cận dựa trên đồ thị, MTGNN được xem là mô hình có kết quả thấp nhất trong thí nghiệm này Dưới mô tả của các nghiên cứu của MTGNN tập trung vào các biến có tương quan không gian như các mối quan hệ địa lý bao gồm năng lượng mặt trời hoặc lưu lượng giao thông tại các vi trí khác nhau Vì vậy, với cấu trúc phức tạp của thị trường chứng khoán, đồ thị truyền thống không đủ dé thé hiện tính liên thông của chứng khoán mặc dù các lớp xây dựng đồ thị học được đề xuất bởi nhóm tác giả. Đáng ngạc nhiên là các phương pháp tiếp cận đa biến đối với mô hình hồi quy học máy và hồi quy thống kê cho thấy hiệu quả tốt trong việc dự đoán VN Index 30 và thậm chí vượt trội so với các mô hình hoc sâu khác ngoại trừ LSTNet Hiệu qua của mô hình có sử dụng quan hệ tuyến tính trên tập dữ liệu này là do tác động trực tiếp của giá cô phiếu có vốn hóa và tính thanh khoản cao đến các chỉ số thị trường chứng khoán bao gồm chỉ số VN 30 Các chỉ số chứng khoán được tính toán thông qua sự kết hợp của mọi cổ phiếu trong rõ của chúng theo công thức, theo sau là các tỷ lệ nhưng thay đổi theo thời gian Do đó, mô hình tuyến tính cũng có thé biểu thi mối quan hệ giữa chỉ số thị trường và các cô phiếu thành phần của nó.

Khi so sánh kết quả của các thuật toán chuỗi thời gian đa biến so với kết quả dự báo của mô hình LSTM cho chuỗi thời gian đơn biến, hầu hết các mô hình đa biến (ngoại trừ MTGNN) đều cho kết quả dự báo tốt hơn Điều đó chứng tỏ rằng các mô hình đa biến dưới sự ảnh hưởng của các mã cô phiếu mang lại sự cải thiện cho độ chính xác của dự báo đối với chỉ số thị trường chứng khoán VN Index 30.

Hình 4-2 Trực quan hóa kết quả dự bao LSTNet va VAR

Hình 4-3 Trực quan hóa Random Forest Regression

Hình 4-4 Trực quan hóa kết quả dự doan DSTP

VN30 Price Prediction using LSTM

Hình 4-5 Kết quả so sánh giữa mô hình LSTNet đa biến và LSTM đơn biến

Kết quả thực nghiệm dự báo chuỗi thời gian dài

Đối với thử nghiệm trong bài báo cáo, nghiên cứu áp dụng mô hình dự báo dài hạn gồm Transformer và Autoformer trên bộ đữ liệu Vietnam 30 Index Kết quả dự đoán chỉ số VN30 được đánh giá và so sánh với các mô hình dự báo chuỗi thời gian đa

53 biến khác đã được sử dụng trước đó phục vụ cho chuỗi thời gian đa biến.

Bảng 4-5 Bảng kết qua dự đoán multistep cho khoảng thời gian 24

VAR XGBoost Random LSTNet | MTGNN | Autoformer | Transformer

Bảng 4-6 Bảng kết quả dự đoán multistep cho khoảng thời gian 48

VAR XGBoost pencom LSTNet | MTGNN | Autoformer | Transformer

Bảng 4-7 Bảng kết qua dự đoán multistep cho khoảng thời gian 96

VAR XGBoost > LSTNet | MTGNN | Autoformer | Transformer

Như thê hiện trong Bang 4-5, kết quả của Autoformer va Transformer không khác nhiều so với mô hình khác khi có chiều dài dự đoán từ nhỏ đến trung bình là 24 Thậm chí Autoformer còn đạt khả năng dự báo kém hơn so với đa số các mô hình khác (trừ VAR và MTGNN) LSTNet với chiều dài dự đoán 24 đạt kết quả tốt nhất, điều đó cũng thể hiện cho một số thành phần được bổ sung dé hỗ trợ dự báo dài hon như recurrent-skip.

Su khác biệt xuất hiện khi chiều dai dự đoán có khoảng thời gian dai hon là 48 và

96 Mô hình Transformer có kết quả tốt nhất ở dãy số dự đoán là 48, tốt hơn so với tat cả các mô hình còn lại tuy không quá nhiều (trung bình là 3,285% MAPE chênh lệch khi so với các mô hình khác) Random Forest Regression và Autoformer có kết quả tốt thứ 2 với Random Forest Regression nhỉnh hơn về chỉ số MAPE và MAE còn

54 Ở độ dài dự đoán 96, mô hình Autoformer đạt kết quả tốt nhất trong tất cả các mô hình, tiép đên là mô hình Transformer Hai mô hình trên vượt trội hơn so với các mô hình còn lại

Hình 4-6 Kết qua dự bảo chuối thời gian độ dài dự đoán 96

Hình 5-5 biểu thị kết quả dự báo của các thuật toán tại với độ dài dự đoán là 96. Phần biêu đồ trực quan hóa cho thấy các mô hình như VAR, XGBoost Regressor hay Random Forest, LSTNet chỉ thể hiện được đường tuyến tính khi phải dự báo được chuỗi thời gian dài, và trong trường hợp dự đoán xu thế downtrend của thị trường, các mô hình này đường như cũng không nắm bắt được xu hướng quá dài nên cũng dự báo sai xu hướng chung Đôi với mô hình Transformer bao gôm cả setting đơn biến (đường màu đen) và setting đa biến (đường màu vàng), du đoán với giá trị thực ở giai đoan sau và không thê hiện xu hướng rõ ràng Đôi với mô hình Autoformer với thiết lập đa biến (đường màu xanh dương) mang lại kết quả trực quan tốt nhất trong việc dự báo khi vừa dự đoán gần với đường di chuyền của giá trị thực tế cũng thé hiện xu hướng giảm rõ rệt

5.1 Quy trình triển khai mô hình dự báo

5.1.1 Thu thập và tiền xử lý dữ liệu

Dữ liệu của tat cả các cổ phiếu trong mô hình và cả chỉ số VN Index 30 được lay xuống từ cơ sở đữ liệu (cũng được thông qua quá trình crawl dữ liệu) Quá trình xử lý dữ liệu lưu dưới dạng dataframe với mỗi cô phiếu/chỉ số sẽ chứa các thuộc tinh open, high, low, close, change, date.

Nói dit liệu của các cô phiếu và chỉ số VN 30 thông qua thuộc tinh date và chi giữ lai gia tri của của thuộc tinh close -gia đóng cửa.

Quá trình tiền xử ly sẽ thực hiện tiền xử lý đữ liệu phụ thuộc vào loại mô hình dự báo được đề cập chi tiết tại Chương Thực nghiệm và đánh gia.

Chia dữ liệu theo tỉ lệ phù hợp với mô hình theo tỉ lệ 6/2/2 với mô hình học sâu,

8/2 với mô hình hồi quy máy học, thông kê, tỉ lệ 7.5/1/1.5 với model chuỗi thời gian đài

Quá trình huấn luyện mô hình với các tham số đã được thiết lập Thực hiện chạy huấn luyện mô hình Với mô hình học sâu, các phần dữ liệu validation được sử dụng để so sánh đánh giá mô hình phục vụ cho việc lưu mô hình và tránh overfit xảy ra.

Sau khi mô hình được huấn luyện xong, chạy lại mô hình trên tập dư liệu kiểm thử dé đánh giá độ đo về kha năng chính xác trong dự báo.

Sau quy trình huấn luyện mô hình và đạt được kết quả đánh giá như yêu cầu, mô hình được lưu lại để sử dụng cho ứng dụng website dự báo Đối với các mô hình sử dụng thư viện như VAR, XGBoost Regression, Random Forest Regression, có thé lưu dưới dang file binary chứa toàn bộ model với thư viện joblib hoặc pickle Với mô hình sử dụng kiến trúc học sâu như LSTNet, MTGNN, Autoformer, Transformer, lưu file state_dict chứa giá trị của các tham số trong mô hình Bên cạnh đó, các phép biến đổi (scaling) trong bước tiền xử ly cũng được lưu lại dé thực hiện triển khai.

5.1.4 Triển khai va sử dụng mô hình

Từ các mô hình đã lưu, dé triên khai va sử dụng sử dụng ta thực hiện các bước sau đây:

Bước 1: Chuan bi dit liệu từ cơ sở dit liệu (n ngày gần nhất phù thuộc vào thiết lập của mô hình)

Bước 2: Scaling và reshape dt liệu tương tự với dữ liệu khi được huấn luyên. Tai đây sử dụng những mô hình biến đổi scaling đã lưu trước đó.

Bước 3: Sử dụng các file binary để load model Đối với binary file là state_dict cần khai báo model trước, sau đó mới load state dict file vào model

Bước 4: Feed dir liệu vào mô hình.

Bước 5: Sử dụng kết qua tại bước 4 dé rescale dé có được kết qua dự báo.

5.2 Quy trình xây dựng hệ thống website dự báo

5.2.1 Thiết kế thành phần chức năng

Hệ thống dự bảo giả cổ phiếu

Hình 5-1 Use case tổng quan ứng dung dự báo Đặc ta từng use case:

Bang 5-1 Use case xem lịch sử gia

Tén Usecase: Xem lich str gia Mã Usecase: UCO1

Tiên điều kiện: Vào URL: hitps://stock-mtfs-git-ui-prediction-nointh vercel.app/chart Hậu điều kiện: Khi truy cập thành công thì lich sử giá sẽ được hiền thị

Tác nhân chính: User, Linux Server Mức độ quan trọng: Cao

Mô tả Usecase: Usecase cho phép người dùng xem lịch sử giá cô phiêu VN30 từ năm 2013-05-20 đến ngày hôm qua

1 Trỏ đúng URL đến màn hình xem lịch sử giá

2 Load dtr liệu dir liệu lich sử giá từ API server

3 Hiển thị ra màn hình kết qua

Bảng 5-2 Use case xem dự bảo

Tên Usecase: Xem dự báo Mã Usecase: UC02

Tiền điều kiện: Vào đúng URL htps://stock-mtfs-git-ui-prediction- nointh.vercel.app/chart

Hậu điều kiện: Khi truy cập thành công thì lịch sử gid va các tùy chọn dự đoán theo thuật toán và thời gian dự báo

Tác nhân chính: User, Linux Server Mức độ quan trọng: Cao

Mô tả Usecase: Usecase cho phép người dùng xem dự đoán giá cô phiếu VN30 trong tương lai Các tùy chọn bao gồm : 1 ngày, 7 tuần, 1 tháng, 3 tháng.

I _ Trỏ đúng URL đến màn hình xem dự báo

Bang 5-3 Use case lay dữ liệu mới

Tên Usecase: Lay dữ liệu mới Mã Usecase: UC03

Tiền điều kiện: Hàng ngày vào lúc 23:00 server sẽ tự động call api : https://apipubaws.tcbs.com.vn/stock-insight/v1/stock/bars-long- term?ticker={ ticker} &type=stock&resolution=D&from={yesterday_time}&to={today_tim

Hậu điều kiện: Dữ liệu được cập nhật vào CSDL MongoDB atlas

Tác nhân chính: Admin, Linux Server

Mô tả Usecase: Lay dữ liệu mỗi ngày từ trang https://apipubaws.tcbs.com.vn và lưu vào CSDL

Mức độ quan trọng: Cao

1 Server tự động call API bang cơ chế định thời dé lay dit liệu của ngày mới

2 Lưu dữ liệu vào cơ sở dữ liệu

Bang 5-4 Use case dự bdo giá

Tén Usecase: Du bao gia

Tiên điều kiện: Cứ mỗi 30 ngày vào lúc 00:00 server sẽ tự động chạy các script dé dự báo giá cô phiếu của 150 ngày tiếp theo.

Hậu điều kiện: Giá trị Predict được cập nhật vào CSDL

Tác nhân chính: Admin, Linux Server

M6 tả Usecase: Server tự động chạy các script theo định thời đề dự báo giá cô phiếu và lưu vào CSDL.

Mức độ quan trọng: Cao

1 Server tự động chạy các script dé huấn luyện mô hình băng dữ liệu mới nhất trong CSDL

2 Server tự động chạy script dé dự đoán giá cổ phiếu

3 Lưu giá trị dự đoán vào CSDL

5.2.2 Thiết kế cơ sở dữ liệu

Mô tả cấu trúc cơ sở đữ liệu: e Ứng dung sử dụng cơ sở dữ liệu NoSQL MongoDB để lưu trữ dữ liệu. e_ MongoDB sử dụng mô hình dữ liệu không có cấu trúc (document-based), trong đó dit liệu được tổ chức thành các bản ghi JSON-like gọi là

"documents". e Cac documents được lưu trữ trong các bộ sưu tap (collections) trong

Ngày đăng: 02/10/2024, 04:48

TRÍCH ĐOẠN

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

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

w