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 hệ thống dự đoán xu hướng biến đổi giá tiền điện tử sử dụng các mô hình máy học

52 0 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 hệ thống dự đoán xu hướng biến đổi giá tiền điện tử sử dụng các mô hình máy học
Tác giả Đỗ Hữu Lượng
Người hướng dẫn Th.S Đỗ Thị Minh Phụng
Trường học Trường Đại học Công nghệ Thông tin
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 2021
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 52
Dung lượng 22,73 MB

Nội dung

TÓM TẮT KHÓA LUẬNĐề tài khóa luận “Xây dựng hệ thống dự đoán xu hướng biến đổi giá tiền điện tử sử dụng các mô hình máy học” là một đề tài hướng đến đối tượng người dùng thamgia giao dịc

Trang 1

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH

TRUONG DAI HOC CONG NGHE THONG TIN

KHOA HE THONG THONG TIN

ĐỖ HỮU LƯỢNG - 175209103

KHÓA LUẬN TÓT NGHIỆP XÂY DUNG HE THONG

DU DOAN XU HUONG BIEN DOI GIA TIEN DIEN TU

SU DUNG CAC MO HINH MAY HOC

Building a system for predicting Cryptocurrency price trends

using Machine Learning

KY SƯ NGANH HE THONG THONG TIN

TP HO CHÍ MINH, 2021

Trang 2

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH TRUONG DAI HOC CONG NGHE THONG TIN

KHOA HE THONG THONG TIN

DO HỮU LƯỢNG - 17520103

KHOA LUAN TOT NGHIEP XAY DUNG HE THONG

DU DOAN XU HUONG BIEN DOI GIA TIEN DIEN TU

SU DUNG CAC MO HINH MAY HOC

Building a system for predicting Cryptocurrency price trends

using Machine Learning

KY SƯ NGÀNH HE THONG THONG TIN

GIANG VIEN HUONG DAN TH.S DO THỊ MINH PHUNG

TP HO CHÍ MINH, 2021

Trang 3

THONG TIN HOI DONG CHAM KHÓA LUẬN TOT NGHIỆP

Hội đồng cham khóa luận tốt nghiệp, thành lập theo Quyết định số

Ti8ầy của Hiệu trưởng Trường Đại học Công nghệ Thông tin.

— Chủ tịch.

2 — Thu ký.

— Ủy viên.

~— Ủy viên.

Trang 4

LỜI CẢM ƠN

Đầu tiên, em xin trân trọng gửi lời cảm ơn sâu sắc đến quý Thay, Cô giảngviên trường Đại học Công Nghệ Thông Tin đặc biệt là quý Thầy, Cô khoa Hệ thốngthông tin, đã truyền đạt vốn kiến thức quý báu cho em trong quá trình học tập tạitrường, tạo nên tảng và điều kiện tốt nhất cho em đề thực hiện đề tài Khóa luận tốt

nghiệp này.

Đặc biệt, em xin gửi lời cảm ơn chân thành và biết ơn sâu sắc đến cô Đỗ ThịMinh Phung đã tận tình hướng dẫn em dé hoàn thành đề tài này Những góp ý, chia

sẻ và động viên của Cô đã giúp em có thêm động lực và kinh nghiệm đề vượt qua

những khó khăn khi thực hiện khóa luận này.

Trong quá trình hoàn thành khóa luận tốt nghiệp, em đã học được rất nhiềukiến thức bổ ích và vận dụng dé xây dựng ứng dụng cho đề tài khóa luận tốt nghiệp.Tuy nhiên, do kinh nghiệm thực tiễn còn hạn chế nên khó tránh khỏi những sai sót.Chính vì cậy, em rat mong nhận được những ý kiến đóng góp của quý Thay, Cô dé

em có thể hoàn thiện bản thân hơn

Một lần nữa, em xin chân thành cảm ơn quý Thay, Cô, gia đình và bạn bè đãtận tình giúp đỡ và tạo điều kiện tốt nhất để em có thê hoàn thành tốt khóa luận tốt

nghiệp của mình.

Sinh viên thực hiện đề tài

Đỗ Hữu Lượng

Trang 5

MỤC LỤC

Chương 1 GIỚI THIỆU TONG QUAN VE ĐÈ TÀI 2-2 22 secse¿ 2

1.1 Đặt vấn đề tt HH he 2

1⁄2 Mục tiêu để tài ch nhe 3

1.3 Đối tượng và phạm vi nghiên CỨU - 2- 2 2 + £+££+E££Ee£Eerxerxerxrrezreee 3

1.3.1 Đối tượng Ă 2c 2 222 22212 rerkrrree 3

1.3.2 Phạm vi nghiÊn CỨU .G G1139 119 11 9 11181111 ng 3

1.4 Phương pháp nghiên CỨU - - c3 21331832 113 1E 111.1 EEerrrvre 4

1.5 Cac nghiên cứu liÊn Qua1 5 1 1113111391 1311 911v ng ng ng 4

1.6 Bố cục báo CáO cct s11 tt 1 1 2151111115111111111711151111111 1111111111111 E11 cE 6Chương2 CƠ SỞ LÝ THUYÉT 2-©2¿++2++E+++Ex++ExttEeerx+zrxezrxee 7

2.1 Lý thuyết về các thuật toán nơ-rOI 2+ 2 2 s2 +E++E£+EE+EE+EEerEezEerrxerxee 7

2.1.1 Mạng nơ-ron nhân tạO - - - 5 2c 3311133 E*EESEeEEesersrsererserreee 7

2.1.1.1 M6 hình mạng 'ơ-TOIA - << + 1E £*E£eEEeeEeekerseereere 7

2.1.1.2 Hồi quy logiStiC - ¿5S EEEE2 2112121212121 cree 72.1.1.3 Mô hình tông quát - 2 + ©t+2E+EE+EEEEEEEEEEEEEkerkrrkrerkerkees 8

2.1.2 Recurrent Neural Network (RNN) ccccccssccccesssssseecceeesssseeeeeeestaeees 9

2.1.3 Long short term memory (LSTTM|) 55s *++skx+seeeeseeeesers 10

2.1.3.1 Ý tưởng cốt lõi của LSTM -¿-2¿©2++2++2cxzxxerxesrxeerxees 11

2.1.3.2 Bên trong LSTM ee eeccesccceneceseeceseeceeeceaeceneceaeessaeeesaeeeseeesaes 12

2.1.4 Gated recurrent unit (GRU) cece cccccssssececeeesssceeeseesssseeeeeeesaee 16

2.1.4.1 Cổng update -:- 5c 2121122111112 172.1.4.2 Công reset cc 2s 221212 1221111211211211211 1111111111 re 18

2.1.4.3 Nội dung nhớ hiện tại (Curent memory confen†) 18

Trang 6

2.1.4.4 Bộ nhớ thời điểm hiện tại (Final memory at curent time step) L9

2.2 Các công nghệ chính trong dự an 5 11H nệt 20

2.2.1 Ngôn ngữ lập trình Python - s c1 ng re 20

2.2.2 Javascript — Framework ReactJŠ -csccssssekeeeeesee 21

2.2.3 Hệ quản tri co sở dữ liệu MongolDB - 5c + ss+scs+sxssersss 22

Chương 3 | PHAN TICH VA THIET KE HỆ THÓNG - 5-52 23

E2 Ïằli oi in -4 Rẽ 23

3.2 Sơ đồ Use-case -2cc 2c 2 221 22122112711211211211121 211 re 23

3.2.1 Sơ đồ tông quát -©2¿2-+++cktEEeEkerkrtrkerrerkrervee 24

3.2.2 Danh sách các tác nhân - - s11 kg re 24

3.2.3 Danh sách các USe-Case - 5 G1231 HH ngư 24

3.3 Sơ d6 hoạt động -5ccSc22E2122112121121107121.211 2110111111 1xx 26

3.3.1 Đăng ký HH HH HH TH HH HH rưn 26

3.3.2 Đăng nhập LH ch HH HH ng như 27

3.3.3 Xem các thông tin giá tiền điện tử -ccc©cz+ccsrxerxercee 273.3.4 _ Lựa chọn hién thị các chỉ báo lên biểu đồ giá - 5: 5¿ 283.3.5 Xem kết quả dự đoán giá đóng cửa của phiên hiện tại 28

3.3.6 Hiển thị giá tiền điện tử theo thời gian thựC -‹ -xc<cs+xexes 29

3.3.7 Xem tin tức tiền điện tử liên quan - 2 2 z+se+xezxerxsrsssee 29

3.3.8 Dự đoán và Lựa chọn số phiên giao dịch - -++<x+<xxsss 30

3.3.0 So sánh độ chính xác giữa các mô hình dự đoán khác nhau 30

3.3.10 So sánh kết quả dự đoán giữa các mô hình dự đoán khác nhau 31

3.3.11 Lựa chọn mô hình dự đoán mặc định 5 - 5+ <+5<<<<<<+ 52 31

3.4 Thiết kế hệ thống - :- + SE+S2+EE2E2EE15217121211211211211 111111111 1x, 32

Trang 7

3.5 Thiết kế cơ sở dữ liệu ¿-:-k+cStSESESEEEE2EEEEE12EEE11121511111151111 1112 cxe 33

3.5.1 _ Thiết kế cơ sở dit liệu NoSQL -¿- + 2+c++Eetkerkerxerxerxeree 343.5.2 Mô tả cấu trúc dữ liệu ¿ ¿- ++2++2E++E+EEerkerkrrrxerkerkerree 35Chương 4 | THU THẬP DU LIEU VÀ CÁC MÔ HÌNH DU ĐOÁN 40

4.1 Thu thập dữ liệu thông qua APÌ - -.- < 1s 1+ re 40

4.2.4 Dữ liệu dự đoán đầu vào -:- 5c c<+c+EkeEkerkrrrrrkerkerreee 44

4.2.5 Dữ liệu dự đoán đầu ra -©-c+©c+cxcvrkrrreerkesrkeerxees 45

4.3 Các mô hình -:- s¿++++Sx+Ek+EESEEESEEEEEEEE2215717121121171111 11111110 46

4.4 Huấn luyện dữ liệu 22-©2¿22+22EEt2EEE2EE2EE2EEE2EEEEESEErrrrerkrrrei 41

4.4.2 — EDOCH ĂẶQ HH HH HH HH ng 47

4.4.3 Ham mat mát (LOSS funCtiOR) - Ăn 1112 ng sec 48

4.5 Lựa chọn các tham SỐ St E‡EEk‡EEEEEEEEEEEEEEEEEEEEEEEEEEEEkrkrrkrkrkrrrre 48

4.5.1 Số lượng nơ-rOn -©-c+ce+EkeEEEEEEEEEEEEEEEEEEEEEEkerkerreee 484.5.2 Tham số DrOpOUI - 2 ©2£+ £+EE+EE+EE£EEE2EESEEEEEEEEEEEEEEErrkerreee 50

4.5.3 Hàm kích hoạt c5 1132132211111 1111851 111111185111 kg, 51

4.5.4 KẾtluận cc S22 E22 12121 re 534.6 Quá trình huấn luyện và cải đặt - Ác tt HH 1111 xe 54

Trang 8

4.7 Đánh giá các mô hìnhh - «xxx v1 TT HH ng HH y 55

Chương 5 XÂY DỰNG VÀ TRIÊN KHAI HỆ THÓNG - 62

5.1 Xây dựng mô-đun thu thập dữ liệu - 5 5555225 ***+kvsseeseeerseeeees 62

5.1.1 _ Môi trường phát triỂn - ¿+ k+EE+EE‡EEE2EEEEEEerkerkerkrree 62

5.2 Xây dựng mô-đun API S€TV€T - G111 ng HH rưy 62

5.2.1 Môi trường phat triển -c+k+2E2ESEESEEeEErrrkrrkerkerree 62

5.2.2 CAch hoat d6ng 01727757 64

5.3 Xây dựng m6-dun ứng dung Web - - 5s + knHnHnHnHnHhnHggr 67

5.3.1 Môi trường triển khad eecceccsccecsesscessecesesssecssessscssecssecssecseeasecssecssesses 67

5.3.2 Mô tả giao diện người dùng - c5 + Scs* + sserseeeeserereere 68

5.4 Triển khai hệ thống -¿-2¿©2+©2++E++2EE2EEEEEEEEEESEEEEEEEEkkrrkrsrkerrrees 73

Trang 9

DANH MỤC HÌNH

Hình 2.1 Mô hình hồi quy logistiC 2 2c + E+EE£EE2EE2EE2EEEEEEEeEEeEkeExrrxrrerei 7

Hình 2.2 Mô hình mang nƠ-TOII - - 5 2< 3322683118391 Erkerre 8

Hình 2.3 Kiến trúc RNN -c:-52+t22 t2 tr tri 9Hình 2.4 Chuỗi các mô-đun của RNN tiêu chuẩn với một lớp đơn giản 11

Hình 2.5 Chuỗi các mô-đun LSTM có 4 lớp tương tác với nhau -. 11

Hình 2.6 Trạng thái tế bao trong một mô-đun LSRM -2- ¿5252252 12

Hình 2.7 Cổng quên trong mạng LSTM ¿2-2 E+SE+E£+E£+E£E££EerEerxerxrrssee 13

Hình 2.8 Công vào trong mạng LSTM 2-2222 E+SE+£E++EE+EEtEEtrEezrkrrkerkerex 14Hình 2.9 Cập nhật trang thái tế bào trong mạng LSTM -:- ¿25+ 15Hình 2.10 Cập nhật giá trị đầu ra trong mạng LSTM ¿- ¿s2 15

Hình 2.11 Mô hình mang GRU đơn ÌẺ 5 5 5S + E#EEseEEeEeeeeserrerserske 16

Hình 2.12 Cổng update trong mô hình GRU 2- 5¿©+¿2£+2+++£xz+z+zzezrsz 17

Hình 2.13 Công reset trong mô hình GRU 2- 2 22 2S2+££+E+E+£E+zx+zxezszxez 18

Hình 2.14 Lược đồ xác định thông tin trong quá khứ được sử dụng - 19Hình 2.15 Lược đồ xác định thông tin tại thời điểm hiện tại -5¿5+ 20Hình 3.1 Sơ đồ use-case bài toán đặt ra ¿s22 EE+ESEEEESESEEEEEESEEEErkerrrsrkrree 24

Hình 3.2 Sơ đồ hoạt động chức năng Dang ký - 2 2 2+s+xecxezxerxerscee 26

Hình 3.3 Sơ đồ hoạt động chức năng Đăng nhập - 2-2 2 2 s£x+£x£xzzsz e2 27

Hình 3.4 Sơ đồ hoạt động chức năng Xem các thông tin giá tiền điện tử 27

Hình 3.5 Sơ đồ hoạt động chức năng Lựa chọn hiển thị các chỉ báo lên biểu đồ giá

TUG rIỆEHtỶtỶÝỶỒỶỒỖŨỒ a 28

Hình 3.7 Sơ đồ hoạt động chức năng Hiền thị giá tiền điện tử theo thời gian thực 29Hình 3.8 Sơ đồ hoạt động chức năng Xem tin tức tiền điện tử liên quan 29Hình 3.9 Sơ dé hoạt động chức năng Dự đoán & Lựa chọn số phiên giao dịch 30Hình 3.10 Sơ đồ hoạt động chức năng So sánh độ chính xác giữa các mô hình dự

đoán khác nhau ccc ccccccesceceseeeseseceesssssssssssssssssssssseesseeseeeseeeseeeessssssssssaees 30

Trang 10

Hình 3.11 Sơ đồ hoạt động chức năng So sánh kết quả dự đoán giữa các mô hình dự

Hinh 3.12 So dé hoat động chức năng Lựa chon mô hình dự đoán mặc định 31

Hình 3.13 Sơ đồ hệ thống tổng quan cceccecccccecsessesssessessecssessessessesessessessesseeseeseees 33

Hình 3.14 Thiết kế cơ sở dữ liệu NÑoSQ(L -.-:-5cc¿5ccc2cxxsrrtrsrrrrsrrrrrrrrree 34

Hình 4.1 Biéu đồ thé hiện độ chính xác của mô hình một lớp 4n GRU theo phiên dự

đoán 10 ngày và dữ liệu đồng BTC với các giá trị số lượng đầu vào khác nhau 44

Hình 4.2 Biéu đồ hiển thị kết quả dự đoán cho giờ tiếp theo của đồng BTC với môhình một lớp an GRU ¿2£ ££©E+EE£+E£+EE£EE£EEEEE2EEEEEEEEEEEEEEEEEErrkkrrrerkrrrrrei 46Hình 4.3 Mô hình GRU đơn giản với một lớp ẩn -2- 2 2 x+2££+£++z++zxzsz 41

Hình 4.4 Mô hình LSTM ba lớp ân với drOpOUL -2- 2-2 2 2+s£+x+£x+£x+z+zzszse2 47

Hình 4.5 Biéu đồ thé hiện độ chính xác của mô hình một lớp ẩn GRU theo phiên dựđoán 1 ngày va dit liệu đồng BTC với các số lượng nơ-ron khác nhau 50Hình 4.6 Biểu đồ thê hiện độ chính xác của mô hình một lớp ân GRU theo phiên dựđoán 1 ngày va dit liệu đồng BTC với các hàm kích hoạt khác nhau 53Hình 4.7 Điều chỉnh tham số dé huấn luyện các mô hình 5-52 54

Hình 4.8 Xử lí kết qua va hién thi kết qua đưới dang biểu đỒ -5- 55

Hình 5.1 Giao diện trang Login của ứng dụng Web - -.- 5< sss+ccxsseeeeseesesers 68

Hình 5.2 Giao diện trang Register của ứng dụng web - «+ c«cc«cssesssseesee 69

Hình 5.3 Giao diện tổng quan trang Home của ứng dụng web - 70Hình 5.4 Giao điện vùng hién thị biéu đồ và các tùy chọn biểu đồ 71

Hình 5.5 Giao diện trang ÌN©WS Ác HH HH TH HH HH 71

Hình 5.6 Giao diện trang Predict ccccessecssscsseceseecsseeseecseeeceseeeeeesssecesaeeeseeeaes 72

Hình 5.7 Kiến trúc REST -:- ¿+ £+SE+EE£EEE2EE2EEEEEE2E12E122121711211 2xx cre, 74Hình 5.8 Kiến trúc Docker -: +t+2++t22ExxttEExtttrkktttrrtrrrrtrrrrrtrrrrrrrrrre 75Hình 5.9 Kiến trúc ha tầng của hệ thống -2¿ 2£ ©22+2E+2EEt2EEtEEEerxezrxrrrecree 76

Trang 11

DANH MỤC BANG

Bang 3.1 Danh sách các tác nhân - + + +21 1391991119111 11191 191 18x rrvrg 24 Bảng 3.2 Bảng danh sách các Use-case - -.- 5 1k SH ng ng re 24 Bang 3.3 Bang mô ta collection PTIC€ - - 5 5 + 1k ng HH giết 35 Bảng 3.4 Bang mô tả collection PriceBy]Dafe - s5 1k re 36

Bảng 3.5 Bảng mô tả collection ÌMOdelL 5 «5 + +2 E1 * 1E trtrưt 36

Bảng 3.6 Bang mô tả collection ModeÏÏT'ype - - -c sex siseirseeee 37 Bảng 3.7 Bang mô tả collection (TYDEO - - c 1 vn HH ng ng 37 Bảng 3.8 Bảng mô ta collection Defau]tMOdelL - + +« xxx +ksesseesersee 38 Bang 3.9 Bảng mô ta collection S€T- 5 5 + 1n HH ng ưệt 38

Bảng 3.10 Bang mô ta collection CronlUOg - <6 + + E+vEsseeseeeeereere 39

Bảng 4.1 Bảng mô tả các tham số API của sàn Binance -: -:-s+ 41Bang 4.2 Bang mô tả độ chính xác của mô hình một lớp ẩn GRU theo từng phiên dựđoán với dữ liệu đồng BTC qua các số lượng đầu vào khác nhau 45Bảng 4.3 Bảng mô tả độ chính xác của mô hình một lớp ân GRU theo từng phiên dựđoán với dữ liệu đồng BTC qua các số lượng nơ-ron khác nhau -.- 48

Bảng 4.4 Bảng mô tả độ chính xác của mô hình một lớp ân GRU theo từng phiên dự

đoán với dit liệu đồng BTC qua các hàm kích hoạt khác nhau 55+ 51Bang 4.5 Bang mô tả độ chính xác của 18 mô hình đề xuất khi phiên dự đoán là 1 giờcủa dữ liệu đồng BTC -¿- 2-52 £+E+EÉEEỀEE9 1211211211 21717121211112111 111111 re 55Bang 4.6 Bảng mô tả độ chính xác của 18 mô hình đề xuất khi phiên dự đoán là 10giờ của dữ liệu đồng BTTC 2: 2¿2+++2k22EE22E1271122122112711221211 211211 cxee 57Bảng 4.7 Bảng mô tả độ chính xác của 18 mô hình dé xuất khi phiên dự đoán là 1ngày của dữ liệu đồng BTC - - + s+SE+EE+EE+EE£EEEEEEEEEEEEEEE12117171 21212 xe 58Bang 4.8 Bảng mô tả độ chính xác của 18 mô hình đề xuất khi phiên dự đoán là 10ngày của dit liệu đồng B'TC ¿-2¿ + <+S1£EE£EE2EE2E1E2171121122171 7112112 ctkcrk 59

Bang 5.1 Bang mô tả các API của mô-đun API S€TV€T -.- 5255 +sssesssers 64 Bang 5.2 Bang mô tả các query parameter cua mô-đun API server 66

Bang 5.3 Bang mô ta các path parameter cua mô-đun API server - 67

Trang 12

Bang 5.4 Bảng mô tả các request body của mô-đun API server - 67 Bang 5.5 Bang mô tả giao dich trang LOBI1T s cà nnnnnnngxeg 68

Bang 5.6 Bang mô tả giao diện trang Register eee eee cee G51 ree 69

Bảng 5.7 Bảng mô tả giao diện trang Home 5 + + sEesEeeeeskeree 70

Bang 5.8 Bảng mô tả giao diện vùng hiển thị biểu đỒ 2-5 55s s+zszss2 71

Bảng 5.9 Bang mô tả giao diện trang ÏÑeWS - HH HH Hư 72 Bảng 5.10 Bảng mô tả giao diện trang Predict - - ccs*cseseeeseessserske 72

Trang 13

DANH MỤC TỪ VIET TAT

ADA Cardano (loại tiền điện tử)

ANN Artificial neural network

API Application programming interface

BNB Binance Coin (loai tién dién tir)

BTC Bitcoin (loại tiền điện tử)

DOM Document object model

ETH Ethereum (loại tiền điện tử)

GRU Gated recurrent unit

HTML Hypertext markup language

JSX Javascript + XML

LSTM Long-short term memory

LTC Litecoin (loại tiền điện tử)

MAPE Mean absolutr percentage error

RMSE Root mean square error

RNN Recurrent neural network

Trang 14

TÓM TẮT KHÓA LUẬN

Đề tài khóa luận “Xây dựng hệ thống dự đoán xu hướng biến đổi giá tiền điện

tử sử dụng các mô hình máy học” là một đề tài hướng đến đối tượng người dùng thamgia giao dịch tiền điện tử Đây là đề tài quan trọng và có tính thực tế trong bối cảnhtiền điện tử đã trở thành xu hướng trong lĩnh vực tài chính

Vì thị trường tài chính đầy rủi ro và cạm bẫy, cùng với tính chất biến động cao củatiền điện tử, nên hệ thông dự đoán xu hướng biến đổi tiền điện tử nhằm hỗ trợ người

dùng ra quyết định giao dịch đúng đắn, thu được lợi nhuận với các chức năng cơ bản

như: hién thi thông tin về giá và chỉ báo lên biéu đồ giá, các tin tức mới nhất liên quanđến tiền điện tử và hién thị kết qua dự báo xu hướng giá tiền điện tử trong tương lai

Ngày nay, với sự phát triển của các phương pháp máy học đặc biệt là học sâu trong

lĩnh vực dự đoán giá tiền điện tử, con người sẽ có thêm một trợ thủ vô cùng đắc lực

dé có thé đưa ra những quyết định hợp lí mang lại lợi nhuận tốt nhất Sau khi tìmhiểu, khảo sát các bài báo nghiên cứu về dự đoán giá tiền điện tử Cùng với sự pháttriển của các phương pháp máy học đặc biệt là học sâu Với mục tiêu là xây dựng một

hệ thông dự đoán tiền điện tử băng các phương pháp máy học, em đưa ra hướng thực

hiện cho đê tài như sau:

- Tim hiéu các nghiên cứu, các mô hình máy học, học sâu như: Long-short

term memory, Gated Recurrent Unit, và các kiến thức liên quan

- _ Lựa chọn và áp dung các mô hình hiệu quả, tinh chỉnh mô hình dé đạt hiệu

quả tối ưu nhất song song với việc giảm thời gian huấn luyện

- Xây dựng hệ thông dự đoán với: dữ liệu cập nhật liên tục từ sàn giao dịch

Binance, sử dụng các mô hình máy học, học sâu để huấn luyện mô hình,phát triển ứng dụng Web dé hién thị kết quả dự đoán và các thông tin liên

quan.

Trang 15

Chương 1.GIOI THIỆU TONG QUAN VE DE TÀI

không do ngân hàng trung ương phát hành và giá trị của chúng hoàn toàn dựa vào

cung và cầu trên thị trường Bitcoin (BTC) là đồng tiền điện tử đầu tiên được tạo ravào năm 2009 và tính tới năm 2020 có hơn 5400 loại tiền điện tử khác nhau như

Ethereum (ETH), Ripple (XRP),

Trong thi trường tài chính day rủi ro va cam bay, tiền điện tử không những phức tap

mà còn là một vấn dé tài chính khó hiểu do tính chất biến động cao của nó Do đó,các nhà đầu tư vào thị trường này cần công cụ nào đó đề dự đoán chính xác một phần

xu hướng hay mức giá tương lai của tiền điện tử Các dự đoán chính xác có thé hỗ trợ

các nhà đầu tư tiền điện tử đưa ra quyết định đầu tư đúng đắn và thu lại lợi nhuận

Theo Giả thuyết thị trường hiệu quả (EMH - efficien markets hypothesis), được

Eugene Fama dé cập lần đầu vào những năm 1970 trong bài viết “Efficient Capital

Markets: A Review of Theory and Empirical Work” [1] đã đưa ra rằng giá chứngkhoán là không thể dự đoán được Nhưng từ các nghiên cứu gần đây [2] [3] về dựđoán tiền điện tử, có thể nhận thấy các mô hình máy học hay học sâu đang đượcnghiên cứu, ứng dụng rộng rãi trong việc dự đoán giá tiền điện tử và đạt được nhữngthành công nhất định Có thê kê đến một số phương pháp máy học truyền thống như:

linear regression, decision tree Hay một số phương pháp học sâu ứng dụng mạng

nơ-ron như: recurrent neural network, convolutional neeural network,

Mục đích luận văn tôt nghiệp này của em nhăm tìm hiêu, nghiên cứu, so sánh các

phương pháp dự đoán giá tiên điện tử băng phương pháp học sâu cho một sô loại tiên

điện tử trên sàn hiện nay như: Bitcoin, Ethereum, Từ đó, làm chủ các công nghệ và

Trang 16

xây dựng được một hệ thong du doan gia tiền điện tử Hỗ trợ được phần nao đó chocác nhà dau tư khi tham gia vào thị trường day rủi ro này.

1⁄2 Mục tiêu đề tài

Mục tiêu chung: Tìm hiểu các mô hình máy học, học sâu áp dụng cho việc dự đoán

giá tiền điện tử Từ đó, xây dựng được hệ thống hỗ trợ ra quyết định đầu tư cho các

nhà đầu tư tiền điện tử

Cụ thể:

- Tim hiểu các mô hình máy học, học sâu áp dụng cho việc dự đoán giá tiền

điện tử và tìm hiểu các đề tài nghiên cứu liên quan

- Lựa chọn và áp dụng các mô hình hiệu qua, tinh chỉnh mô hình dé đạt hiệu

quả tối ưu nhất song song với việc giảm thời gian huấn luyện

- - Xây dựng hệ thong dự đoán với: Dữ liệu liên tục được lay ttr san giao dich

Su dụng các mô hình máy học, hoc sâu dé huấn luyện mô hình Phát triểnmột ứng dụng web để hiện thị các kết quả dự đoán và thông tin liên quancủa tiền điện tử theo thời gian

1.3 Đối tượng và phạm vi nghiên cứu

1.3.1 Đối tượng

Nghiên cứu lý thuyết và cách áp dụng các thuật toán máy học dự đoán giá tiền điện

tử hiệu quả hiện nay: LSTM, RNN, GRU

Nghiên cứu ngôn ngữ Python với Framework FastAPI.

Nghiên cứu và ứng dụng kiến trúc REST (Representational State Transfer)

Nghiên cứu các yêu cầu kỹ thuật trong việc xây dựng ứng dụng website

Nghiên cứu các ứng dụng, kỹ thuật hỗ trợ thiết kế giao điện ứng dụng web

1.3.2 Phạm vi nghiên cứu

Các phương pháp máy học, học sâu được áp dụng trong lĩnh vực dự đoán xu hướng

biên đôi giá tiên điện tử.

Trang 17

Dữ liệu giao dịch từ các sàn giao dịch tiền điện tử.

Framework hỗ trợ xây dựng các mô hình máy học, học sâu.

Nghiên cứu các yêu cau trong việc xây dựng ứng dụng web

Nghiên cứu các dịch vụ hỗ trợ thiết kế giao diện ứng dụng web

Ngôn ngữ lập trình: Python.

Thư viện: ReactJS, FastAPI, TensorFlow, Keras,

Hệ quan tri co sở dữ liệu: MongoDB.

1.4 Phuong pháp nghiên cứu

Phân tích, khảo sát một số bài báo liên quan trong lĩnh vực dự đoán tài chính

Tìm hiểu các mô hình máy học dự đoán giá tiền điện tử trong những bài báo khoa học

liên quan.

Nghiên cứu các phương pháp chuẩn hóa và tiền xử lý dữ liệu

Lựa chọn mô hình phủ hợp đề xây dựng hệ thống dự đoán

Tìm hiểu các giải pháp đề khắc phục những nhược diém của mô hình đã chon cũng như

các thách thức đề xây dựng một hệ thống hiệu quả

Tìm hiểu cách thu thập và lưu trữ dữ liệu liên tục từ các sàn giao dịch

Tìm hiểu và sử dụng các thư viện hỗ trợ xây dựng một mô hình máy học

Xây dựng và đánh giá mô hình.

Triển khai mô hình trên nền tảng ứng dụng web

1.5 Các nghiên cứu liên quan

Ngày nay, dé dự đoán xu hướng giá tiền điện tử, các nghiên cứu thường sử dụng dữliệu giá trong quá khứ được thu thập theo ngày Sử dụng dữ liệu đó dé huấn luyện các

mô hình có thé dự đoán được giá chứng khoán tương lai, rồi so sánh hiệu suất của

các mô hình dé rút ra được mô hình nào dự đoán gan đúng nhat.

Trang 18

Từ nghiên cứu “Comparison of ARIMA and Artificial Neural Networks

models for stock price prediction” [4] cua Ayodele Ariyo Adebiyi và các cộng sự.

Tác giả đã sử dụng hai phương pháp ARIMA va ANN dé dự đoán giá chứng khoán

cho ngày tiếp theo Sử dụng dữ liệu chứng khoán của Dell Inc từ 17/08/1988 đến

25/02/2011 với tổng 5680 mau Dé đánh giá hiệu suất, tác giả sử dụng MSE (mean

squared error), forecast error Thu được kết quả dự đoán của mô hình ANN có hiệu

suất tốt hơn so với ARIMA Điều này cũng chứng tỏ việc sử dụng các mô hình mạng

nơ-ron có tiêm năng rât cao

Trong nghiên cứu “Stock Price Prediction Using Machine Learning and

LSTM-Based Deep Learning Models” [5] của tác gia Sidra Mehtab va các cộng sự.

Dé dự đoán giá chứng khoán cho tuần tiếp theo (tương ứng với 5 ngày) ho đã sử dung

bộ sữ liệu biến động giá chứng khoáng hằng ngày dựa trên chỉ số NIFTY 50 từ

29/12/2014 đến 31/7/2020 Tiền sử lý dữ liệu với kỹ thuật chuẩn hóa min-max Họ

đã sử dụng các kỹ thuật khác nhau dé dự đoán như: Decision Tree, Random Forest,

Artificial Neural Network, Support Vector Machine, Long-short term memory,

Sau đó dùng chi số Root Mean Square Error (RMSE) va Correlation dé đánh giá kha

năng dự đoán của các mô hình Và kết quả thu được là mô hình LSTM có hiệu suất

vượt trội hơn.

Trong nghiên cứu “A Gated Recurrent Unit Approach to Bitcoin Price

Prediction” [6] của tac gia Aniruddha Dutta và cộng sự Đề dự đoán giá Bitcoin theo

từng ngày, tác giả đã dùng đữ liệu chuỗi thời gian Bitcoin từ nhiều nguồn khác nhau

từ 1/1/2010 đến 30/6/2019 Sau đó đữ liệu được chuẩn hóa bằng cách hạ giá trị từngchuỗi dữ liệu rồi chia cho độ lệch chuẩn của nó Bằng cách sử dụng các mô hình

LSTM va GRU kết hợp với dropout hay lặp lại các dropout dé huấn luyện dữ liệu

Đề đánh giá hiệu năng mô hình tác giả sử dụng độ do RMSE Sau cùng, mô hình

GRU với dropout cho hiệu suất tốt nhất

Hay trong đề tài Luận văn tốt nghiệp kỹ sư “Xây dựng hệ thống dự đoán xu

hướng giá chứng khoán” [12] của tác giả Dư Gia Huy năm 2020 tại Đại học quốc gia

Trang 19

TP Hồ Chí Minh, trường Đại học Công nghệ thông tin Tác giả đã dự đoán xu hướng

giá tiền của đồng Bitcoin cho 10 ngày tiếp theo bằng mô hình LSTM Tiền xử lý dữ

liệu bằng chuẩn hóa min-max, đo độ chính xác của mô hình bằng độ đo MAPE (Mean

absolute percentage error) Kết quả thu được mô hình với 3 lớp ân LSTM sử dụng

dropout có thê dùng đề dự đoán xu hướng giá chứng khoán

Từ những nghiên cứu trên, đối với đề tài khóa luận của mình, dựa theo [6] em nghiên

cứu sử dụng các mô hình dự đoán giá được xây dựng từ LSTM và GRU kết hợp vớidropout, tiền xử lý dữ liệu bằng min-max theo [5] và [12], đánh giá độ chính xác bằng

độ đo MAPE theo [12] rồi tiến hành dự đoán cho 4 phiên khác nhau gồm: 1 giờ, 1ngày, 10 giờ và 10 ngày, cho 5 loại tiền điện tử phố biến hiện nay như: Bitcoin,

Ethereum, Litecoin, Cardano và Binance.

1.6 Bố cục báo cáo

Chương 1: Giới thiệu tổng quan về đề tài

Chương 2: Cơ sở lý thuyết

Chương 3: Phân tích và thiết kế hệ thống

Chương 4: Thu thập dữ liệu và các mô hình dự đoán dữ liệu

Chương 5: Xây dựng và trién khai hệ thống

Chương 6: Kết luận

Trang 20

Chương 2.CƠ SỞ LÝ THUYET

Trong chương này, em sẽ trình bày về các lý thuyết liên quan đến các thuật toán, cáccông nghệ được sử dụng và nhắc đến trong khóa luận

2.1 Lý thuyết về các thuật toán nơ-ron

Học sâu là một trong những phương pháp máy học với những thuật toán được tạo ra

băng cách mô phỏng theo cấu trúc và cách thức hoạt động của mạng nơ-ron trong não

con người.

2.1.1 Mạng nơ-ron nhân tạo

Mạng nơ-ron nhân tạo (Artificial Neural network — ANN hay Neural Network)! là

một mô hình toán học hay mô hình tính toán được xây dựng dựa trên các no-ron sinh

học Nó gồm có một nhóm các nơ-ron nhân tao (nút) nói với nhau dé xử lý thông tin

Các nút thường được tô chức theo từng lớp Kiến trúc của ANN gồm 3 thành phần:

lớp đầu vào (input layer), lớp ân (hiden layer), lớp đầu ra (output layer)

2.1.1.1 Mô hình mạng nơ-ron

Mô hình mạng nơ-ron đơn giản nhất là hồi quy logistic (logistic regression) chỉ với 2

lớp: đâu vào và đâu ra.

2.1.1.2 Hồi quy logistic

.

Hình 2.1 Mô hình hồi quy logistic?

Ị Nguồn: https://en.wikipedia.org/wiki/Artificial_neural_network, truy cập ngày 07/07/2021

7 Nguôn: https://towardsdatascience.com/a-logistic-regression-from-scratch-3824468b1f88, truy cập ngày

07/07/2021

Trang 21

Giả sử ta có mô hình như hình 2.2, để xác định giá tri đầu ra y, ta cần thực hiện quá

trình tính toán sau:

Z=fi,Xw;+ +ƒf,xwna+b

y=ø0()

Trong đó:

- fir fo fy là giá trị của các thuộc tính đầu vào

- Wy4,W2, Wy là trọng số của từng giá trị đầu vào tương ứng

- pb hay bias là hệ số được thêm vào dé phương trình đường thăng z không

đi qua gốc tọa độ

- ơ là hàm kích hoạt nhằm điều chỉnh giá trị đầu ra nam trong khoảng [0, 1],

Hình 2.2 Mô hình mang no-ron?

Mạng nơ-ron được cấu tạo từ các lớp: lớp đầu vào, lớp an, lớp đầu ra Lưu ý, chỉ có

1 lớp đầu vào và 1 lớp đầu ra, còn lớp ân có thé có 1 hoặc nhiều lớp Số lượng nút ở

3 Nguồn: _

https://towardsdatascience.com/step-by-step-guide-to-building-your-own-neural-network-from-scratch-df64b 1c5ab6e, truy cập ngày 07/07/2021

Trang 22

các lớp có thé khác nhau, hàm kích hoạt của mỗi nút có thé khác nhau: sigmoid,tanh, ReLU Trong mạng nơ-ron, trừ các nút thuộc lớp đầu vào thì các nút còn lại

đều được kết nối đầy đủ (fully-connected) với các nút ở lớp trước đó

2.1.2 Recurrent Neural Network (RNN)

Mang nơ-ron hồi quy (RNN)! được thiết kế dé xử lý chuỗi thông tin Với bai toán dựđoán giá tiền cho phiên tiếp theo, thì chúng ta cần phải biết giá của những phiên trước

đó Mà với các mạng nơ-ron truyền thống, thì tất cả đầu vào và ra đều độc lập vớinhau, không liên kết thành chuỗi với nhau, dẫn đến mô hình này không phù hợp vớicác bài toán Với RNN nó sẽ thực hiện cùng một tác vụ cho tất cả các phần tử củamột chuỗi với đầu ra phụ thuộc vào cả phép tính trước đó, vì vậy nó được gọi là môhình mạng nơ-ron hồi quy (RNN)

Một cách dễ hiểu hơn, RNN có thé được coi là nhiều bản sao chép của cùng một

mang, trong đó moi đâu ra cua mang này là dau vào của một mạng sao chép khác.

được thực hiện như sau:

- x, là dau vào tại bước t.

4 Nguồn: http:/www.wildml.com/2015/09/recurrent-neural-networks-tutorial-part-1-introđuction-to-rnns/,

truy cập ngày 07/07/2021

Trang 23

- Tại mỗi bước có một trạng thái ấn s¿ Nó chính là bộ nhớ của mạng s,

được tính toán dựa trên các trạng thái an phía trước va đầu vào tại bước đó:

Se = f (Ux, + Ws,_¡) Hàm ƒ thường là một hàm phi tuyến Dé làm phéptoán cho phan tử 4n đầu tiên, ta cần khởi tạo thêm s_¿, với giá trị thường

là 0.

- 0 là đầu ra tại bước £ Ví dụ như muốn dự đoán từ tiếp theo xuất hiện trong

câu thì : o; chính là một vectơ xác suất các của từng nhãn kết quả Giả sử

ta sử dung hàm kích hoạt softmax: 0, = soƒtmax(Vs,) Vectơ xác suất

0¿ cũng có thể được tính toán tương tự nếu ta sử dụng các hàm kích hoạt

khác như sigmoid, tanh, ReLU

Về mặt ký thuyết, RNN có thé xử ly và lưu trữ thông tin của một chuỗi có chiều dàibất kỳ Tuy nhiên, thực tế nó chỉ hiệu quả với chuỗi có chiều dài không quá lớn

nguyên nhân là do vanishing gradient được nghiên cứu sâu trong các bài báo của

Hochreiter (1991) và Hochreiter, et al (2001).

Dé khác phục nhược điểm trên, 2 biến thé của RNN là LSTM (Long short term

memory) va GRU (Gated Recurrent Units) đã ra đời Đây cũng là 2 mô hình được em

tìm hiểu sâu và áp dụng vào hệ thống

2.1.3 Long short term memory (LSTM)

LSTM là một mô hình phô biến nhất được sử dụng của RNN LSTM thé hiện sự ưu

việt ở điểm có thé nhớ được nhiều bước hơn mô hình RNN truyền thống Về cơ bản

thì cau trúc của LSTM giống với cau trúc RNN truyền thống, chỉ khác nhau ở cáchtính toán của các nút ân LSTM được thiết kế để tránh vấn đề phụ thuộc xa (long-term dependency) khi có thé nhớ được các thông tin trong thời gian dài

Mạng hồi quy có dạng là một chuỗi các mô-đun lặp đi lặp lại của mạng nơ-ron Với

RNN, các mô-đun này có cấu trúc rất đơn giản, thường là một hàm tanh (activation

function) duy nhất

5 Nguồn: https://colah github.io/posts/2015-08-Understanding-LSTMs/, truy cập ngày 07/07/2021

10

Trang 24

Thông tin quan trọng nhất của LSTM là trạng thái tế bào (cell state) — đường chạy

thông ngang phía trên như hình 2.6 Trạng thái tế bào giống như băng truyền, chạy

xuyên suốt tất cả các nút mạng và chỉ tương tác tuyến tính đôi chút Vì vậy thông tin

có thé dé đàng được truyền đi thông suốt mà không sợ bị thay đồi

lãi

Trang 25

Hình 2.6 Trạng thái tế bào trong một mô-đun LSRMLSTM có khả năng bỏ đi hay thêm vào các trông tin cần thiết cho trạng thái tế bào,chúng được điều chỉnh cần thận bởi các nhóm được gọi là công (gate).

Các công là nơi sàng lọc thông tin đi qua nó, chúng kết hợp bởi một lớp sigmoid và

0 thì bỏ toàn bộ thông tin.

12

Trang 26

Hình 2.7 Cổng quên trong mạng LSTM

Ta có công thức:

fe = ø(M/ [he Xe] + br)

Với bài toán dự đoán giá tiền điện tử, dữ liệu dầu vào dạng chuỗi thời gian

(time-series), thì trạng thái tế bào có thể sẽ luôn mang thông tin về giá của những phiên

giao dịch trước đó và dựa vào nó dé dự đoán được giá của một hay nhiều phiên tiếp

theo Nhưng với những phiên giao dịch ở quá xa thời điểm dự đoán hay quá bấtthường, thi tang cổng quên sẽ loại bỏ những thông tin này vì nó không còn tác dụng

dé dự đoán

Tầng cập nhật (update gate layer): dé quyết định xem thông tin mới nào sẽ lưu vàotrạng thái tế bào Gồm có 2 phần Đầu tiên là sử dụng một tầng sigmoid được gọi làtầng cổng vào (input gate layer) dé quyết định xem giá trị nào sẽ được cập nhật Sau

đó sử dụng tầng tanh: tạo ra một véc-to có giá tri mới Ế nhằm thêm vào cho trạng

thái Kết hợp 2 giá trị đó lại để tạo ra một cập nhật cho trạng thái, dé quyét dinh xem

thông tin mới nao sẽ lưu vào trạng thái tê bào.

13

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

w