Tải bản đầy đủ (.pdf) (92 trang)

KHAI THÁC LUẬT ÍCH lợi TRÊN mô HÌNH GIAO DỊCH LIÊN NGÀY

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (9.43 MB, 92 trang )

ĐẠI HỌC QUỐC GIA TP HCM
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN


NGUYỄN HẢI YẾN

KHAI THÁC LUẬT ÍCH LỢI TRÊN MÔ HÌNH
GIAO DỊCH LIÊN NGÀY

KHÓA LUẬN CAO HỌC
NGÀNH KHOA HỌC MÁY TÍNH
Mã số: 60.48.01.01

NGƢỜI HƢỚNG DẪN KHOA HỌC:
PGS.TS VÕ ĐÌNH BẢY

TP HỒ CHÍ MINH – NĂM 2016


LỜI CẢM ƠN
Tôi xin chân thành cảm ơn Trƣờng đại học Công nghệ thông tin, phòng đào
tạo sau đại học, khoa khoa học máy tính đã tạo điều kiện tốt nhất để tôi hoàn thành
chƣơng trình cao học này. Xin chân thành cảm ơn quý Thầy Cô trong khoa đã cung
cấp cho chúng tôi rất nhiều kiến thức trong thời gian học tập tại trƣờng: những
ngƣời đã cung cấp cho tôi hành trang về kiến thức, trí tuệ, nhân cách và cả sự say
mê nghiên cứu khoa học. Xin đƣợc kính chúc quý Thầy Cô luôn dồi dào sức khỏe
và thành công trong cuộc sống.
Trong quá trình thực hiện đề tài này, tôi đã nhận đƣợc rất nhiều sự giúp đỡ của
PGS.TS Võ Đình Bảy: Thầy là ngƣời đã trực tiếp hƣớng dẫn khoa học cho tôi. Thầy
đã tạo điều kiện và luôn tận tình chỉ dạy cho tôi trong suốt thời gian qua. Em xin
cảm ơn Thầy rất nhiều!


Tôi cũng xin đƣợc gởi lời cảm ơn đến các anh chị em, các bạn đồng nghiệp
trong khoa công nghệ thông tin trƣờng đại học công nghiệp thực phẩm TP.HCM đã
có những nhận xét, góp ý để tôi hoàn thiện đề tài.
Cảm ơn gia đình nhỏ đã cho tôi sức mạnh để hoàn thành mọi việc.
Mặc dù đã rất cố gắng nhƣng khóa luận khó tránh khỏi những thiếu sót, kính
mong quý Thầy Cô góp ý, chỉ dẫn để đề tài đƣợc hoàn thiện và có ứng dụng thực
tiễn.
Một lần nữa tôi xin chân thành cảm ơn!
Tp. Hồ Chí Minh, ngày 20 tháng 11 năm 2016
Học viên thực hiện

Nguyễn Hải Yến


LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi, các số liệu và kết
quả nghiên cứu nêu trong khóa luận là trung thực.Vì vậy tôi xin chịu trách nhiệm
hoàn toàn về công trình nghiên cứu của mình.
Tp. Hồ Chí Minh, ngày 20 tháng 11 năm 2016

Nguyễn Hải Yến


MỤC LỤC
DANH MỤC CÁC TỪ VIẾT TẮT ............................................................................3
DANH MỤC BẢNG BIỂU ........................................................................................4
DANH MỤC HÌNH VẼ ..............................................................................................5
MỞ ĐẦU

..............................................................................................................7


CHƢƠNG 1. TỔNG QUAN......................................................................................9
1.1. GIỚI THIỆU ..................................................................................................9
1.2. ĐỘNG CƠ NGHIÊN CỨU .........................................................................11
1.3. MỤC TIÊU KHÓA LUẬN .........................................................................12
1.4. PHẠM VI NGHIÊN CỨU ..........................................................................13
1.5. Ý NGHĨA KHOA HỌC VÀ THỰC TIỄN .................................................13
CHƢƠNG 2. CƠ SỞ LÝ THUYẾT .......................................................................15
2.1. KHAI THÁC TẬP PHỔ BIẾN VÀ LUẬT KẾT HỢP ...............................15
2.1.1. Một số định nghĩa liên quan .............................................................15
2.1.2. Khai thác tập phổ biến dựa trên IT-Tree [6] .....................................16
2.1.3. Khai thác tập phổ biến dựa trên FP-Tree [9, 12] ..............................17
2.1.4. Khai thác luật kết hợp [1, 13] ...........................................................20
2.2. THỊ TRƢỜNG CHỨNG KHOÁN VÀ MÔ HÌNH GIAO DỊCH LIÊN
NGÀY .........................................................................................................22
2.2.1. Thị trƣờng chứng khoán (Stock Market) [3, 8] ................................22
2.2.2. Cơ sở dữ liệu giao dịch (Transaction Database – TDB) [11] ...........22
2.2.3. Mô hình giao dịch liên ngày (Interday Trading Model) [8, 11] .......24
2.2.4. Luật giao dịch ...................................................................................26
2.2.5. Lợi nhuận giao dịch (Profit) .............................................................27
2.2.6. Rủi ro của luật giao dịch (Risk) ........................................................29
2.2.7. Tỉ lệ thắng của giao dịch (WinRate) .................................................31
2.3. THUẬT TOÁN KHAI THÁC LUẬT ÍCH LỢI .........................................31
2.3.1. Thuật toán PRMiner [11] ..................................................................31
2.3.2. Thuật toán JCMiner [10] ...................................................................32
2.3.3. Thuật toán ATMiner [10]..................................................................33
2.3.4. Nhận xét đánh giá .............................................................................34
1



CHƢƠNG 3. BÀI TOÁN KHAI THÁC LUẬT ÍCH LỢI VÀ THUẬT TOÁN
PRMINER CẢI TIẾN ......................................................................35
3.1. BÀI TOÁN KHAI THÁC LUẬT ÍCH LỢI ................................................35
3.2. THUẬT GIẢI PRMINER CẢI TIẾN .........................................................35
3.2.1. Ý tƣởng thuật giải .............................................................................35
3.2.2. Thuật giải diễn đạt bằng sơ đồ khối ..................................................36
3.2.3. Thuật giải mô tả chi tiết ....................................................................39
3.2.4. Thuật toán cho các vấn đề kỹ thuật ...................................................40
3.3. VÍ DỤ MINH HỌA DÙNG PRMINER CẢI TIẾN ...................................52
CHƢƠNG 4. THIẾT KẾ HỆ THỐNG – CÀI ĐẶT THỬ NGHIỆM ................61
4.1. THIẾT KẾ HỆ THỐNG ..............................................................................61
4.1.1. Mục tiêu ứng dụng ............................................................................61
4.1.2. Cấu trúc hệ thống ..............................................................................61
4.1.3. Tổ chức lƣu trữ .................................................................................62
4.2. XÂY DỰNG CƠ SỞ DỮ LIỆU - TDB.......................................................63
4.2.1. Xử lý dữ liệu [14, 15, 16, 17, 18] .....................................................63
4.2.2. Xây dựng CSDL - TDB ....................................................................66
4.3. CÀI ĐẶT THỬ NGHIỆM...........................................................................66
4.3.1. Môi trƣờng thực nghiệm ...................................................................66
4.3.2. Tổ chức các giao diện .......................................................................67
4.3.3. Kết quả thử nghiệm ...........................................................................68
CHƢƠNG 5. KẾT LUẬN – HƢỚNG PHÁT TRIỂN ..........................................78
5.1. KẾT QUẢ ....................................................................................................78
5.2. HẠN CHẾ....................................................................................................79
5.3. HƢỚNG PHÁT TRIỂN ..............................................................................79
TÀI LIỆU THAM KHẢO .........................................................................................80
PHỤ LỤC

............................................................................................................82


2


DANH MỤC CÁC TỪ VIẾT TẮT

Tiếng Anh

Tiếng Việt

AR:

Association Rules

Luật kết hợp

ITM:

Inter Transaction Mining

Mô hình khai thác liên giao dịch

PM:

Profit Mining

Khai thác luật ích lợi

TDB:

Transaction Database


Cơ sở dữ liệu giao dịch

TO:

Trading Order

Lệnh giao dịch

CTO:

Complete Trading Order

Giao dịch hoàn tất

BO:

Buy Order

Lệnh mua

SO:

Sell Order

Lệnh bán

TP:

Trading Priority


Ƣu tiên giao dịch

BF:

Buy First

Mua trƣớc

SF:

Sell First

Bán trƣớc

BP:

Buy Pattern

Mẫu mua

SP:

Sell Pattern

Mẫu bán

HPOS:

Hold Position


Trạng thái vị trí nắm giữ

MP:

Market Position

Trạng thái vị trí thị trƣờng

NP:

Net Profit

Lợi nhuận ròng

Sup:

Support

Độ hỗ trợ

CLoss:

Consecutive Loss

Giá trị mất liên tiếp

DD:

Draw Down


Sự khác nhau giữa giá mua và giá thấp nhất

RU:

RunUp

Sự khác nhau giữa giá bán và giá cao nhất.

3


DANH MỤC BẢNG BIỂU

Bảng 2.1. Ví dụ về CSDL giao dịch TDB ........................................................................... 23
Bảng 3.1 Điều kiện kết hợp mẫu mua X và mẫu bán Y để sinh luật giao dịch [11] ........... 44
Bảng 3.2. GenBP sinh ra các mẫu BP Bảng 3.3. GenSP sinh ra các mẫu SP ................... 53
Bảng 3.4. Các luật sinh ra từ các mẫu BP và SP tƣơng ứng ................................................ 54
Bảng 3.5. Mô phỏng giao dịch của luật R41 ...................................................................... 59
Bảng 4.1. Bảng sinh mục qua các sự kiện ........................................................................... 65

4


DANH MỤC HÌNH VẼ

Hình 2.1. Cây tìm kiếm IT-Tree và các lớp tƣơng đƣơng ................................................... 16
Hình 2.2 Máy trạng thái của mô hình giao dịch liên ngày [11] .......................................... 25
Hình 2.3. Đƣờng cong biến động giá một cổ phiếu theo thời gian để tính lợi nhuận của luật
giao dịch ............................................................................................................... 28

Hình 2.4. Đƣờng cong biến động giá một cổ phiếu theo thời gian để tính toán rủi ro của
luật giao dịch. ....................................................................................................... 30
Hình 3.1. Sơ đồ thuật giải khai thác luật ích lợi (1) ............................................................. 37
Hình 3.2. Sơ đồ thuật giải khai thác luật ích lợi (2) ............................................................. 38
Hình 3.3. Danh sách OneItemList của bảng 2.1 .................................................................. 52
Hình 3.4. Danh sách PList của bảng 2.1 .............................................................................. 52
Hình 4.1. Dữ liệu mã cổ phiếu ACB lấy từ [14] .................................................................. 63
Hình 4.2. Biểu đồ nến 1- ngày và chỉ số SMA .................................................................... 64
Hình 4.3. Hàm cross-over và cross-under............................................................................ 65
Hình 4.4. Minh họa các chỉ số SMA(3) SMA(5) SMA(8) các cross-over và cross-under
trên mã cổ phiếu ACB ......................................................................................... 66
Hình 4.5. Giao diện màn hình chính .................................................................................... 67
Hình 4.6. Giao diện màn hình khai thác luật ....................................................................... 68
Hình 4.7 Thông số đầu vào của cổ phiếu Mẫu 1 .............................................................. 68
Hình 4.8 Danh sách mẫu mua và mẫu bán của cổ phiếu Mẫu 1 ...................................... 69
Hình 4.9 Luật giao dịch và luật ích lợi của cổ phiếu Mẫu 1 ............................................ 69
Hình 4.10 Thông số đầu vào của cổ phiếu ACB ............................................................. 71
Hình 4.11 Danh sách mẫu mua và mẫu bán của cổ phiếu ACB ..................................... 72
Hình 4.12 Luật giao dịch và luật ích lợi của cổ phiếu ACB ............................................ 72
Hình 4.13 Thông số đầu vào của cổ phiếu BHS ............................................................. 73

5


Hình 4.14 Luật giao dịch và luật ích lợi của cổ phiếu BHS ............................................ 74
Hình 4.15 Thông số đầu vào của cổ phiếu BVH ............................................................. 75
Hình 4.16 Luật giao dịch và luật ích lợi của cổ phiếu BVH ........................................... 75
Hình 4.17 Thông số đầu vào của cổ phiếu CSM ............................................................. 76
Hình 4.18 Luật giao dịch và luật ích lợi của cổ phiếu CSM ........................................... 77


6


MỞ ĐẦU

Hiện nay, khai thác dữ liệu là một trong những xu hƣớng công nghệ nổi bật.
Đặc biệt trong những năm gần đây, vai trò của máy tính trong việc lƣu trữ và xử lý
thông tin ngày càng trở nên quan trọng. Bên cạnh đó các thiết bị thu thập dữ liệu tự
động tƣơng đối phát triển đã tạo ra những kho dữ liệu khổng lồ. Việc áp dụng các
kỹ thuật trong khai thác dữ liệu nhƣ kỹ thuật khai thác luật kết hợp vào các lĩnh vực
đời sống xã hội đã giúp con ngƣời tìm ra các quy luật, các tri thức mà chính các quy
luật hay các tri thức đó quay lại phục vụ cho con ngƣời, hỗ trợ con ngƣời đƣa ra các
quyết định đúng đắn hay giúp con ngƣời đƣa ra những dự báo trong tƣơng lai để
tránh đƣợc rủi ro.
Tuy nhiên, việc ứng dụng các luật kết hợp trong thị trƣờng tài chính chƣa thực
sự hiệu quả, luật kết hợp không cung cấp đủ thông tin cho các nhà đầu tƣ. Trên thực
tế, để thu về lợi nhuận cao trên mỗi giao dịch chứng khoán, một nhà đầu tƣ cũng
cần phải trông đợi một tổn thất thấp và một tỉ lệ thắng (tỉ lệ thành công) tốt hơn từ
giao dịch đó. Với việc lựa chọn đề tài “Khai thác luật ích lợi trên mô hình giao
dịch liên ngày” mong muốn tìm ra các luật giao dịch và các thông tin của luật giúp
các nhà đầu tƣ có đƣợc lợi nhuận.
Nội dung khóa luận đƣợc trình bày trong 5 chƣơng, bao gồm:
Chƣơng 1 giới thiệu tổng quan về đề tài bao gồm các nghiên cứu tìm ra các
luật kết hợp và thực tế việc khai thác luật trong thị trƣờng tài chính. Trình bày
động cơ nghiên cứu, mục tiêu của khóa luận, phạm vi nghiên cứu, ý nghĩa khoa học
và thực tiễn của đề tài.
Chƣơng 2 trình bày cơ sở lý thuyết của đề tài liên quan đến khai thác tập phổ
biến - luật kết hợp, mô hình giao dịch liên ngày, phƣơng pháp tính lợi nhuận ròng,
tính rủi ro, tính tỉ lệ thắng của một luật giao dịch. Tìm hiểu các thuật toán khai thác
luật ích lợi, những ƣu điểm và nhƣợc điểm của chúng.

Chƣơng 3 giới thiệu mô hình của hệ thống khai thác luật ích lợi và các vấn đề
liên quan để xây dựng hệ thống bao gồm: Tìm ra tập các mẫu mua, tìm ra tập các
7


mẫu bán, xây dựng luật kinh doanh từ tập mẫu mua và mẫu bán, từ tập luật kinh
doanh lọc ra các luật ích lợi. Đi cùng các vấn đề là các phƣơng pháp tiếp cận để giải
quyết và các thuật giải tƣơng ứng. Giới thiệu chi tiết về thuật giải PR-Miner cải tiến
trong khai thác luật ích lợi.
Chƣơng 4 là phần cài đặt xây dựng hệ thống khai thác luật ích lợi. Hệ thống
giúp tìm ra các luật thỏa mãn các mong đợi của nhà đầu tƣ. Thu thập dữ liệu và xây
dựng CSDL giao dịch (TDB) của một số mã cổ phiếu trong khoảng thời gian từ
2006 – 2016, tiến hành phân tích các yêu cầu và chức năng của hệ thống, thiết kế
các thành phần xử lý và đƣa ra một số kết quả thử nghiệm.
Chƣơng 5 là kết luận và hƣớng phát triển. Tổng kết những kết quả đạt đƣợc,
tóm tắt lại các vấn đề đã đặt ra trong khóa luận và cách giải quyết, những đóng góp
mới và một số hƣớng phát triển của đề tài trong tƣơng lai.

8


Chương 1. Tổng quan

CHƢƠNG 1. TỔNG QUAN

Chƣơng 1 giới thiệu tổng quan về đề tài bao gồm các nghiên cứu tìm ra các
luật kết hợp và thực tế việc khai thác luật trong thị trƣờng tài chính. Trình bày
động cơ nghiên cứu, mục tiêu của khóa luận, phạm vi nghiên cứu, ý nghĩa khoa học
và thực tiễn của đề tài.


1.1.

GIỚI THIỆU
Trong lĩnh vực khoa học máy tính nói chung, đặc biệt là lĩnh vực khai thác dữ

liệu nói riêng, luôn luôn có những bƣớc phát triển nhảy vọt rất mạnh mẽ; Nó đã,
đang và sẽ hỗ trợ vào mọi lĩnh vực trong đời sống xã hội.
Trên thực tế, nhiều ứng dụng khai thác luật kết hợp từ các cơ sở dữ liệu lớn đã
giúp con ngƣời có những quyết định "tốt". Luật kết hợp là một trong những chủ đề
nổi bật trong lĩnh vực khai thác dữ liệu. Luật kết hợp đƣợc sử dụng để xây dựng các
mô hình và đƣa ra các dự đoán trong nhiều lĩnh vực nhƣ là phân tích giỏ hàng, chẩn
đoán y khoa, và một số lĩnh vực khác,… Ví dụ, một ai đó có thể hƣởng lợi từ luật
kết hợp: "Khi giá một cổ phiếu đi lên

giá một cổ phiếu khác cũng đi lên (với độ

tin cậy 70%) trong cùng một ngày". Tuy nhiên luật kết hợp này không thể mô tả là
khi nào nhà đầu tƣ nên mua và khi nào nên bán một cổ phiếu để có thể thu về "lợi
nhuận", nó chỉ trình bày một thực tế là giá của các cổ phiếu đi lên cùng nhau.
Lu, Han và Feng trong bài viết "Dự đoán chuyển động giá chứng khoán và các
luật kết hợp liên giao dịch n - chiều" năm 1998 [7] đã đề xuất việc khai thác liên
giao tác của luật kết hợp (Inter Transaction Mining - ITM). Khai thác liên giao tác
để tìm ra các luật kết hợp dạng nhƣ: "Khi giá của một cổ phiếu đi lên thì giá của
một cổ phiếu khác cũng đi lên trong ngày tiếp theo với độ tin cậy là 70%". Luật này
chỉ ra rằng ngƣời ta có thể giành chiến thắng 7 trong số 10 lần giao dịch. Với ITM
chúng ta vẫn không thể chắc chắn sẽ có đƣợc "lợi nhuận". Giả sử rằng một nhà đầu
tƣ nhận đƣợc 1 USD cho mỗi giao dịch thành công và mất 3 USD cho các trƣờng
hợp còn lại, dựa trên một tính toán đơn giản thì nhà đầu tƣ sẽ mất 2 USD qua 10
9



Chương 1. Tổng quan

giao dịch (7 x 1 – 3 x 3 = -2 USD), qua ví dụ này ta thấy rằng độ tin cậy cao không
có nghĩa là lợi nhuận sẽ cao và rủi ro sẽ thấp. Với cách tiếp cận truyền thống là sử
dụng độ tin cậy tối thiểu (minConf) và ngƣỡng hỗ trợ tối thiểu (minSup) trong luật
kết hợp cần phải đƣợc thay đổi.
Vậy làm thế nào chúng ta có thể tìm ra đƣợc các luật và các thông tin của luật
bao gồm thông tin về lợi nhuận (Profit), thông tin rủi ro (Risk), thông tin về tỉ lệ
thắng (WinRate), đó cũng chính là nội dung đề tài nghiên cứu của tôi: “Khai thác
luật ích lợi trên mô hình giao dịch liên ngày”. Một luật ích lợi là một luật giao
dịch thỏa mãn các mong đợi của nhà đầu tƣ sau khi áp dụng nó vào giao dịch (luật
mà có lợi nhuận P ≥ lợi nhuận tối thiểu, tổn thất R < tổn thất tối đa và tỉ lệ thắng
WinRate ≥ tỉ lệ thắng tối thiểu). Các luật ích lợi có dạng: "Mua cổ phiếu XYZ khi
một sự kiện (hoặc một tín hiệu) A xảy ra và bán cổ phiếu XYZ khi một sự kiện (hoặc
một tín hiệu) B xảy ra; rồi thì ta sẽ có lợi nhuận = P, tổn thất = R, tỉ lệ thắng =
W%". Khai thác luật ích lợi trong thị trƣờng tài chính vẫn còn trong giai đoạn sơ
khai, qua tìm hiểu của tôi thì hiện nay có một số thuật toán nghiên cứu tìm ra các
luật ích lợi nhƣ:
 PRMiner đƣợc đề xuất năm 2012 [8]: Duyệt qua toàn bộ cơ sở dữ liệu
giao dịch một lần, sinh ra tập tất cả các mẫu ứng viên. Dựa trên tập mẫu
ứng viên để sinh luật.
 Cải tiến PRMiner đƣợc đề xuất năm 2014 [11]: Tƣơng tự nhƣ PRMiner
nhƣng thay vì sinh ra tất cả các mẫu ứng viên thì cải tiến PRMiner sử
dụng hai chiến lƣợc tìm kiếm theo chiều sâu để sinh ra tập các mẫu mua
và mẫu bán tƣơng ứng. Dựa trên hai tập mẫu mua và mẫu bán để sinh ra
tập luật ích lợi thỏa các ngƣỡng mong đợi.
 JCMiner đƣợc đề xuất năm 2015 [10]: Dựa trên tiếp cận về tập đóng, tập
phổ biến trong mô hình giao dịch liên ngày. Đầu tiên JC Miner sinh tập
mẫu đóng (không cần xử lý toàn bộ tập phổ biến), từ tập mẫu đóng này

sinh ra các luật ích lợi thỏa các ngƣỡng mong đợi. Tiếp tục sử dụng tập
mẫu đóng của các luật ích lợi vừa sinh ra để lấy đƣợc tập mẫu không
đóng và sinh ra các luật giao dịch mà nó cũng chính là các luật ích lợi.
10


Chương 1. Tổng quan

 ATMiner đƣợc đề xuất năm 2015[10]: Cũng dựa trên tiếp cận về tập đóng
và tập phổ biến nhƣng cải tiến hơn JCMiner ở chỗ là khi tính toán tổn
thất (Risk) của luật giao dịch mà gặp phải ngƣỡng tổn thất tối đa
(maxRisk) thì không cần phải tiếp tục kiểm tra nhánh con của cây nếu
maxRisk của nút cha lớn hơn ngƣỡng maxRisk.

1.2.

ĐỘNG CƠ NGHIÊN CỨU
Theo tài liệu [3] thị trƣờng chứng khoán (TTCK) là một bộ phận của thị

trƣờng tài chính mà tại đó diễn ra việc trao đổi, mua bán, chuyển nhƣợng các cổ
phiếu. Vai trò đầu tiên của TTCK là thu hút các nguồn vốn nhàn rỗi trong nhân dân
để hình thành các nguồn vốn đầu tƣ khổng lồ có khả năng tài trợ cho các dự án đầu
tƣ phát triển dài hạn nền kinh tế cũng nhƣ tài trợ tăng vốn để sản xuất kinh doanh.
TTCK là công cụ khuyến kích nhân dân sử dụng nguồn vốn nhàn rỗi vào đầu tƣ và
là phƣơng tiện huy động vốn tạo điều kiện thu hút và kiểm soát vốn đầu tƣ nƣớc
ngoài. TTCK kích thích các doanh nghiệp sản xuất kinh doanh lành mạnh, là công
cụ đánh giá hoạt động kinh doanh của doanh nghiệp. Chỉ những doanh nghiệp làm
ăn lành mạnh, có hiệu quả cao, hứa hẹn triển vọng tƣơng lai tốt thì giá trị cổ phiếu
trên thị trƣờng của công ty mới cao và ngƣợc lại. TTCK tạo môi trƣờng giúp chính
phủ thực hiện các chính sách kinh tế vĩ mô. Nói tóm lại, TTCK là cầu nối giữa cung

- cầu về vốn, giữa đầu cơ nâng giá và đầu cơ hạ giá chứng khoán, giữa nhu cầu vay
vốn dài hạn và hoạt động cho vay ngắn hạn. Với cách thức hoạt động mềm dẻo của
TTCK, nó đã phát huy vai trò tích cực và có ý nghĩa quan trọng đối với nền kinh tế
phát triển theo cơ chế thị trƣờng. Vậy cần phải làm gì để phát triển TTCK, theo [2,
4, 5] có nhiều giải pháp để phát triển TTCK trong đó có một giải pháp đó là nâng
cấp và ứng dụng công nghệ thông tin trong đầu tƣ chứng khoán. Việc ứng dụng
công nghệ thông tin (CNTT) vào đầu tƣ chứng khoán, cụ thể là sử dụng các chƣơng
trình máy tính đƣa ra các phân tích kỹ thuật, đƣa ra các tri thức (luật) đã giúp cho
các nhà đầu tƣ cá nhân và các nhà đầu tƣ có tổ chức tránh đƣợc các rủi ro về khả
năng quản lý (thiếu kiến thức phân tích, đầu tƣ theo cảm tính), các rủi ro về tâm lý

11


Chương 1. Tổng quan

để hỗ trợ họ đƣa ra các quyết định mua, bán hay nắm giữ cổ phiếu nào đó rồi thì họ
sẽ thu về một lợi nhuận P với tỉ lệ thắng W%, rủi ro là R.
Hiện nay chỉ cần bỏ ra một khoản tiền không lớn, nhà đầu tƣ có thể sở hữu
những phần mềm phân tích kỹ thuật đầu tƣ chứng khoán đƣợc quảng cáo là cao cấp,
chuyên nghiệp nhƣ Stock in hand 2.4, Swot, Metastock,… , thậm chí chỉ cần gõ từ
khóa phần mềm phân tích chứng khoán là có thể download miễn phí các phần
mềm trên mạng nhƣ Kachiusa, Stock Market Eye,…Nhƣng theo các chuyên gia
chứng khoán cho rằng còn khá nhiều những phần mềm không đáng tin cậy, nó
không thực sự hỗ trợ cho các nhà đầu tƣ.
Vì vậy việc nghiên cứu, xây dựng chƣơng trình máy tính để tìm ra các luật
ích lợi là rất cần thiết, nó sẽ giúp cho việc đƣa ra quyết định của các nhà đầu tƣ
vào một mã cổ phiếu nào đó có căn cứ khoa học để có thể thu về lợi nhuận .

1.3.


MỤC TIÊU KHÓA LUẬN
Từ nhu cầu thực tiễn về đầu tƣ chứng khoán với những động cơ đã nêu trên, đề

tài mong muốn ứng dụng công nghệ thông tin vào lĩnh vực đầu tƣ tài chính và cụ
thể là lĩnh vực đầu tƣ chứng khoán. Đề tài sẽ tìm hiểu và nghiên cứu các kiến thức
về tập phổ biến, mô hình giao dịch liên ngày, các khái niệm về luật giao dịch, trạng
thái thị trƣờng; Các kiến thức chuyên môn về cách tính lợi nhuận ròng, cách tính giá
trị rủi ro, cách tính tỉ lệ thắng của một luật giao dịch; Tìm hiểu và nghiên cứu các
thuật toán khai thác luật ích lợi.
Sử dụng thuật toán PR-Miner cải tiến xây dựng ứng dụng minh họa để khai
thác luật ích lợi. Hệ thống sẽ hỗ trợ cho các nhà đầu tƣ trong việc quyết định mua
hay bán mã cổ phiếu nào bằng cách xuất ra các luật ích lợi tƣơng ứng của mã cổ
phiếu đó. Hệ thống này đáp ứng một số yêu cầu về phân tích kỹ thuật, có giao diện
mang tính tƣơng tác và hệ thống thử nghiệm trên các mã cổ phiếu thực tế lấy từ
trang [14]. Đây là một chƣơng trình ứng dụng thực tế.
Để xây dựng ứng dụng đòi hỏi nghiên cứu các tri thức thực tế từ lĩnh vực tài
chính về đầu tƣ chứng khoán. Thông qua ứng dụng này có đóng góp nhất định về
mặt minh họa mô hình kỹ thuật liên ngày.
12


Chương 1. Tổng quan

1.4.

PHẠM VI NGHIÊN CỨU
Về mặt phạm vi nghiên cứu, đề tài thu thập dữ liệu giao dịch của một số mã cổ

phiếu nhƣ: ACB (Ngân hàng thương mại cổ phần Á Châu), BVH (Tập đoàn Bảo

Việt), BHS (Công ty cổ phần đường Biên Hòa), HHC (Công ty cổ phần bánh kẹo
Hải Hà), KDC (Công ty cổ phần Kinh Đô), VNM (Công ty sữa Việt Nam), FPT
(Công ty cổ phần FPT), CSM (Công ty cổ phần công nghiệp Cao Su Miền Nam),
RDP (Công ty cổ phần nhựa Rạng Đông), HPG (Công ty cổ phần thép Hòa
Phát),… lấy từ trang [14].
Chƣơng trình hỗ trợ cho các nhà đầu tƣ đƣa ra các quyết định để mua, bán hay
giữ một số mã cổ phiếu bằng cách cung cấp các luật và tính toán các giá trị thuộc
tính của luật dựa trên cơ sở dữ liệu giao dịch liên ngày của mã cổ phiếu đó. Tuy
nhiên quyết định đầu tƣ hay không đầu tƣ vào một mã cổ phiếu còn phụ thuộc vào
rất nhiều các yếu tố khác chẳng hạn nhƣ: yếu tố rủi ro từ sở giao dịch chứng khoán,
yếu tố rủi ro từ những báo cáo thị trƣờng của các tổ chức phân tích đánh giá, yếu tố
rủi ro từ môi trƣờng kinh tế vĩ mô trong nƣớc, yếu tố rủi ro do chính sách chính
trị,…
Về phƣơng pháp thực hiện thì việc đầu tiên là thu thập dữ liệu của các mã cổ
phiếu trên trang cophieu68.vn trong khoảng thời gian từ 01/2006

04/2016. Nguồn

dữ liệu chứa 1500 giao tác trên mỗi mã cổ phiếu. Nghiên cứu và ứng dụng mô hình
giao dịch liên ngày và các thuật toán tìm luật ích lợi để khai thác ra tập luật ích lợi.

1.5.

Ý NGHĨA KHOA HỌC VÀ THỰC TIỄN
Thị trƣờng chứng khoán ngày càng khẳng định là một kênh đầu tƣ chủ đạo với

sự tham gia của số lƣợng lớn các nhà đầu tƣ. Từ con số 400 tài khoản vào ngày đầu
tiên thị trƣờng hoạt động 7/2000, đến 10/2009 con số này tăng lên là 766.725 tài
khoản (đầu tƣ cá nhân và đầu tƣ có tổ chức) và con số này tiếp tục gia tăng. Với số
lƣợng các nhà đầu tƣ vào thị trƣờng chứng khoán ngày càng tăng nhƣ vậy thì những

chƣơng trình máy tính cung cấp các tri thức dạng luật ích lợi nhằm hỗ trợ cho các
quyết định đầu tƣ là hết sức cần thiết. Đề tài mang tính ứng dụng thực tế cao. Trong
13


Chương 1. Tổng quan

khi làm ứng dụng này, tôi đã nghiên cứu tìm hiểu một số phƣơng pháp kỹ thuật:
phƣơng pháp tạo ra tập luật kết hợp từ tập phổ biến, phƣơng pháp khai thác luật ích
lợi, nghiên cứu thuật toán PR Miner cải tiến và áp dụng trong mô hình giao dịch
liên ngày.
Ngoài ra khai thác luật ích lợi trong lĩnh vực tài chính còn trong giai đọan sơ
khai, ở Việt Nam và thế giới chƣa có nhiều nghiên cứu về bài toán này. Các nghiên
cứu và ứng dụng chủ yếu thƣờng là khai thác các luật kết hợp. Vì vậy tính mới của
đề tài là việc ứng dụng mô hình giao dịch liên ngày kết hợp các thuật toán khai thác
luật ích lợi áp dụng vào lĩnh vực tài chính chứng khoán.

14


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

CHƢƠNG 2. CƠ SỞ LÝ THUYẾT

Trong chƣơng này trình bày cơ sở lý thuyết của đề tài liên quan đến khai thác
tập phổ biến - luật kết hợp, mô hình giao dịch liên ngày, phƣơng pháp tính lợi
nhuận ròng, tính rủi ro, tính tỉ lệ thắng của một luật giao dịch. Tìm hiểu các thuật
toán khai thác luật ích lợi, những ƣu điểm và nhƣợc điểm của chúng.

2.1.


KHAI THÁC TẬP PHỔ BIẾN VÀ LUẬT KẾT HỢP
Trong hầu hết các bài toán tìm luật kết hợp thì công đoạn phát sinh tập phổ

biến là một công đoạn cần thiết. Sau đây là một số hƣớng tiếp cận để phát sinh tập
phổ biến.

2.1.1. Một số định nghĩa liên quan
2.1.1.1. Dữ liệu giao dịch [13]
Cho E = {e1, e2, …, en} là tập tất cả các mục dữ liệu (nội dung giao dịch). T
={t1, t2, …, tm} là tập tất cả các giao dịch trong CSDL giao dịch D. CSDL đƣợc cho
là quan hệ hai ngôi   E  T. Nếu mục e  E xảy ra trong giao dịch t  T thì ta
viết là (e, t) , kí hiệu là e  t.
2.1.1.2. Độ phổ biến [6]
Cho CSDL giao dịch D và tập mục dữ liệu X  E. Độ phổ biến của X trong D,
kí hiệu là (X), đƣợc định nghĩa là số giao dịch mà X xuất hiện trong D.
2.1.1.3. Tập phổ biến [6]
X  E đƣợc gọi là phổ biến nếu (X)  minSup (với minSup là giá trị do ngƣời
dùng chỉ định).

15


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

2.1.1.4. Các tính chất của tập phổ biến [6]
 Nếu X phổ biến thì mọi Y  X cũng phổ biến.
 Nếu X không phổ biến thì mọi Y  X cũng không phổ biến.

2.1.2. Khai thác tập phổ biến dựa trên IT-Tree [6]

2.1.2.1. Cấu trúc IT-Tree và các lớp tương đương
Cho E là tập các danh mục và X  E . Ta định nghĩa một hàm p(X,k) =
X[1:k] gồm k phần tử đầu của X và một quan hệ tƣơng đƣơng dựa vào tiền tố
(prefix-based)  K trên itemset nhƣ sau: X , Y  E, X  Y  p( X , k )  p(Y , k ) .
k

Nghĩa là, hai itemset có cùng một lớp tƣơng đƣơng khi và chỉ khi chúng chia sẻ
chung k phần tử đầu phổ biến. Nhƣ đƣợc trình bày trong hình dƣới, mỗi nút trong
IT-Tree đại diện cho một cặp Itemset-Tidset X  TID(X ) , thực tế là một lớp tiền tố.
Tất các các nút con của nút X thuộc về lớp tƣơng đƣơng của nó bởi vì chúng chia sẻ
cùng tiền tố X.

Hình 2.1. Cây tìm kiếm IT-Tree và các lớp tƣơng đƣơng

16


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

2.1.2.2. Thuật toán khai thác tập phổ biến
Thuật giải
Input - Lớp tƣơng đƣơng [P] ban đầu chứa tất cả các tập phổ biến 1-itemset
- ngƣỡng phổ biến minSup.
Output - Tập phổ biến của cơ sở dữ liệu D
ENUMERATE_FREQUENT([P])
for all li  [P] do
[Pi] = 
for all lj  [P], with j > i do
E = lj
T = TID( li )  TID( lj )

if |T|  minSup then
[Pi] = [Pi]  { E  T }
ENUMERATE_FREQUENT([Pi])
2.1.2.3. Nhận xét
Cây tìm kiếm IT- Tree luôn lệch trái do:
 Ứng với mỗi lớp tƣơng đƣơng li ta cần xét với mọi lj (j > i) cho nên i
càng nhỏ thì số lƣợng j cần xét càng lớn.
 Khi | TID(li) | > | TID(lj) | thì phần giao nhau giữa TID(li) với các lớp
tƣơng đƣơng khác thƣờng sẽ lớn hơn phần giao của TID(lj) với các lớp
tƣơng đƣơng còn lại.

2.1.3. Khai thác tập phổ biến dựa trên FP-Tree [9, 12]
Về tổng quan thuật toán khai thác tập phổ biến dựa trên FP-Tree (Frequent Pattern Tree) có các ý chính sau:
 Nén đƣợc một CSDL giao dịch lớn vào một cấu trúc cây FP-Tree
o Độ nén cao, nhƣng phức tạp khi khai thác.
o Tránh đƣợc chi phí cao khi quét CSDL nhiều lần.
17


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

 Phƣơng pháp khai thác hiệu quả mẫu phổ biến dựa trên cơ sở FP-Tree (FPgrowth):
o Một phƣơng thức chia để trị, chia tác vụ khai thác thành các tác vụ nhỏ
hơn.
o Tránh đƣợc việc sinh ra các ứng viên, chỉ thao tác trên FP-Tree.
2.1.3.1. Xây dựng cây FP-Tree
 Cấu trúc dữ liệu của FP-Tree
o Cây có một nút gốc đƣợc đánh nhãn Null .
o Mỗi nhánh của cây tƣơng ứng là một giao dịch.
o Mỗi nút trong nhánh của cây có ba trƣờng dữ liệu: mã danh mục, số đếm,

con trỏ liên kết. Mã danh mục tƣơng ứng với danh mục mà nút này đại
diện, số đếm là số giao tác có chứa chung phần danh mục này và con trỏ
liên kết dùng để liên kết 2 nút đại diện chung một mã danh mục ở hai
nhánh cây khác nhau. Giá trị của trƣờng con trỏ liên kết có thể mang giá
trị rỗng khi là nút cuối cùng trong chuỗi liên kết.
 Thuật toán xây dựng cây FP-Tree
Thuật giải CreateFP-Tree()
- CSDL giao tác D

Input

- Ngƣỡng MinSup
Output

- Cây FP-Tree

Bƣớc 1: Duyệt D lần đầu để

thu đƣợc tập F gồm các frequent item và

support count của chúng. Sắp xếp các item trong F theo trật tự giảm dần
của support count ta đƣợc danh sách F1.
Bƣớc 2:Tạo nút gốc R và gán nhãn null .
Bƣớc 3: For each giao tác T

D // Duyệt D lần 2

{
Chọn các item phổ biến của T đƣa vào P;
Sắp các item trong P theo trật tự F1;

18


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

Call Insert_Tree(P, R);
}
2.1.3.2. Thuật toán khai thác tập phổ biến FP-Growth
Thuật giải FP-Growth()
Input

- Cây FP-Tree của CSDL giao tác D
- Ngƣỡng MinSup

Output

- Tập mẫu phổ biến F

Bƣớc 1: Nếu FP-Tree T chỉ có một nhánh đơn P thì chỉ cần tạo ra những tập phổ
biến kết hợp giữa prefix và các tổ hợp của những danh mục trong P và độ phổ
biến bằng với số đếm nhỏ nhất của những nút tham gia vào tổ hợp. Sau khi phát
sinh xong, thì kết thúc hàm.
Bƣớc 2: Ngƣợc lại, lần lƣợt xét từng danh mục i trong bảng tiêu đề các tập phổ
biến đơn của FP-Tree T và phát sinh tập phổ biến prefix = (prefix  i) có độ phổ
biến bằng với sup(i).
Bƣớc 2.1: Duyệt FP-Tree lần thứ nhất từ chuỗi các nút đại diện cho danh mục i
bắt đầu bằng con trỏ liên kết của phần tử i trong bảng tiêu đề các tập phổ biến
đơn và hƣớng lên nút gốc. Sau khi duyệt xong, thì có đƣợc bảng tiêu đề tập phổ
biến của prefix, ký hiệu là Hprefix.
Bƣớc 2.2: Duyệt FP-Tree lần thứ hai từ chuỗi các nút đại diện cho danh mục i

bắt đầu bằng con trỏ liên kết của phần tử i trong bảng tiêu đề các tập phổ biến
đơn và hƣớng lên nút gốc. Sau khi duyệt xong mỗi nhánh, dùng các nhánh này
để xây dựng FP-Tree cục bộ của tập phổ biến prefix, ký hiệu là Tprefix.
Bƣớc 2.3: Nếu Tprefix ≠  thì FP-Growth(Tprefix).
2.1.3.3. Nhận xét
Thuật toán khai thác tập phổ biến dựa trên FP-Tree có một số ƣu điểm và
nhƣợc điểm nhƣ sau:

19


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

 Ƣu điểm:
o Chỉ cần duyệt cơ sở dữ liệu giao tác 2 lần.
o Nén CSDL lớn vào cây.
o Không phát sinh tập ứng viên.
o Nhanh hơn thuật toán Apriori
 Nhƣợc điểm:
o Bộ nhớ có thể không đủ cấp cho FP-Tree trong trƣờng hợp CSDL lớn
và chia ra làm quá nhiều nhánh.
o Thời gian tạo cây FP-Tree tốn kém.
o Khi Minsup càng cao thì thời gian tạo cây càng phí

2.1.4. Khai thác luật kết hợp [1, 13]
2.1.4.1. Khái niệm luật kết hợp
Luật kết hợp là dạng luật biểu diễn tri thức ở dạng khá đơn giản, hay nói cách
,p
X  Y (X, Y là các tập phổ biến)
khác luật kết hợp là phép kéo theo có dạng Y q


trong đó Y  X , Y   và p =

Sup( X )
 minConf gọi là độ tin cậy của luật còn q =
Sup(Y )

Sup(X) gọi là độ phổ biến của luật. Do X là phổ biến nên luật sinh ra là phổ biến.
2.1.4.2. Bài toán và thuật giải khai thác luật kết hợp
 Bài toán: Cho một tập các mục E ={ e1, e2, …, en}, một CSDL giao dịch D,
ngƣỡng hỗ trợ minSup, ngƣỡng tin cậy minConf. Tìm tất cả các luật kết hợp


trên CSDL giao dịch D sao cho sup( ⇒ ) ≥ minSup và conf( ⇒ )

≥ minConf. Bài toán khai thác luật kết hợp đƣợc chia ra làm hai bài toán con
với thuật giải nhƣ sau:
 Thuật giải:
Thuật giải
Input

- Tập mục E, CSDL giao dịch D.
- minSup, minConf.
20


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

- Các luật kết hợp thỏa mãn minSup và minConf


Output

Bƣớc 1: Tìm tất cả các tập mục phổ biến từ CSDL giao tác D (tức là tìm tất cả các
tập mục có độ hỗ trợ lớn hơn hoặc bằng minSup).
Bƣớc 2: Sinh ra các luật kết hợp từ tập mục phổ biến tìm đƣợc ở bƣớc 1 sao cho
độ tin cậy của luật lớn hơn hoặc bằng minConf.
 Giải thích:
-

Đối với bƣớc 1 là một bài toán con, chúng ta có thể sử dụng các thuật
toán tìm tập phổ biến nhƣ IT-Tree hay FP-Tree đƣợc trình bày trong
phần [2.1.2 và 2.1.3] để giải quyết.

-

Đối với bƣớc 2 ta xây dựng thuật toán sinh luật nhƣ sau:

Thuật giải

genrules()

Input

Tập các mục phổ biến Lk

Output

Tập luật kết hợp.

forall tập mục phổ biến lk


Lk, k ≥ 2 do

call genrules(lk, lk);
procedure genrules(lk: k-itemset phổ biến; am: m-itemset phổ biến);
A = {(m - 1)-itemset am-1 | am-1 ⊂ am};
forall am-1

A do begin

conf = sup(lk)/sup(am-1);
if (conf ≥ minconf) then begin
xuất ra luật am-1 ⇒ (lk – am-1);
if ((m - 1) > 1) then
call genrules(lk, am - 1);
// sinh ra các luật có tiền đề là tập con của am-1
end
end

21


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

2.2.

THỊ TRƢỜNG CHỨNG KHOÁN VÀ MÔ HÌNH GIAO DỊCH

LIÊN NGÀY
2.2.1. Thị trƣờng chứng khoán (Stock Market) [3, 8]

 Chứng khoán (hay cổ phiếu) là giấy chứng nhận cấp cho cổ đông để chứng
nhận số cổ phần mà cổ đông đó đã mua của một Công ty cổ phần, chứng thực
về việc đóng góp vào Công ty cổ phần, đem lại cho ngƣời chủ của nó quyền
chiếm hữu một phần lợi nhuận dƣới hình thức lợi tức cổ phần và đƣợc quyền
tham gia quản lý công ty. Từ khái niệm cổ phiếu ta có khái niệm về thị trƣờng
cổ phiếu.
 Thị trƣờng chứng khoán (hay thị trƣờng cổ phiếu) là một bộ phận của thị
trƣờng tài chính mà hàng hóa đƣợc giao dịch trao đổi mua bán tại đó là các cổ
phiếu. Mỗi giao dịch mua hay bán một mã cổ phiếu nào đó đều đƣợc lƣu lại ở
dạng dữ liệu đánh dấu (tick data). Dữ liệu đánh dấu của một giao dịch bao gồm
Ngày, thời gian, giá và nhãn thông tin. Vấn đề đặt ra là cần xử lý và lƣu trữ lại
dữ liệu đánh dấu vào trong một cơ sở dữ liệu gọi là cơ sở dữ liệu giao dịch.

2.2.2. Cơ sở dữ liệu giao dịch (Transaction Database – TDB) [11]
Cho E = {e1, e2, …, en} là tập tất cả các mục dữ liệu (mục dữ liệu biểu diễn
một sự kiện hay một tín hiệu giao dịch). T ={t1, t2, …, tm} là tập tất cả các giao dịch.
Cho (TIDj, ItemSetj, Pricej) biểu thị hình thức của một giao dịch tj với TIDj là một
số liên tiếp và TIDj >0, ItemSetj chứa một tập các mục (ItemSetj ∈ E) và Pricej



R+.
Bảng 2.1 chỉ ra một ví dụ của CSDL giao dịch TDB với ba thuộc tính TID,
Itemset, Price. TID là một mã giao dịch xử lý theo thời gian để thiết lập trình tự
giao dịch, Itemset là tập các mục dữ liệu biểu diễn một sự kiện hay một tín hiệu
giao dịch, Price là giá của giao dịch (Close price). Các nhà đầu tƣ sử dụng nhiều kỹ
thuật và thông tin khác nhau để xác định thời điểm tốt nhất để mua hoặc bán cổ
phiếu, điều đó dẫn đến sản xuất ra các tín hiệu giao dịch đƣợc ghi lại trong CSDL
22



×