You are on page 1of 22

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HCM


KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
---------------------

BÁO CÁO ĐỒ ÁN 2
Ngành: Công nghệ kỹ thuật máy tính
Đề tài:

Multi-DQN: an Ensemble of Deep Q-Learning Agents for


Stock Market Fore‐ casting

SVTH MSSV
Võ Chí Vỹ 19119151

TP.HỒ CHÍ MINH - 12/2022


LỜI CẢM ƠN
Lời đầu tiên nhóm em xin chân thành cảm ơn Thầy Võ Minh Huân
trường Đại học Sư Phạm Kỹ thuật TP.HCM đã hướng dẫn và hỗ trợ nhiệt tình
chỉ bảo em khắc phục những vấn đề trong đồ án môn học 1.
Cảm ơn đến thầy đã hỗ trợ, giúp đỡ và tạo điều kiện cho chúng em trong
suốt quá trình thực hiện đề tài. Kiến thức nhận được sau khi thực hiện là kinh
nghiệm và là hành trang quý báu để nhóm chúng em phát triển được công việc
và sự nghiệp trong tương lai sau này.
Nhóm em xin chân thành cảm ơn!
LỜI NÓI ĐẦU
Trí tuệ nhân tạo (Artificial Intelligence - AI) là một lĩnh vực khoa học đang phát
triển mạnh mẽ và có sự lan tỏa rộng rãi trong cuộc sống hàng ngày. Với vai trò đáng kể,
trí tuệ nhân tạo đã mang lại những đóng góp quan trọng cho sự tiến bộ xã hội trong thời
đại hiện nay. Đặc biệt, trong cuộc sống hàng ngày, chúng ta đã chứng kiến ứng dụng của
trí tuệ nhân tạo thông qua việc dự báo thời tiết, phát hiện vật thể, nhận diện khuôn mặt
và cả sự xuất hiện của các robot thông minh.

Để tìm hiểu sâu hơn về trí tuệ nhân tạo nói chung cũng như các kĩ thuật
dự đoán huấn luyện mô hình, chúng em quyết định lựa chọn đề tài:“ Áp dụng
Học tăng cường sâu vào Giao dịch thuật toán ” Do thời gian hạn hẹp cũng như việc
thiếu nhiều kĩ năng trong xây dựng, hiểu biết ít các mô hình đã áp dụng cũng
như những hiểu biết về AI, đề tài của chúng em vẫn còn nhiều thiếu sót và hạn
chế. Rất mong nhận được sự đóng góp ý kiến của thầy để đề tài nhóm chúng
em ngày càng hoàn thiện hơn.
LIỆT KÊ HÌNH
Hình 2.1: Sơ đồ khối quy trình training TDQN............................................................2

Hình 2.2: truy xuất dữ liệu từ data có sẵn....................................................................2

Hình 2.3: truy xuất các hệ số..........................................................................................3

Hình 2.4: chọn action......................................................................................................3

Hình 2.5: training để tối ưu hóa phần thưởng..............................................................4

Hình 2.6: Các khối xây dựng cốt lõi học tăng cường....................................................5

Hình 3.1.1: Mô hình DQL..............................................................................................5

Hình 3.2.1: Mô hình training Neuron Network giao dịch cổ phiếu.............................6

Hình 4.1: training hiệu huất...........................................................................................7

Hình 4.2: Thực thi thuật toán TDQN cho cổ phiếu......................................................8

Hình 4.3: Hiệu suất dự kiến của thuật toán TDQN......................................................8


LIỆT KÊ BẢNG
Bảng 4.1: đánh giá hiệu suất..........................................................................................7
MỤC LỤC

CHƯƠNG 1: DỰ ĐOÁN GIÁ CỔ PHIẾU BẰNG THUẬT TOÁN DEEP


Q – LEARNING.......................................................................................... 1
I. Giới thiệu........................................................................................... 1
II. Phương pháp.................................................................................... 1
1. Các hình thức giao dịch..........................................................1
2. Tối ưu hóa phần thưởng.........................................................2
3. Train DQL (Deep Q – Learning)...........................................5
4. Kết quả và đánh giá hiệu suất................................................6
5. Tổng kết...................................................................................9
CHƯƠNG 1: DỰ ĐOÁN GIÁ CỔ PHIẾU BẰNG THUẬT TOÁN DEEP Q

– LEARNING

I. Giới thiệu

Trong suốt nhiều năm qua, việc dự báo thị trường tài chính đã thu hút sự quan

tâm đặc biệt của các nhà nghiên cứu trong lĩnh vực nhận dạng mẫu. Thông thường, để

phân tích thị trường và dự đoán xu hướng tương lai, chúng ta sử dụng dữ liệu chuỗi thời

gian. Tuy nhiên, tiến hành nghiên cứu này có thể mất rất nhiều thời gian. Vì vậy, để ứng

dụng hiệu quả dữ liệu và đưa ra những dự đoán chính xác về các yếu tố tương lai, chúng

ta cần sử dụng mô hình DQL (Deep Q – Learning).

II. Phương pháp

1. Các hình thức giao dịch


Có các hình thức giao dịch sau:
 Hành động mua và bán (long action): Trong hình thức này, người giao
dịch mua hoặc bán cổ phiếu trước khi thị trường đóng cửa trong ngày.
 Hành động bán và mua ngược lại (short action): Đây là hình thức giao
dịch khi người giao dịch bán cổ phiếu trước khi thị trường đóng cửa, sau
đó mua lại vào cuối ngày.
 Hành động không tham gia (opt-out action): Hình thức này xảy ra khi
người giao dịch không thực hiện bất kỳ giao dịch mua hay bán nào trong
ngày.
Mục tiêu của chiến lược giao dịch là tối đa hóa lợi nhuận kinh tế (tức là tiền lãi)
trong một ngày. Để đạt được mục tiêu này, người giao dịch dựa trên giả định về
xu hướng giá trong ngày (nghĩa là giá sẽ tăng hoặc giảm). Dựa trên giả định này,
người giao dịch thực hiện hành động mua khi tin rằng giá sẽ tăng và hành động
bán khi tin rằng giá sẽ giảm. Trong trường hợp không đủ tự tin về hành vi của thị

1
trường hoặc cho rằng giá sẽ không thay đổi, người giao dịch thực hiện hành
động không tham gia (opt-out action).

2. Tối ưu hóa phần thưởng

Hình 2.1: Sơ đồ khối quy trình training TDQN


Truy xuất dữ liệu

Hình 2.2: truy xuất dữ liệu từ data có sẵn


Truy xuất các hệ số cần thiết cho quá trình chuẩn hóa

2
H
ì
n
h

2.3: truy xuất các hệ số


Chọn action tốt nhất, tối ưu nhất dựa trên policy RL(Reinfor cement
learning)

Hình 2.4: chọn action


- Để xác định được hành động thì cần áp dụng RL(Reinforcement
learning) trong giao dịch. Các quyết định mua, bán và không giao dịch
được biểu diễn dưới dạng những con số (-1, 0, 1).

- Sau khi xác định thì sẽ được tối ưu phần thưởng từ định nghĩa dưới đây:

3
- Tham số γ là hệ số chiết khấu (γ ∈ [0, 1]). Nó quyết định tầm quan
trọng của phần thưởng trong tương lai. Chẳng hạn, nếu γ = 0, tác
nhân RL được cho là cận thị như nó chỉ xem xét phần thưởng hiện
tại và loại bỏ hoàn toàn những phần thưởng trong tương lai. Khi hệ
số chiết khấu tăng, tác nhân RL có xu hướng trở nên định hướng dài
hạn hơn. Trong trường hợp cực đoan khi γ = 1, tác nhân RL xem xét
mỗi phần thưởng như nhau. Thông số quan trọng này nên được điều
chỉnh.

Hình 2.5: training để tối ưu hóa phần thưởng

4
Hình 2.6: Các khối xây dựng cốt lõi học tăng cường
3. Train DQL (Deep Q – Learning)
3.1. Tổng quan về DQL (Deep Q – Learning)

Hình 3.1.1: Mô hình DQL

1. Enviroment đưa vào mạng một state s; đầu ra là các Q-value của các
actions tương ứng.
2. Agent chọn action bằng một Policy và thực hiện action đó.
3. Environment trả lại state s' và reward r là kết quả của action a và lưu
experience tuple [s, a, r, s'] vào memory.

5
4. Thực hiện sample các experience thành một vài batches và tiến hành
train NN.
5. Lặp lại đến khi kết thúc M episodes.

- Vì dữ liệu đầu vào lớn nên khi train hết trong 1 lần sẽ dẫn đến tình trạng
sẽ dẫn đến tình trạng overfitting, để xử lí vấn đề đó thay vì mỗi lần
update states vào một bộ nhớ (memory). Sau đó chia thành các spamling
batch nhỏ để đưa vào NN học.
3.2. Mô hình Neuron Network (NN)

Hình 3.2.1: Mô hình training Neuron Network giao dịch cổ phiếu


- Tuy nhiên mục đích của ta là bắt NN học được cách ước lượng Q-Value
cho các actions một cách chính xác nên đương nhiên hàm Loss phải tính
được sai số giữa Q-value thực tế và dự đoán.

Hình 3.2.2: Tính sai số hàm Loss


4. Tách riêng thuật toán Buy and Hold

6
Hình : Hàm chọn hành động cho chiến lược Buy and Hold

- Hàm này chọn hành động cho chiến lược Buy and Hold, ở đây kết quả trả về
luôn luôn là 1 nghĩa là mua vào cổ phiếu.

Hình : Tính toán thông số và cập nhật hành động cho thuật toán

- Thuật toán này sẽ rơi vào trường hợp b từ chưa thực hiện hành động nào đến
thực hiện hành động mua vào một lần rồi giữ qua thời gian và không bán ra. Ta sẽ
tính toán số lượng cổ phiếu, tiền mặt, số cổ phiếu nắm giữ và cập nhật hành động.

7
Bảng : Đánh giá hiệu suất chiến lược Buy and Hold

8
Hình : Thực thi thuật toán Buy and Hold cho cổ phiếu

5. Tách riêng thuật toán TDQN

Với tổng số tiền ban đầu là 100000 thì sau khi thực hiện giao dịch theo thuật toán
TDQN thì tổng số tiền lúc sau là 316269, ta thấy sau khi thực hiện giao dịch sẽ thu
được lợi nhuận là 216269.

9
6.

- Nhận xét: Thuật toán TDQN đạt được kết quả tốt và giảm thiểu rủi
ro, vượt trội so với tất cả các chiến lược giao dịch chủ động và thụ động

10
chuẩn. có thể thấy rằng chiến lược giao dịch DRL có khả năng phát hiện
chính xác và hưởng lợi từ các xu hướng chính, agent giao dịch thường
chậm hơn một chút so với xu hướng thị trường, nghĩa là thuật toán
TDQN đã học cách phản ứng hơn là chủ động đối với cổ phiếu cụ thể
này. Cho nên RL có thể quyết định điều chỉnh giao dịch của mình vị trí
trước khi đảo ngược xu hướng bằng cách nhận thấy sự gia tăng trong sự
biến động, do đó dự đoán và chủ động.

7. Viết riêng thuật toán DQN

Với tổng số tiền ban đầu là 100000 thì sau khi thực hiện giao dịch theo thuật toán
DQN thì tổng số tiền lúc sau là 150226, ta thấy sau khi thực hiện giao dịch sẽ thu
được lợi nhuận là 50226.

11
Nhận xét: Thuật toán DQN đạt được kết quả tương đối tốt và có khả
năng học từ dữ liệu và cải thiện hiệu suất qua thời gian. Bằng cách sử
dụng mạng nơ-ron sâu, nó có khả năng học và biểu diễn các hàm giá trị
hành động phức tạp, giúp tìm ra các chiến lược tốt hơn theo thời gian.
12
Tuy nhiên, hiệu suất của thuật toán DQN có thể phụ thuộc vào nhiều
yếu tố như kiến trúc mạng, kích thước bộ nhớ lặp, cách cập nhật mạng
và các tham số khác.
8/ So sánh TDQN với DQN
- Sự khác biệt đó là TDQN dùng 2 mạng neuron, DQN dùng 1
mạng neuron.
- Sự khác biệt tiếp theo giữa DQN và TDQN nằm ở phương pháp
cập nhật giá trị Q, với DQN sử dụng Q-learning và replay memory, trong
khi TDQN sử dụng phương pháp Temporal Difference để cập nhật giá
trị Q dựa trên dự đoán giá trị Q tại các thời điểm trước đó. Cụ thể, DQN
sử dụng giá trị Q tối đa của trạng thái tiếp theo và giá trị phần thưởng
để cập nhật giá trị Q hiện tại. Quá trình này được thực hiện thông qua
việc tối ưu hóa mạng nơ-ron sử dụng hàm mất mát và thuật toán lan
truyền ngược (backpropagation). Trong khi đó TDQN sử dụng giá trị Q
hiện tại và giá trị Q dự đoán tại thời điểm tiếp theo để tính toán giá trị Q
mới. Phương pháp này giúp TDQN có khả năng học tập nhanh hơn và
ổn định hơn.
- Do có sự ổn định và khả năng học nhanh hơn nên lợi nhuận của
thuật toán TDQN cao hơn so với thuật toán DQN. Cụ thể trong kết quả
chạy ở Hình .. và Hình .. thì lợi nhuận của TDQN là 216269 cao hơn rất
nhiều so với lợi nhuận của DQN 50226.

=============================================================

13
Hình 4.1: training hiệu huất

Bảng 4.1: đánh giá hiệu suất

14
Hình 4.2: Thực thi thuật toán TDQN cho cổ phiếu

Hình 4.3: Hiệu suất dự kiến của thuật toán TDQN


- Nhận xét: Thuật toán TDQN đạt được kết quả tốt từ cả quan điểm thu
nhập và giảm thiểu rủi ro, vượt trội so với tất cả các chiến lược giao dịch
chủ động và thụ động chuẩn. có thể thấy rằng chiến lược giao dịch DRL
có khả năng phát hiện chính xác và hưởng lợi từ các xu hướng chính,
agent giao dịch thường chậm hơn một chút so với xu hướng thị trường,
nghĩa là thuật toán TDQN đã học cách phản ứng hơn là chủ động đối với
cổ phiếu cụ thể này. Cho nên RL có thể quyết định điều chỉnh giao dịch
của mình vị trí trước khi đảo ngược xu hướng bằng cách nhận thấy sự
gia tăng trong sự biến động, do đó dự đoán và chủ động.
8. Tổng kết
Qua nghiên cứu về thuật toán Trading Deep Q -
Network(TDQN), một giải pháp Deep Reinfor cement learning (DRL)
cho vấn đề giao dịch, xác định vị trí tối ưu trong một hoạt động giao
dịch chứng khoán. Sau khi đã kiểm tra và đánh giá về hiệu suất, chiến
lược giao dịch này đạt kết quả khá ổn. Ngoài ra thuật toán TDQN thể
hiện nhiều lợi ích so với các phương pháp cổ điển hơn, chẳng hạn như
tính linh hoạt và sự mạnh mẽ vượt trội cho giao dịch đa dạng chi phí.
Cách tiếp cận dựa trên dữ liệu như vậy trình bày lợi thế chính của việc
triệt tiêu nhiệm vụ phức tạp của xác định các quy tắc rõ ràng phù hợp
với tài chính cụ thể các thị trường được xem xét.
15
TÀI LIỆU THAM KHẢO
[1].Multi-DQN: an Ensemble of Deep Q-Learning Agents for Stock Market
Fore‐ casting.
(https://linkinghub.elsevier.com/retrieve/pii/S0957417420306321)
Soure code: https://github.com/ThibautTheate/An-Application-of-Deep-
Reinforcement-Learning-to-Algorithmic-Trading
Link drive:
https://drive.google.com/drive/folders/1os5zo2Ys961HFrVJnM7ac1Fn8WwLN
_BR?usp=sharing

You might also like