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

Nghiên cứu ứng dụng kỹ thuật học máy để dự đoán chứng khoán bằng ngôn ngữ R

44 814 4

Đ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

Định dạng
Số trang 44
Dung lượng 681,57 KB

Nội dung

Hay nói cách khác, từ tập dữ liệu lịch sử giao dịch của chứng khoán, bằng các phương pháp khai tri thức liệu chúng ta có thể dự báo được xu thế giá sắp tới trong tương lai sẽ tăng/giảm h

Trang 1

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

PHẠM QUỐC HÙNG

NGHIÊN CỨU ỨNG DỤNG KỸ THUẬT HỌC MÁY

ĐỂ DỰ ĐOÁN CHỨNG KHOÁN BẰNG NGÔN NGỮ R

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

Hà Nội, 2013

Trang 2

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

PHẠM QUỐC HÙNG

NGHIÊN CỨU ỨNG DỤNG KỸ THUẬT HỌC MÁY

ĐỂ DỰ ĐOÁN CHỨNG KHOÁN BẰNG NGÔN NGỮ R

Ngành: Công nghệ thông tin

Chuyên ngành: Hệ thống thông tin

Mã số: 60.48.05

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

NGƯỜI HƯỚNG DẪN KHOA HỌC: TS NGUYỄN VĂN VINH

Hà Nội, 2013

Trang 3

MỤC LỤC

LỜI CAM ĐOAN 3

MỤC LỤC 4

DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT 5

DANH MỤC CÁC BẢNG 6

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ 7

MỞ ĐẦU 8

Chương 1 BÀI TOÁN PHÂN TÍCH CHỨNG KHOÁN 10

1.1 Tổng quan về dự báo 10

1.2 Bài toán phân tích chứng khoán 11

Chương 2 KHAI PHÁ DỮ LIỆU VÀ PHÁT HIỆN TRI THỨC 16

2.1 Khai phá dữ liệu 16

2.2 Mô hình mạng nơron nhân tạo 22

2.3 Mô hình máy véctơ hỗ trợ 25

Chương 3 NGÔN NGỮ R VÀ ỨNG DỤNG 27

3.1 Tổng quan về ngôn ngữ R 27

3.2 Ứng dụng ngôn ngữ R 28

Chương 4 XÂY DỰNG CHƯƠNG TRÌNH VÀ ĐÁNH GIÁ 33

4.1 Chuẩn bị dữ liệu 33

4.2 Xây dựng hàm và thực hiện tính toán 34

4.3 Vẽ biểu đồ 35

4.4 Xây dựng mô hình và kết quả thử nghiệm 38

KẾT LUẬN 42

DANH MỤC CÔNG TRÌNH KHOA HỌC CỦA TÁC GIẢ LIÊN QUAN ĐẾN LUẬN VĂN 43

TÀI LIỆU THAM KHẢO 44

Trang 4

DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT

- ADX Average directional index – Chỉ số hướng trung bình

- ANN Artificial Neural Network – Mạng nơron nhân tạo

- b Buy - Tín hiệu mua vào

- BB Bollinger Bands – Chỉ số biên độ biến động giá

- Close Giá đóng cửa

- Date Ngày giao dịch

- DM Data Mining – Khai phá dữ liệu

- EMA Exponential Moving Average – Đường trung bình theo số mũ

- FI Force Index

- GA Genetic Algorithms – Giải thuật di truyền

- h Hold - Tín hiệu giữ lại

- High Giá cao nhất trong ngày

- KDD Knowledge Discovery in Databases – Phát hiện tri chức

- Low Giá thấp nhất trong ngày

- MA Moving Average - Giá trung bình

- MFI Money Flow Index – Chỉ số lưu lượng tiền

- NVI Negative Volume Index

- Open Giá mở cửa

- PCR Put/Call Ratio

- PSAR Parabolic SAR – Chỉ số báo hiệu giá đảo chiều

- ROC Rate of Change – Chỉ số tỷ lệ thay đổi giá

- RSI Relative Strengh Index – Chỉ số sức mạnh tương đối

- s Sell - Tín hiệu bán ra

- SMA Simple Moving Average – Đường trung bình đơn giản

- SVM Support Vector Machine – Máy vectơ hỗ trợ

- TSI True Strength Index

- Volume Khối lượng giao dịch

- VPT Volume–Price Trend

Trang 5

DANH MỤC CÁC BẢNG

Bảng 1.1: Kiểu dữ liệu chuỗi thời gian 12

Bảng 2.1: Một số hàm nhân thường dùng 26

Bảng 3.1: Một số thư viện và ứng dụng của chúng trong R 29

Bảng 4.1: Ma trận thống kê dự đoán các tín hiệu mua vào, bán ra và giữ lại 39

Bảng 4.2: Kết quả dự đoán bằng mô hình ANN 40

Bảng 4.3: Kết quả dự đoán bằng mô hình SVM 40

Trang 6

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ

Hình 1-1: Biểu đồ đường (Line Chart) 12

Hình 1-2: Biểu đồ vạch (Bar Chart) 13

Hình 1-3: Biểu đồ nến (Candlestick Chart) 13

Hình 2-1: Quá trình khai phá tri thức 18

Hình 2-2: Mô hình KDD lặp 19

Hình 2-3: Kiến trúc điển hình hệ thống khai phá dữ liệu 20

Hình 2-4: Mạng nơron nhân tạo 23

Hình 2-5: Sơ đồ quá trình khai phá dữ liệu bằng mạng nơron 23

Hình 2-6: Mẫu kết quả với kỹ thuật mạng nơron 24

Hình 2-7: Ví dụ về phân lớp trong không gian 2 chiều với SVM 25

Hình 2-8: Ví dụ về SVM 26

Hình 3-1: Số liệu thống kê ngôn ngữ dùng phổ biến trong phân tích số liệu 28

Hình 3-2: Xác xuất phân phối mật độ theo độ tuổi bằng hàm plot 31

Hình 3-3: Biểu đồ hình tròn 31

Hình 3-4: Biểu đồ hộp 32

Hình 3-5: Biểu đồ cột 32

Hình 4-1:Biểu đồ dạng nến Nhật Bản (Candlesticks Chart) 36

Hình 4-2: Đường chỉ số giá trung bình (SMA) 37

Hình 4-3: Đồ thị của hàm Technicals() 38

Trang 7

MỞ ĐẦU

Dự báo là một công tác rất quan trọng trong nhiều ngành, trong đó nó đặc biệt quan trọng với việc quản lý vĩ mô và kinh doanh Bài toán dự báo chứng khoán ngày càng được nhiều người quan tâm trong bối cảnh phát triển kinh tế xã hội Đầu tư vào thị trường chứng khoán đòi hỏi các nhà đầu tư cần có nhiều kinh nghiệm và hiểu biết

về thị trường chứng khoán Những người am hiểu về thị trường và xu thế của thị trường sẽ thu được những lợi nhuận khổng lồ từ sàn giao dịch chứng khoán Tuy nhiên, những người không nắm bắt được xu thế này có thể sẽ phải đối mặt với sự khủng hoảng thậm chí phá sản Bên cạnh đó, có những nhà đầu tư có lợi nhuận nhưng họ không nhận ra rằng họ có thể thu lợi nhiều hơn nữa nếu họ dự đoán được giá của thị trường sẽ thay đổi thế nào Ngày nay, ngoài kinh nghiệm của nhà đầu tư, các kĩ thuật khai phá dữ liệu được áp dụng khá nhiều nhằm dự báo sự lên xuống của thị trường Đó là một gợi ý quan trọng, giúp các nhà đầu tư có thể ra quyết định giao dịch

Theo lý thuyết phân tích chứng khoán (Chartist theory) thì ta có thể dự đoán được xu thế của thị trường chứng khoán dựa vào quá khứ Hay nói cách khác, từ tập

dữ liệu lịch sử giao dịch của chứng khoán, bằng các phương pháp khai tri thức liệu chúng ta có thể dự báo được xu thế giá sắp tới trong tương lai sẽ tăng/giảm hay ổn định Khai phá tri thức là vấn đề nghiên cứu thời sự trong thời gian gần đây, đã thu hút nhiều nhà khoa học trên thế giới tiến hành nghiên cứu, đề xuất các mô hình, phương pháp mới nhằm tạo ra các công cụ hiệu quả hỗ trợ người dùng trong việc tổng hợp, phân tích thông tin và tìm kiếm các tri thức tiền ẩn từ tập dữ liệu thông tin trong lịch sử Để nhận định xu hướng giá chứng khoán trong tương lai, các nhà phân tích kỹ thuật thường dựa vào các đường chỉ số dự báo Trên thế giới, có nhiều công trình của các nhà nghiên cứu hàng đầu đã đưa ra các đường chỉ số dự báo khác nhau, mỗi đường chỉ số có ý nghĩa nhất định Việc kết hợp tốt các đường chỉ số này sẽ cho

ra một kết quả rất chính xác hơn về dự báo xu thế giá chứng khoán trong tương lai

Ngày nay, các kỹ thuật học máy liên tục được cải tiến và ứng dụng vào bài toán khai phá dữ liệu cụ thể Trong nghiên cứu này, chúng tôi đã ứng dụng các kỹ thuật học máy tiên tiến như mạng nơron nhân tạo (ANN) , máy véctơ hỗ trợ (SVM) vào bài toán dự báo chứng khoán dựa trên tập dữ liệu lịch sử giá Tập dữ liệu này

Trang 8

được lấy trực tiếp trên Yahoo Finance từ năm 1970 tới nay để thử nghiệm với chỉ số chứng khoán S&P500

Với sự phát triển không ngừng của ngôn ngữ lập trình, chúng ta có thể triển khai ứng dụng thử nghiệm bằng nhiều loại ngôn ngữ lập trình khác nhau Mỗi ngôn ngữ lập trình có những thế mạnh nhất định cho lớp bài toán cụ thể Trong khai phá

dữ liệu thì ngôn ngữ R được ứng dụng rộng rãi trong những năm gần đây do những

ưu điểm vượt trội của nó trong phân tích số liệu Hơn nữa, đây là ngôn ngữ mã nguồn

mở có nhiều thư viện hỗ trợ cho việc phân tích số liệu Trong nghiên cứu này, chúng

ta sẽ ứng dụng ngôn ngữ R để xây dựng chương trình dự đoán và tiến hành thử nghiệm trên chứng khoán S&P500

Ngoài phần Mở đầu, Kết luận và các Phụ lục, nội dung luận văn được chia làm 4 chương chính:

Chương 1 Bài toán phân tích chứng khoán: chương này giới thiệu những

nội dung cơ bản nhất về bài toán phân tích chứng khoán Các kỹ thuật thường được

áp dụng trong phân tích kỹ thuật và các chỉ số liên quan

Chương 2 Khai phá dữ liệu và phát hiện tri thức: chương này cung cấp

cái nhìn tổng quát về khai phá dữ liệu, các kỹ thuật tiên tiến trong học máy

Chương 3 Ngôn ngữ R và ứng dụng: chương này trình bày tổng quan về

ngôn ngữ R, một số ứng dụng của ngôn ngữ R trong phân tích số liệu, vẽ biểu đồ

Chương 4 Xây dựng chương trình và đánh giá: chương này trình bày quá

trình xây dựng chương trình bằng ngôn ngữ R cho bài toán phân tích chứng khoán

và kết quả thử nghiệm trên chứng khoán S&P500

Phần Kết luận trình bày tổng hợp các kết quả nghiên cứu của luận văn và

định hướng nghiên cứu tiếp theo

Luận văn đã đạt được một số kết quả khả quan trong việc nghiên cứu kỹ thuật học máy và ứng dụng ngôn ngữ R để xây dựng chương trình thử nghiệm cho bài toán dự đoán chứng khoán Tuy nhiên, luận văn không tránh khỏi những thiếu sót, rất mong nhận được sự đóng góp ý kiến, nhận xét để chúng tôi tiếp tục hoàn thiện

và nâng cao kết quả nghiên cứu

Trang 9

Chương 1 BÀI TOÁN PHÂN TÍCH CHỨNG KHOÁN

1.1 Tổng quan về dự báo

Thuật ngữ dự báo có nguồn gốc từ tiếng Hy Lạp “Pro” (có nghĩa là trước) và

“grosis” (có nghĩa là biết), “progrosis” nghĩa là biết trước Từ nhiều thế kỷ trước

người ta đã tiến hành tiên đoán về tương lai Có thể phân biệt 3 loại tiên đoán:

Tiên đoán không khoa học: đó là các tiên đoán không có cơ sở khoa học,

thường dựa trên tính tưởng tượng, phi hiện thực

Tiên đoán kinh nghiêm: các tiên đoán dựa trên kinh nghiệm thực tế Loại tiên

đoán này ít nhiều có cơ sở nhưng lại không giải thích được sự vận động của đối tượng và đa số mới chỉ dừng lại ở mức độ định tính, không định lượng được

Tiên đoán khoa học: đây là tiên đoán dựa trên cơ sở khoa học được chứng

minh tính đúng đắn Nó dựa trên việc phân tích tính quy luật phát triển của đối tượng

dự báo và các điều kiện ban đầu với tư cách như là các giả thiết Tiên đoán khoa học

là kết quả của sự kết hợp giữa những phân tích định tính và những phân tích định lượng các quá trình cần dự báo Chỉ có dự báo khoa học mới đảm bảo độ tin cậy cao

và là cơ sở vững chắc cho việc thông qua các quyết định quản lý khoa học

Như vậy có thể hiểu dự báo là sự tiên đoán có khoa học có xác suất nhất định Nghĩa rằng không phải bao giờ dự báo cũng đúng đắn hoàn toàn mà nó mang tính

xác suất Mỗi đối tượng dự báo đều vận động theo một quy luật, quỹ đạo nào đó,

đồng thời trong quá trình vận động nó luôn chịu sự tác động của các yếu tố bên ngoài (môi trường xung quanh) Bản thân các yếu tố tác động cũng luôn vận động không ngừng Vì vậy dù trình độ dự báo có hoàn thiện đến đâu cũng không thể chắc chắn rằng kết quả của dự báo là hoàn toàn chính xác Hay nói một cách khác dự báo bao

giờ cũng mang tính xác suất Mặc dù mang tính xác suất nhưng dự báo là đáng tin cậy vì nó dựa trên những cơ sở khoa học Cùng với sự phát triển không ngừng của

khoa học kỹ thuật, độ tin cậy của dự báo cũng không ngừng được nâng cao Mỗi dự báo được thực hiện trên những giả thiết nhất định Với mỗi giả thiết khác nhau, kết

quả của dự báo cũng sẽ khác nhau Như vậy, dự báo mang tính đa phương án Tính

đa phương án giúp cho việc ra quyết định trở nên linh hoạt hơn, dễ thích nghi với sự biến đổi vô cùng phức tạp của tình hình thực tế

Trang 10

1.2 Bài toán phân tích chứng khoán

Phân tích chứng khoán đã trở thành công việc hết sức quan trọng mà các nhà đầu tư chứng khoán cần thực hiện để có được quyết định đầu tư thích hợp Từ kết quả phân tích, người đầu tư chứng khoán sẽ quyết định khi nào thì mua vào, khi nào thì bán ra, khi nào thì giữ lại và nên đầu tư vào doanh nghiệp nào Có hai phương pháp phân tích được sử dụng phổ biến hiện nay ở hầu hết các thị trường chứng khoán trên thế giới, đó là phân tích cơ bản và phân tích kỹ thuật

Phân tích cơ bản (Fundamental Analysis): là phương pháp phân tích chứng

khoán dựa trên các nhân tố mang tính chất nền tảng có tác động hoặc là nguyên nhân dẫn tới sự thay đổi giá của chứng khoán nhằm chỉ ra giá trị nội tại (intrinsic value) của chứng khoán trên thị trường Các nhân tố cần chú trọng trong phân tích cơ bản là: hoạt động kinh doanh của công ty, mục tiêu và nhiệm vụ của công ty, khả năng lợi nhuận (hiện tại và ước đoán), kết quả sản xuất kinh doanh, chất lượng quản lý, sức ép cạnh tranh, chính sách giá cả, vị thế,…

Phân tích kỹ thuật (Technical Analysis) [1]: sử dụng các mô hình toán học (đồ

thị, biến đổi miền, xác suất thống kê, dãy đại số,…) dựa trên dữ liệu thu thập về thị trường trong quá khứ và hiện tại để chỉ ra trạng thái của thị trường trong một thời điểm xác định, thông thường là nhận định xu hướng thị trường Phân tích kỹ thuật không để ý đến các chỉ số tài chính, tình hình phát triển của doanh nghiệp hay các thông tin về thị trường mà chỉ chú trọng vào việc tập hợp các dữ liệu về giá cả, khối lượng giao dịch và các tiêu chí khác của chứng khoán thu thập được từ các phiên giao dịch trong quá khứ

Các kỹ thuật phân tích cho thấy rằng giá trong lịch sử và các chỉ số khác có thể tiết lộ mối tương quan và các mô hình biến động giá chứng khoán, do đó có thể

dự đoán giá chứng khoán trong tương lai Trong những năm gần đây, nhiều kỹ thuật tiên tiến như giải thuật di truyền (GA), máy véctơ hỗ trợ (SVM), mạng nơron nhân tạo (ANN) đã hỗ trợ tốt việc phân tích và học mẫu hơn Theo Mackinlay, giá chứng khoán có mối tương quan nhạy cảm với tin tức và các sự kiện mang lại thông tin cho thị trường chứng khoán (kể cả các tin tức thời sự, kinh tế, chính trị, thời tiết…đều ảnh hưởng tới thị trường chứng khoán) Với hướng tiếp cận này, sử dụng các kỹ thuật học máy và khai phá dữ liệu để tìm ra mối tương quan giữa giá trong quá khứ

và xu hướng giá trong tương lai

Trang 11

Thông tin của các giao dịch chứng khoán được lưu trữ lại dưới dạng dữ liệu chuỗi thời gian (time series) Dữ liệu thời gian hay chuỗi thời gian là một chuỗi các giá trị của một đại lượng nào đó được ghi nhận theo thời gian [2], [3] Đây là kho dữ liệu khổng lồ để chúng ta có thể khai phá và dự báo xu thế của thị trường chứng khoán Các dữ liệu lịch sử giao dịch này thường được lưu trữ bao gồm các thông tin

về thời gian (Date), giá mở cửa (Open), giá đóng cửa (Close), giá cao nhất trong ngày (High), giá thấp nhất trong ngày (Low) và khối lượng giao dịch (Volume) Bảng 1.1 dưới đây là một ví dụ về kiểu dữ liệu dạng này:

Bảng 1.1: Kiểu dữ liệu chuỗi thời gian

2013-03-26 1,551.69 1,563.95 1,551.69 1,563.77 2,869,260,000 2013-03-27 1,563.75 1,564.07 1,551.90 1,562.85 2,914,210,000 2013-03-28 1,562.86 1,570.28 1,561.08 1,569.19 3,304,440,000 2013-04-01 1,569.18 1,570.57 1,558.47 1,562.17 2,753,110,000 2013-04-02 1,562.17 1,573.66 1,562.17 1,570.25 3,312,160,000

Để thực hiện phân tích kỹ thuật, nhà đầu tư thường dựa vào thông tin các chỉ

số được thể hiện dưới dạng đồ thị khác nhau như dạng đường thẳng (Line Chart), dạng vạch (Bar Chart), hoặc hình nến (Candlestick Chart) Với dữ liệu cho ở Bảng 1.1 ta sẽ có các biểu đồ trên như ở Hình 1-1, Hình 1-2, Hình 1-3

Hình 1-1: Biểu đồ đường (Line Chart)

Trang 12

Hình 1-2: Biểu đồ vạch (Bar Chart)

Hình 1-3: Biểu đồ nến (Candlestick Chart)

Mỗi chỉ số phân tích kỹ thuật đều có giá trị sử dụng riêng và chúng được phân

ra làm các nhóm cơ bản như:

Ø Chỉ số về xu thế (Trend Indication): Average Directional Index - ADX,

Ichimoku Kinkō Hyō, Moving Average Convergence/Divergence - MACD, Mass Index, Moving Average - MA, Simple Moving Average – SMA, Parabolic SAR - PSAR, Smart Money Index - SMI…;

Trang 13

Ø Chỉ số về xung lượng (Momentum Indication): Relative Strength Index - RSI,

Stochastic Oscillator, True Strength Index - TSI, Williams %R…;

Ø Chỉ số về dao động (Volatility Indication): Average True Range - ATR,

Bollinger Bands – BB, ;

Ø Chỉ số về khối lượng (Volume Indication): Accumulation/Distribution Index,

Money Flow Index - MFI, On-Balance Volume - OBV, Volume–Price Trend - VPT, Force Index - FI, Negative Volume Index - NVI, Ease Of Movement, Put/Call Ratio - PCR…

Có nhiều chỉ số hữu ích được sử dụng trong phân tích chứng khoán trong đó phải kể đến một số chỉ số quan trọng trong phân tích kỹ thuật như:

1) Chỉ số hướng trung bình – Average directional index (ADX):

Chỉ số ADX (do J Welles Wilder phát triển năm 1978 [4]) phản ánh sức mạnh

xu hướng trung bình, được tính bằng cách lấy hiệu của hai chỉ số +DI và –DI chia cho tổng của hai chỉ số này Chỉ số +DI phản ánh lực đẩy thị trường đi lên, còn –DI phản ánh lực kéo thị trường đi xuống Đường ADX không chỉ ra xu hướng thị trường đang lên hay xuống mà cho biết thị trường đang mạnh hay yếu Vì đường ADX không có tác dụng định hướng, nó sẽ không cho bạn biết liệu thị trường đang trong

xu hướng xuống hay lên (bạn cần xem đường +DI và -DI để biết xu hướng), nhưng đường DX sẽ cho bạn biết xu hướng đang mạnh hay yếu thế nào Khi đường ADX

từ 40 trở lên, xu hướng đang diễn ra mạnh, khi đường ADX từ 20 trở xuống, thị trường đang không có xu hướng rõ ràng

2) Đường trung bình đơn giản – Simple Moving Average (SMA)

SMA được sử dụng phần lớn vào việc nhận biết hướng đi của xu hướng đường giá Nhưng đôi khi cũng được sử dụng để phát hiện những tín hiệu mua và bán SMA

là giá trị trung bình mang tính chất thống kê Nó thường được tính theo giá đóng cửa [5]

3) Đường trung bình theo số mũ – Exponential Moving Average (EMA)

EMA có tác dụng để đo sức “nặng” giá hiện hành xem có “nặng” hơn giá trong quá khứ hay không? EMA có thể đánh giá nhanh sự dao động giá hơn là đường SMA

Trang 14

4) Chỉ số biên độ biến động giá - Bollinger Bands

Đường bao Bollinger Bands [6] được xem là một chỉ số cho phép người dùng

so sánh độ biến động (volatility) và mức giá tương đối theo thời gian Bollinger Bands là sự kết hợp giữa đường trung bình động Moving Average và độ lệch chuẩn Đây là công cụ phân tích kỹ thuật có nhiều tác dụng và rất có giá trị cho nhà đầu tư

5) Chỉ số báo hiệu giá đảo chiều – Parabolic SAR (PSAR)

Parabolic SAR được phát triển bởi J Welles Wilder [4], là chỉ báo kết hợp giữa giá và thời gian để hình thành những tín hiệu mua – bán trên thị trường Parabolic SAR cũng là công cụ hiệu quả để xác định vùng đặt điểm “dừng lỗ” (stop loss) Tín hiệu mua khi giá đóng cửa nằm trên đường Parabolic SAR và đồng thời đường Parabolic SAR phải cao hơn đường giá Tín hiệu bán khi giá đóng cửa nằm dưới Parabolic SAR và đồng thời đường Parabolic SAR thấp hơn đường giá

6) Chỉ số sức mạnh tương đối – Relative Strengh Index (RSI)

Là chỉ số sức mạnh tương quan (hay còn gọi RSI là chỉ số đo lường cường độ của sự vận động của giá) Chỉ số này được J Welles Wilder giới thiệu năm 1978 [4] Đây là chỉ số tỷ lệ giữa trung bình số ngày tăng giá so với mức giá trung bình của những ngày giảm giá trong một giai đoạn nhất định

7) Chỉ số lưu lượng tiền – Money Flow Index (MFI)

MFI là chỉ số xung lượng (momentum indicator), nó đo sức mạnh của dòng tiền vào hoặc ra của chứng khoán Nó liên quan mật thiết với RSI, nhưng ở đó RSI được kết hợp chặt chẽ với đường giá, còn MFI được xem là khối lượng

8) Chỉ số tỷ lệ thay đổi giá – Rate of Change (ROC)

Chỉ số tỷ lệ thay đổi giá (ROC) cho biết sự khác biệt giữa giá hiện tại và giá của x phiên trước đó [5] ROC diễn tả sự biến động số lần giá thay đổi trong khoảng thời gian đưa ra Khi giá tăng, ROC tăng; khi giá giảm, ROC giảm

Việc phân tích, đánh giá các chỉ số, biểu diễn kết quả dưới dạng đồ thị đòi hỏi nhiều xử lý, tính toán phức tạp Thông tin về các chỉ số có thể xem tại [7], [8]

Trang 15

Chương 2 KHAI PHÁ DỮ LIỆU VÀ PHÁT HIỆN TRI THỨC

2.1 Khai phá dữ liệu

Ngày nay, công nghệ thông tin được ứng dụng vào nhiều lĩnh vực của đời sống, kinh tế, xã hội Sự phát triển mạnh mẽ của công nghệ thông tin trong những năm qua đồng nghĩa với lượng thông tin được lưu trữ ngày càng tăng của các cơ quan, tổ chức có ứng dụng công nghệ thông tin trong công việc Kho thông tin này ngày càng tăng lên theo thời gian Công nghệ điện tử với những bước đột phá đã tạo

ra các bộ nhớ dung lượng lớn, bộ xử lý tốc độ cao người ta đã tạo ra các hệ thống thông tin nhằm tự động hóa các hoạt động kinh doanh của con người Điều đó đã tạo

ra một kho dữ liệu khổng lồ và không ngừng gia tăng vì ngay từ các hoạt động đơn giản nhất như cuộc gọi điện thoại, sử dụng thẻ tín dụng, lịch sử các giao dịch, giá đóng/mở hàng ngày của chứng khoán …đều được lưu trữ vào trong máy tính Theo thống kê cho thấy, hiện nay mới chỉ khoảng hơn 5% lượng thông tin này được khai thác hiệu quả, còn hầu hết các thông tin khác chưa được khai thác Tuy nhiên, họ vẫn lưu trữ các thông tin đó vì họ cho rằng nó có ẩn chứa nhiều thông tin quan trọng

mà hiện tại có thể họ chưa biết, chưa khai thác được cho dù việc thu thập và lưu trữ này rất tốn kém

Như John Naisbett đã nói “Chúng ta đang chìm ngập trong dữ liệu mà vẫn đói tri thức” Yếu tố để thành công trong hoạt động kinh doanh là phải biết sử dụng thông tin một cách có hiệu quả Nó có nghĩa là từ các dữ liệu sẵn có, phải tìm ra các thông tin tiềm ẩn có giá trị mà trước đó chưa được phát hiện, tìm ra xu hướng phát triển và các yếu tố tác động lên chúng Việc khai thác được các thông tin ẩn chưa biết này là điều vô cùng quan trọng và ngày càng được quan tâm hơn Điều đó đòi hỏi chúng ta cần phải tìm ra các kỹ thuật mới, công cụ tự động mới trợ giúp con người khai thác nguồn dữ liệu khổng lồ này một cách có hiệu quả Vì vậy mà kỹ thuật phát hiện tri chức (KDD - Knowledge Discovery in Databases) và khai phá dữ liệu (DM - Data Mining) được ra đời và ngày một phát triển mạnh mẽ để khai thác kho dữ liệu này Kỹ thuật này đã và đang được nghiên cứu, ứng dụng vào nhiều ngành nghề, lĩnh vực khác nhau trên thế giới Ở Việt Nam, kỹ thuật này còn khá mới

mẻ và vẫn đang được tiếp tục nghiên cứu và đưa vào ứng dụng

Theo giáo sư Tom Mitchell [9] thì “Khai phá dữ liệu là việc sử dụng dữ liệu lịch sử để khám phá những qui tắc và cải thiện những quyết định trong tương lai” Còn theo Fayyad [10] thì “Khai phá dữ liệu, thường được xem là việc khám phá tri

Trang 16

thức trong các cơ sở dữ liệu, là một quá trình trích xuất những thông tin ẩn, trước đây chưa biết và có khả năng hữu ích, dưới dạng các qui luật, ràng buộc, qui tắc trong cơ sở dữ liệu” Như vậy, khai phá tri thức là trích chọn các mẫu hoặc tri thức hấp dẫn (không tầm thường, ẩn, chưa biết và hữu dụng tiềm năng) từ một tập hợp lớn dữ liệu Nhiều người đồng nhất khái niệm khai phá dữ liệu với khai phá tri thức Thực tế, khai phá dữ liệu (DM) chỉ là một bước trong khai phá tri thức (KDD)

Như chỉ ra trong Hình 2-1 [10] thì quá trình khai phá tri thức gồm các bước chính như sau:

1) Làm sạch dữ liệu (Data cleaning): là bước loại bỏ nhiễu và dữ liệu không phù

hợp

2) Tích hợp dữ liệu (Data integration): kết hợp nhiều nguồn dữ liệu khác nhau 3) Lựa chọn dữ liệu (Data selection): các dữ liệu liên quan đến quá trình phân

tích được lấy từ cơ sở dữ liệu

4) Chuyển đổi dữ liệu (Data transformation): dữ liệu được chuyển đổi thành các

dạng phù hợp cho quá trình khai phá dữ liệu

5) Khai phá dữ liệu (Data mining): áp dụng các phương pháp thông tin để bóc

tách dữ liệu mẫu Đây là bước rất quan trọng trong quá trình khai phá trí thức Các thuật toán sử dụng các dữ liệu đã được tiền xử lý trong giai đoạn trước để tìm kiếm các qui tắc ẩn chưa biết Vấn đề quan trọng hàng đầu trong giai đoạn này là lựa chọn kỹ thuật phù hợp để giải quyết bài toán Các bài toán được phân loại vào một trong những nhóm bài toán chính trong khai phá dữ liệu dựa trên đặc tả của chúng

6) Đánh giá mẫu (Pattern evaluation): không phải mẫu dữ liệu nào cũng là có

ích, thậm chí còn có sự sai lệch Bước này cần đưa ra tiêu chuẩn đánh giá cho các mẫu dữ liệu để đưa ra tri thức đúng đắn Dựa trên các đánh giá này để tinh chỉnh, kết hợp lại các mô hình nếu cần Chỉ các mô hình thỏa mãn các yêu cầu

cơ bản của người dùng mới được áp dụng và triển khai trong thực tế

7) Trình diễn tri thức (Knowledge presentation): các kỹ thuật thể hiện tri thức

trực quan để đưa ra kết quả khai phá dữ liệu cho người dùng Các mô hình được triển khai vào trong hệ thống thông tin thực tế dưới dạng các mô-đun hỗ trợ việc ra quyết định

Trang 17

Hình 2-1: Quá trình khai phá tri thức

Trong đó, từ bước 1 đến bước 4 thể hiện quá trình tiền xử lý dữ liệu cho khai phá dữ liệu Đôi khi chúng ta có thể gộp 4 bước này thành bước chuẩn bị dữ liệu Phần lớn các kỹ thuật khai phá dữ liệu hiện nay áp dụng trên tập dữ liệu đơn và phẳng, vì vậy dữ liệu phải được dưới dạng cơ sở dữ liệu quan hệ đơn giản với một bảng dữ liệu Các công việc của giai đoạn này bao gồm:

1) Xử lý dữ liệu bị mất/thiếu: dữ liệu bị mất/thiếu sẽ được thay thế bởi các giá trị phù hợp

2) Loại bỏ trùng lặp: loại bỏ các đối tượng dữ liệu trùng lặp

Data mining

Patterns Evaluation and Presentation

Knowledge

Selection and Transformation

Cleaning and

Integration

Data warehouse

Database

Flat files

Trang 18

3) Giảm nhiễu: loại bỏ nhiễu và các giá trị tách rời của phân bố chung

4) Chuẩn hóa dữ liệu: chuẩn hóa miền giá trị của dữ liệu

5) Rời rạc hóa: dữ liệu dạng số được biến đổi thành dạng rời rạc

6) Trích rút và xây dựng đặc trưng mới từ các thuộc tính đã có

7) Giảm chiều dữ liệu: loại bỏ bớt các thuộc tính có ít thông tin để số lượng thuộc tính giảm xuống

Các bước trong quá trình khai phá tri thức có quan hệ mật thiết tác động lẫn nhau Các kỹ thuật được sử dụng ở bước trước sẽ ảnh hưởng đến hiệu quả của kỹ thuật được sử dụng ở bước tiếp theo Các bước của quá trình này có thể được lặp đi lặp lại một số lần nhằm có kết quả trung bình tốt nhất trên tất cả những lần thực hiện [11] Dưới đây là mô hình quá trình khai phá tri thức lặp (xem Hình 2-2):

Hình 2-2: Mô hình KDD lặp

Theo quan điểm “khai phá dữ liệu là quá trình phát hiện tri thức thú vị từ một lượng lớn dữ liệu được lưu trữ trong cơ sở dữ liệu, kho dữ liệu, hoặc kho lưu trữ các thông tin khác” thì kiến trúc của hệ thống khai phá dữ liệu thông thường gồm (xem Hình 2-3):

START:

Define the object

Select relevant business data

Data quality analysis

Clean and transform dataData

miningAcquire

knowledgeEvaluate results

Deploye results or re-iterate

Trang 19

Ø Cơ sở dữ liệu, kho dữ liệu, World Wide Web, các kiểu kho chứa thông tin khác: là một hoặc một tập các cơ sở dữ liệu, kho dữ liệu, bảng tính, hoặc các loại kho lưu trữ thông tin

Ø Phục vụ cơ sở dữ liệu/Kho dữ liệu: chịu trách nhiệm lấy các dữ liệu liên quan theo yêu cầu khai phá dữ liệu của người dùng

Ø Cơ sở tri thức: là miền tri thức được sử dụng để giúp tìm kiếm hoặc đánh giá mẫu kết quả

Hình 2-3: Kiến trúc điển hình hệ thống khai phá dữ liệu

Ø Thành phần khai phá dữ liệu: đây là thành phần rất quan trọng trong hệ thống khai phá dữ liệu, bao gồm các mô-đun chức năng như phân tích các đặc trưng,

sự kết hợp, mối tương quan, phân lớp, dự báo, phân cụm, phân tích tiến hóa

Ø Đánh giá mẫu khai phá được: không phải bất cứ mẫu khai phá nào cũng hữu ích Do đó cần phải đánh giá các mẫu khai phá được để đa ra tri thức cần thiết

Giao diện người dùng

Đánh giá mẫu khai phá được

Thành phần Khai phá dữ liệu

Phục vụ Cơ sở dữ liệu/kho dữ liệu

Cơ sở tri thức

Các kiểu kho chứa thông tin khác Làm sạch, tích hợp và chọn lựa dữ liệu

Trang 20

Mẫu được phát hiện phải có giá trị đối với các dữ liệu mới theo độ chân thực nào đấy Mẫu phải là mới trong một miền xem xét nào đó, ít nhất là với hệ thống đang được xem xét Thường thì độ mới của mẫu được đánh giá bằng hàm logic hoặc hàm đo độ mới, độ hấp dẫn của mẫu Ngoài ra, mẫu mới còn phải có khả năng sử dụng tiềm tàng Các mẫu này sau khi được xử lý và diễn giải phải dẫn đến những hành động, quyết định có ích nào đó được đánh giá bằng hàm lợi ích

Ø Giao diện người dùng: Mô-đun giao tiếp giữa người dùng với hệ thống khai phá dữ liệu cho phép người dùng tương tác với hệ thống qua truy vấn khai phá

dữ liệu Cung cấp thông tin giúp họ tập trung tìm kiếm và thực hiện khai phá

dữ liệu dựa trên các kết quả khai phá dữ liệu trung gian

Các phương pháp khai phá dữ liệu được dùng:

- Phân loại (Classification)

- Hồi qui (Regression)

- Phân nhóm (Clustering)

- Tổng hợp (Summarization)

- Mô hình ràng buộc (Dependency modeling)

- Dò tìm biến đổi và độ lệch (Change and Deviation Dectection)

Ngày nay, khai phá dữ liệu được áp dụng vào rất nhiều lĩnh vực của cuộc sống như: quảng cáo, Marketing, quản lý quan hệ khách hàng, thiên văn học, tin sinh học, thương mại điện tử, phát hiện lừa đảo, chăm sóc sức khỏe, viễn thông, thể thao, giải trí, máy tìm kiếm (web)…Trong nghiên cứu này chúng ta sẽ ứng dụng khai phá dữ liệu vào lĩnh vực đầu tư tài chính với bài toán cụ thể là dự báo chứng khoán từ tập

dữ liệu giao dịch trong lịch sử

Để khai phá dữ liệu từ tập dữ liệu chuỗi thời gian chúng ta cần có các kỹ thuật học máy tiên tiến Học máy (Machine Learning) là một lĩnh vực của trí tuệ nhân tạo liên quan đến việc phát triển các kĩ thuật cho phép các máy tính có thể "học" Hay nói cách khác, học máy là một phương pháp phân tích các tập dữ liệu Học máy có tính ứng dụng rất cao bao gồm máy truy tìm dữ liệu, chẩn đoán y khoa, phát hiện thẻ tín dụng giả, phân loại các chuỗi DNA, nhận dạng tiếng nói và chữ viết, dịch tự động, chơi trò chơi và cử động rô-bốt (robot locomotion)… Phân tích thị trường chứng khoán cũng là một lĩnh vực nghiên cứu khá hấp dẫn được nhiều nhà khoa học tập trung nghiên cứu Hiện nay, có nhiều giải thuật được áp dụng trong học máy như:

Trang 21

cây quyết định, giải thuật di truyền, mạng nơron nhân tạo, máy véctơ hỗ trợ, mạng Bayesian, mạng Markov….Trong luận văn này chúng ta sẽ ứng dụng hai phương pháp học máy tiên tiến là mạng nơron nhân tạo và máy véctơ hỗ trợ

2.2 Mô hình mạng nơron nhân tạo

Nghiên cứu và mô phỏng trí não, cụ thể là tế bào thần kinh (nơron) là ước muốn từ lâu của nhân loại Từ mơ ước đó, các nhà khoa học đã không ngừng nghiên cứu và tìm hiểu về mạng nơron Với khoảng 15 tỷ nơron của não người, mỗi nơron

có thể nhận hàng vạn tín hiệu từ các khớp thần kinh và được coi là một cơ chế sinh vật phức tạp nhất Não người có khả năng giải quyết những vấn đề như: nghe, nhìn, nói, hồi ức thông tin, phân biệt các mẫu mặc dù sự kiện có bị méo mó, thiếu hụt… Não thực hiện những nhiệm vụ như vậy nhờ các phần tử tính toán là nơron Não phân bố việc xử lý cho hàng tỷ nơron có liên quan, điều khiển các mối liên hệ giữa các nơron đó Nơron không ngừng nhận và truyền thông tin lẫn nhau Các nơron tự liên kết với nhau thành mạng trong xử lý Mỗi mạng gồm hàng vạn các phần tử nơron khác nhau Mỗi phần tử nơron có khả năng liên kết với hàng nghìn các nơron khác Lý thuyết về mạng nơron đã hình thành từ những năm 40 của thế kỷ trước và đang phát triển, đặc biệt là nghiên cứu ứng dụng chúng

Mô hình mạng nơron nhân tạo (ANN - Artificial Neural Network) bắt chước theo cách học của hệ thần kinh sinh vật Có nhiều ứng dụng của mạng nơron đã được

áp dụng trong thực tế và mang lại những hiệu quả tốt như ứng dụng mạng nơron trong chế tạo các mạch điện tử thông minh, xây dựng hệ chuyên gia y học, ứng dụng nhận dạng và phân loại các sản phẩm cùng với trí tuệ nhân tạo, mạng nơron thực

sự trở thành lĩnh vực nghiên cứu quan trọng trong việc phát triển các ứng dụng có giá trị thực tiễn

Trang 22

Hình 2-4: Mạng nơron nhân tạo

Khi đề cập đến khai phá dữ liệu, người ta thường đề cập nhiều đến mạng nơron Tuy mạng nơron có một số hạn chế gây khó khăn trong việc áp dụng và triển khai nhưng nó cũng có những ưu điểm đáng kể Một trong số những ưu điểm phải

kể đến của mạng nơron là khả năng tạo ra các mô hình dự đoán có độ chính xác cao, lại có tính mềm dẻo, có thể áp dụng được cho rất nhiều loại bài toán khác nhau, đáp ứng được nhiệm vụ đặt ra của khai phá dữ liệu như phân lớp, phân nhóm, mô hình hóa, dự báo các sự kiện phụ thuộc vào thời gian, v.v…

Hình 2-5: Sơ đồ quá trình khai phá dữ liệu bằng mạng nơron

Mẫu chiết xuất bằng mạng nơron được thể hiện ở các nút đầu ra của mạng Mạng nơron sử dụng các hàm số chứ không sử dụng các hàm biểu tượng để tính mức tích cực của các nút đầu ra và cập nhật các trọng số của nó Trong mạng lan truyền ngược, mỗi nút khái niệm được kết hợp với một ngưỡng, vì vậy trong mạng lan truyền ngược, các mẫu (hay các luật) của một khái niệm là sự kết hợp của các trọng số lớn hơn ngưỡng Với tập dữ liệu khách hàng vay vốn ngân hàng, ta có bài toán phân lớp áp dụng mạng nơron sẽ cho kết quả là mẫu chiết xuất được như trên Hình 2-6

Input

Output Hidden

Dữ liệu Mô hình mạng nơron Mẫu chiết xuất được

Ngày đăng: 25/03/2015, 09:59

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

w