CHƯƠNG 2. HỌC MÁY VÀ KĨ THUẬT HỌC SÂU
3.3. Thực nghiệm và đánh giá
3.3.2. Cài đặt mô hình
Các mô hình thường dự đoán bằng cách sử dụng chuỗi thời gian giá chứng khoán hoặc kết hợp với các chỉ số bên ngoài khác mà không xét đến đến mối liên hệ tương quan giữa các mã chứng khoán. Chúng tôi sẽ khám phá mối tương quan giữa các CP và sử dụng nó để làm phong phú thêm dữ liệu đầu vào cho mô hình mạng nơron sâu. Mô hình của chúng tôi là LSTM - một mô hình dự đoán hiệu quả để phân tích chuỗi thời gian. Mô hình không chỉ dự đoán giá đóng cửa mà còn dự báo giá mở cửa, cao và thấp của cổ phiếu. Hơn nữa, chúng tôi sử dụng kỹ thuật cửa sổ trượt động để chọn dữ liệu lịch sử có giá trị cho mô hình dựa trên LSTM.
Cho S = { s 1 , s 2 , … , s N} là tập N cổ phiếu
P s = { P s , 0 , P s , 1 , … , P s , M} là giá cổ phiếu s theo chuỗi thời gian, trong đó P s , t là giá của cổ phiếu s ngày t . Mục tiêu chính là xây dựng một mô hình dự báo giá cổ phiếu s ở ngày t+1 , cụ thể là P s , t+1.
Neighborhood LSTM Model
Chúng tôi đề xuất phương pháp kết hợp thông tin chuỗi thời gian của mã chứng khoán dự đoán với các mã chứng khoán gần nhất có quan hệ với nó. Lý do cho ý tưởng này là chúng tôi phát hiện ra rằng có một mối quan hệ chặt chẽ giữa các cổ phiếu trong TTCK.
Sự tăng/ giảm của một hoặc sự kết hợp của nhiều cổ phiếu có thể tác động sang một cổ phiếu khác. Do đó, giá kết hợp của cổ phiếu có thể là một chỉ báo quan trọng để hỗ trợ mô
39
hình dự đoán. Mối quan hệ giữa 11 CP đang hoạt động trên TTCK Hoa Kỳ được minh họa trong Hình 6
Hình 6: Hệ số tương quan giữa giá đóng cửa của cổ phiếu TTCK Hoa Kỳ
Ta thấy cổ phiếu Google LLC (GOOG), Facebook (FB) và Amazon.com Inc.
(AMZN) có hệ số tương quan rất cao, có thể dễ dàng quan sát thấy giá trong lịch sử của chúng.
40
Mối quan hệ giữa CP đang hoạt động trên TTCK Đức được minh họa trong Hình 7
Hình 7: Hệ số tương quan giữa giá đóng cửa của cổ phiếu TTCK Đức
41
Mối quan hệ giữa CP đang hoạt động trên TTCK Việt Nam được minh họa trong Hình 8
Hình 8: Hệ số tương quan giữa giá đóng cửa của cổ phiếu TTCK Việt Nam
Trong mô hình neighborhood LSTM model (được ký hiệu là LSTM kNN), chúng tôi sử dụng kích thước cửa sổ trượt w để dự đoán giá trong tương lai. Kích thước cửa sổ tốt nhất được quyết định bằng cách tính toán lỗi cho các kích thước cửa sổ khác nhau. Cửa sổ trượt đầu tiên Wd0 của cổ phiếu s sử dụng các giá trị ngay từ đầu Wd0 = (Ps, 0, Ps, 1,…, Ps, w-1) trong khi Wdt = (Ps, t, Ps, t + 1,…, Ps, t + w − 1). Wd0 được sử dụng để dự đoán giá của dấu thời gian w, v.v.
42
Hình 9: Cửa sổ trượt để dự đoán giá cổ phiếu 3.3.2.1. Môi trường cài đặt
LSTM-kNN và LSTM-DW sử dụng thư viện Keras và Tensorfow, được viết bằng Python và được thực thi trên máy tính CPU Intel (R) Xeon (R) E5-2630 v3 @ 2,40 GHz.
3.3.2.2. Xây dựng chương trình
Để dự đoán giá tương lai cho cổ phiếu s, đặt vectơ đầu vào cho mô hình LSTM-kNN dưới dạng dữ liệu chuỗi thời gian đa biến. Chuỗi thời gian đầu vào chứa giá lịch sử của cổ phiếu s và các láng giềng gần nhất của nó theo trị tuyệt đối hệ số tương quan. Một ngưỡng tương quan esp được chọn bằng thử nghiệm để xác định các hàng xóm gần nhất của cổ phiếu s. Mã giả của mô hình LSTM-kNN được trình bày trong Thuật toán 1, hàm distance (x, si) trả về hệ thức tương quan Pearson giữa chuỗi thời gian giá cổ phiếu của x và si trong tập huấn luyện
43
Thuật toán LSTM-kNN
Trên thị trường chứng khoán, việc giá cổ phiếu tăng giảm ngày này qua ngày khác là điều hiển nhiên. Có một số ngày giá cổ phiếu tăng hoặc giảm với một biên độ lớn, như được minh họa bằng các vòng tròn màu đỏ trong hình 8. Chúng tôi định nghĩa một hiện tượng như vậy là sự thay đổi đáng kể (significant change) của giá cổ phiếu.
44
Hình 10: Thị trường chứng khoán Đức: lịch sử về giá mở cửa của cổ phiếu
Gọi Ps = {Ps,0, Ps,1, … , Ps,M } là chuỗi thời gian giá CP của cổ phiếu s. Một thay đổi đáng kể (significant change) được phát hiện trong ngày t nếu ∣Ps,t − Ps,t−1∣ ≥ threshold (ngưỡng). Trong đó, threshold là thông số do người dùng xác định.
Mô hình neighborhoodLSTM sử dụng cửa sổ trượt động, được ký hiệu là LSTM-DW, được trình bày bằng mã giả trong Thuật toán 2. Ngưỡng threshold được xác định bằng giá trị trung bình của biến động giá cổ phiếu, như được mô tả trong dòng 13. Kích thước cửa sổ trượt cho mô hình LSTM-DW được tính bằng số signifcant change. Do đó, cửa sổ trượt là động cho mỗi mô hình.
45
Thuật toán LSTM-DW
46
Chúng tôi xác định kích thước cửa sổ trượt được sử dụng trong mô hình LSTM-kNN là w = 60. Ngưỡng threshold (Thuật toán 1) được áp dụng cho chứng khoán Hoa Kỳ esp = 0,95 trong khi con số này cho chứng khoán Đức và Việt Nam là esp = 0,8. Tham số sig_change (Thuật toán 2) được đặt là 1,0 trong các thử nghiệm. Chúng tôi sử dụng các cấu hình sau của các mô hình LSTM-kNN và LSTM-DW được áp dụng cho từng tập dữ liệu:
Bộ dữ liệu thị trường chứng khoán Hoa Kỳ:
Bộ dữ liệu thị trường chứng khoán Việt Nam:
Bộ dữ liệu thị trường chứng khoán Đức:
47