Sử dụng kỹ thuật mô hình húa mờ trong dự báo tài chính có ýnghĩa thực tiễn rất lớn, đặc biệt trong lĩnh vực thị trường chứng khoán, và việc sửdụngphương phỏp mới này góp phần làm tăng độ
Trang 1Lời cảm ơn
Lời đầu tiờn, em xin được gửi lời cỏm ơn chừn thành tới cỏc thày cụ giỏo thuộc trường Đại học Bỏch Khoa Hà Nội, những người đó tận tìnhchỉ dạy tất cảkiến thức đại cương và chuyờn ngành cho em trong suốt quá trình học tập và nghiờn cứu tại trường.
Trong quá trình thực hiện đồ án tốt nghiệp em đã học hỏi được thêm rất nhiều điều, đó cũng là cơ hội để em tổng kết những kiến thức đã được học, đồng thời rút
ra những kinh nghiệm quý báu Mặc dù có một số khó khăn và vướng mắc trong thời gian hoàn thiện đồ ỏn, nhưng nhờ sự chỉ bảo, hướng dẫn tận tình của thầy giáo, PGS TS Trần Đình Khang - bộ môn Hệ thống thông tin – Viện Công Nghệ Thông Tin và Truyền Thông - trường Đại học Bỏch Khoa Hà Nội,em đó kịp thời khắc phục và có thể nói đồ án được hoàn thành ở một mức độ nhất định.Bờn cạnh những kết quả đó đạt được, chắc chắn em sẽ không tránh khỏi những thiếu sót và hạn chế Sự phê bình, nhận xét của thầy cô là những bài học quý báu cho công việc và nghiờn cứu của em sau này.
Một lần nữa em xin chân thành cảm ơn sự giúp đỡ của các thầy cô, đặc biệt là PGS TS Trần Đình Khang đã giúp đỡ em hoàn thành đồ ỏn tốt nghiệp này.Em cũng xin được gửi lời cảm ơn sâu sắc đến gia đình, bạn bè đã luôn ở bên, ủng hộ, động viên tinh thần cho em trong suốt quỏ trình thực hiện đồỏn.
Xin kính chúc quý thầy cô mạnh khỏe,hạnh phúc, tiếp tục đạt được nhiều thành công trong nghiờn cứu khoa học cũng như trong sự nghiệp trồng người.
Hà Nội, thỏng 5 năm 2010
Sinh viờn thực hiện
Đào Mạnh SơnTểM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP
Sinh viờn thực hiện: Đào Mạnh Sơn – HTTT – K49 Page 74
Trang 2trường chứng khoán Sử dụng kỹ thuật mô hình húa mờ trong dự báo tài chính có ýnghĩa thực tiễn rất lớn, đặc biệt trong lĩnh vực thị trường chứng khoán, và việc sửdụngphương phỏp mới này góp phần làm tăng độ chính xác trong kết quả tính toán sovới cỏc phương phỏp đó từng được sử dụng trước đừy với tập mờ loại một thông thường.
Mô hình xừy dựngtrong đồ ỏn dựa trờn nền tảng Hệ suy diễn mờ Mamdani, được kết
cấu từ một bộ các mô hình mờ nhúng;sau đó lựa chọn ra mô hình phù hợp nhất để suydiễn với bất cứ một dữ liệu đầu vào cho trước nào Kết qủa thực nghiệm trờn dữ liệu cổ
phiếu do Michio Sugeno và Takahiro Yasukawa cung cấp trong “A Fuzzy Logic
-Based Approach to Qualitative Modeling”lEEE TRANSACTIONS ON FUZZY
SYSTEMS, VOL I, NO I FEBRUARY 1993
ABSTRACT OF THE THESIS
My project introduces a new fuzzy system modeling method, that using Type
2 fuzzysetsin finance control, specifically, is stock price prediction in securities market.
Applying fuzzy system modelling technology in finance prediction has a major practicalmeaning Especially, in securities market area, and the usage of this new method cancontribute to increasing degree of accuracy in calculating result in compared with the
methods have used before with normal Type 1 fuzzy sets The built model in project was
based on the foundation of “ Mamdani Fuzzy Deducing System”, that was compositedfrom a set of embedding fuzzy model; then choose the most appropriate model to deducewith any given input data The experimental result on stock data supported by MichioSugeno and Takahiro Yasukawa in “ A Fuzzy - Logic - Based Approach to QualitativeModeling” LEEE TRANSACTIONS ON FUZZY SYSTEM, VOL I NO I.FEBRUARY 1993
PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
1 Thông tin về sinh viên
Sơn………
594EmailEmail Email:son.workingnow@gmail.com
Lớp: HTTTB - K50 Hệ đào tạo: Hệ đào tạo: Hệ đào tạo: Đại học chínhquy
Đồ ỏn tốt nghiệp được thực hiện tại: Bộ môn HTTT – Viện CNTT & Truyền Thông
Thời gian làm ĐATN: Từ ngày 16 / 02 / 2010 đến 28 / 05 / 2010
2 Mục đích nội dung của ĐATN
3 Cỏc nhiệm vụ cụ thể của ĐATN
Trang 3DANH MỤC BẢNG VÀ HốNH VẼHình 2 1: Một số dạng hàm thuộc thông
Trang 4THUẬT NGỮ VÀ CÁC TỪ VIẾT TẮT
FCM Viết tắt củaFuzzy C-Means, là phương pháp phân cụm mờ giúp chúng ta
xác định các tâm cụm dữ liệu và độ thuộc của từng dữ liệu đối với từngcụm mờ
LFR Viết tắt củaLinguistic Fuzzy Rulebase là cơ sở luật ngữ nghĩa dùng cho các
mô hình mờ điển hình là mô hình Mamdani
FT2FS Viết tắt củaFull Type 2Fuzzy Sets, FT2FS là một bộ mờ đặc trưng với một
hàm thuộc mờ hơn là với một giá trị vô hướng trong khoảng đơn vịIVT2FS Viết tắt củaInterval Type 2Fuzzy Sets, IVT2FS là một trường hợp đặc biệt
của FT2FS khi có độ thuộc thứ cấp bằng 1DT2FS Viết tắt củaDiscreteType 2Fuzzy Sets, giống với IVT2FS nhưng với cỏc
giỏ trị rời rạcRMSE Viết tắt của Root Mean Square Error, sai số bình phương tiêu chuẩn là chỉ
tiêu được dùng để đánh giá sai số trong đồ án
FDT Viết tắt của Fuzzy Decision Tree, là giải thuật cây quyết định dùng trong lo
– gic mờ được Mohd Noor Md Sap và Rashid Hafeez Khokhar sử dụng để
dự báo chiều tăng giảm của giá cổ phiếu
ANFIS Viết tắt của Adaptive Neuro-Fuzzy Inference System, là một kỹ thuật
ghộpnối giữa điều khiển mờ và mạng nơ-ron đã mang lại nhiều thành côngtrong kỹ thuật điều khiển
NN Viết tắt củaNotron Network, là phương phỏp mạng nơ-ron.
LR Viết tắt của Linear Regression, là phương pháp hồi quy tuyến tính
LỜI MỞ ĐẦU
Sinh viờn thực hiện: Đào Mạnh Sơn – HTTT – K49 Page 9
Kỹ thuật mô hình húa trải qua thời gian đã chứng tỏ được thế mạnh và tầm quan trọngcủa mình, nú giúp con người mô phỏng lại hệ thống thực, có thể bắt chước đủ chính xáchành vi của hệ thống đó, thể hiện qua phản ứng đầu ra của mô hình khi có tác động phíađầu vào so với thực nghiệm Mô hình được xây dựng có ý nghĩa rất quan trọng trong thựctiễn, nú giúp con người tiết kiệm được chi phí cũng như hạn chế những tổn thất so vớithực nghiệm trong thế giới thực Bằng việc tiến hành kiểm thử trên mô hình chúng ta sẽtiêu tốn ít thời gian hơn, công việc phải làm đơn giản hơn ví dụ như thay vỡ việc phảichờ đợi một thời gian dài để quan sát một phản ứng húa học trơ, ta có thể tiến hành trênmột mô hình phản ứng mà công việc phải làm chỉ là cung cấp thông tin về lượng và chất
Trang 5tham gia phản ứng rồi quan sát kết quả thu được Yếu tố thời gian ở đây coi như đã bịloại bỏ.
Kĩ thuật mô hình húa dựa trên công nghệ logic mờ cũng hội tụ đầy đủ các đặc trưngtrên Tuy nhiên, lý thuyết tập mờ thông thường tiềm ẩn những mẫu thuẫn nhất định Đó là
để phát triển bất cứ mô hình logic mờ nào, người thiết kế phải xây dựng hàm thuộc chocác tập mờ trong hệ, hay là phải mô tả sự không chắc chắn bằng các hàm thuộc rõ ràng,chắc chắn Điều đó có nghĩa là việc biểu diễn sự không chắc chắn lại sử dụng các độthuộc mà bản thân chúng là các số thực chính xác
Năm 1975, Zadeh giới thiệu khỏi niệm tập mờ loại hai nhằm giải quyết vấn đề trên Đó
là thay vì độ thuộc là một số thực như với tập mờ thông thường, với tập mờ loại hai, độthuộc là một tập mờ loại một trên đoạn [0, 1] Tập mờ loại hai thường được sử dụng trongnhững trường hợp khó xác định chính xác giá trị độ thuộc của các phần tử trong khônggian nền.Trong bỏo cỏo Đồ ỏn tốt nghiệp này, em xin được trình bày về một kĩ thuật môhình húa mờ sử dụng tập mờ loại hai, một sự mở rộng của mô hình húa mờ sử dụng tập
mờ loại một, từ đó ứng dụng vào hệ thống dự báo giá cổ phiếu trong thị trường chứngkhoán
loại hai là sự phỏt triển nừng cao của tập mờ loại một, và ứng dụng trong việc dự đoỏngiỏ cổ phiếu thị trường chứng khoỏn
Đồ án không chỉ giúp ta hiểu được về lí thuyết tập mờnừng cao, xây dựng được
mô hình mờ mà còn giúp ta có thề mở rộng hướng phát triển, xây dựng được mô hình với
độ chính xác cao hơn có thể áp dụng được vào bài toán thực tế
Trang 61.2.2 Giải pháp
1 2 2 1 Tìm hiểu về logic mờ và mô hình húa.
Tìm hiểu các lí thuyết cơ bản về logic mờ loại một Các bước của một quá trình
mô hình húa mờ sử dụng tập mờ loại hai rời rạc
1 2 2 2 Xừy dựng bộmô hình mờ loại một nhúng.
Mô hình suy diễn mờ nhúng loại một dựa trên cơ sở mô hình mờ Mamdani với bađầuvào và một đầu ra Biến vào thể hiện thông tin giá cổ phiếu ngày cần dự báo Thôngtin đầu vào đã qua xử lí thô trước khi đưa vào học luật
Xừy dựng tập luật cho mỗi mô hình mờ loại một nhúng từ dữ liệu thực nghiệmdựa theo phương phỏp phừn cụm Fuzzy C - Means với cỏc giỏ trị độ mờ ( kí hiệu m- xácđịnh độ chồng chéo giữa các cụm mờ ), và với số cụm mờ ( kí hiệu c ) khác nhau
1 2 2 3 Xây dựng mô hình mờ loại hai
Sau khi xừy dựng được bộ các mô hình mờ loại một nhúng,chúng được kết hợp với nhau tạo thành mô hình mờ loại hai, mỗi quan hệ thông qua bảng tra cứu m ( m - lookup table )
Sinh viờn thực hiện: Đào Mạnh Sơn – HTTT – K49 Page 11
Bước khởi tạo, cấu trúc mô hình được lựa chọn theo tri thức tiên nghiệm Kếđến giai đoạn điều khiển thích nghi được tiến hành trên tập dữ liệu mẫu Tiếp theo, hiệunăng hoạt động của mô hình được kiểm thử, thông thường là kết hợp cả phương phápđịnh tính và phương pháp thống kê Nếu mô hình sinh ra không đáp ứng được yêu cầu,thiết kế ban đầu sẽ được sửa lại, và quá trình trên lặp lại cho tới khi một mô hình chấpnhận được ra đời Để tới đích, quá trình có thể trải qua một lượng đáng kể các bước lặp
và do đó chi phí tính toán cũng như thời gian là khá lớn
Trang 7Hình 2.7: Sơ đồ chu trình nhận dạng hệ thống tổng quát.
Mô hình húa mờ:
Nhìn chung, quá trình mô hình hoá mờ liờn quan tới ba giai đoạn, Giai đoạn đầu tiên
thực hiện việc lựa chọn cấu trúc mô hình Cấu trúc mô hình chứa đựng đặc tả cơ bản của
mô hình mờ bao gồm các thông tin về đầu vào, đầu ra mô hình, các giá trị ngôn ngữ biểudiễn mỗi biến mờ, các định nghĩa hàm thuộc đặc trưng cho mỗi giá trị ngôn ngữ, địnhnghĩa toán tử hợp thành sử dụng trong suy diễn, cơ chế mờ hoá và khử mờ, vân vân Cácthông tin này có thể thu thập từ tri thức về vật lý hệ thống, thông thường được biểu diễndưới dạng công thức toán học Cũng có khi, các thông tin này được khai thác từ những dữliệu thực nghiệm trên hệ thống thực Kinh nghiệm của những thao tác viên hệ thống biểuSinh viờn thực hiện: Đào Mạnh Sơn – HTTT – K49 Page 21
để chia tập dữ liệu huấn luyện ra thành c cụm, với i=1 c , r = 1 NM và c = c min c max.sau đó tâm cụm thứ i sẽ sinh ra tập tiền đề kích cỡ NV và tập kết luận ( là các tập mờ )được kí hiệu như sau :
Trang 8,
Sau khi xỏc định v i X, r, c và v i Y, r, c cho mỗi cặp (m r ,c), thì chúng ta cũng đã xác định được
cấu trúc mô hình tập mờ loại hai rời rạc cho tất cả cỏc trường hợpc= c min c max
Với tập luật :
Trong đó i = 1, , c và r=1, , NM.
Mỗi một mô hình mờ nhúng sẽ có một bộ luật cơ sở riêng tương ứng khi cho dữ liệu
luyện tập vào huấn luyện
3 2 XÂY DỰNG Mễ HốNH MỜ NHÚNG SỬ DỤNG TẬP MỜ LOẠI HAI
Mô hình mờ sử dụng tập mờ loại hai rời rạc sử dụng trong đồ án này được xây dựng
từ bộ mô hình mờ nhúng loại một nói trên Sau khi thực hiện giải thuật phân cụm dữ liệuFCM, gán nhãn cho từng cụm và xác định bộ luật cơ sở cho từng mô hình nhúng ta kếthợp bộ mô hình đó tạo thành mô hình mờ loại hai, các mô hình mờ nhúng liên kết vớinhau thông qua bảng tra cứu m (m - lookup table) sẽ được trình bày ở phần sau
3.2 1Tối ưu mô hình mờ loại hai
Xỏc định số lượng phừn cụm tối ưu :
Với c = c min c max , k=1 ND Vậy ta có được tổng sai số bình phương cho một số
lượng cụm c cụ thể sẽ là SSE(c) SSE(c) được tính như sau :
Trang 93.2 2 Xừy dựng bảng tra cứu m
Bước cuối cùng của công đoạn xác định cấu trúc mô hình sẽ là xây dựng bảng tra cứu
m Kí hiệu mk là giá trị độ mờ tối ưu ứng với một mô hình mờ loại một nhúng có sai sốbình phương nhỏ nhất cho dữ liệu huấn luyện đầu vào thứ k mk được xỏc định như sau :
CHƯƠNG IV: XÂY DỰNG HỆ THỐNG DỰ BÁO GIÁ CỔ
PHIẾU TRONG THỊ TRƯỜNG CHỨNG KHOÁN
4 1 GIỚI THIỆU CễNG CỤ MATLAB
MATLAB là một môi trường tớnh toỏn số và lập trình, được thiết kế bởi côngtyMathWorks MATLAB cho phộp tớnh toỏn số với ma trận, vẽ đồ thị hàm số hay biểu
đồ thông tin, thực hiện thuật toỏn, tạo các giao diện người dùng và liên kết vớinhữngchương trình máy tính viết trờn nhiều ngôn ngữ lập trình khác Với thư việnToolbox, MATLAB cho phép mô phỏng tính toán, thực nghiệm nhiều mô hình trong thực
tế và kỹ thuật, trong đó bộ thư viện về hệ mờ loại một ( Fuzzy Inference System ) baogồm các mô hình Mamdani và Tagaki - Sugeno rất hữu ích cho ta xây dựng mô hình
mờ loại haitrong đồ ỏn này
4.1.1 Xây dựng mô hình mờ với Fuzzy Logic Toolbox của Matlab
Sử dụng Fuzzy Logic Toolbox trong MATLAB chúng ta có các công cụ để xây dựngcác hệ suy diễn Dùng lệnh sau để xem chi tiết về hộp công cụ này
Trang 10Hình 4 5: Định nghĩa hàm thuộc cho từng biến
Ở cửa sổ này ta có thể định nghĩa miền xác định, miền hiển thị Một số dạng hàmthuộc được Matlab cung cấp như gaussmf, gbellmf sigmf… và các tham số hệ thốngtương ứng của các hàm thuộc
Trang 11Với mỗi biến vào ra có các dạng hàm thuộc tam giỏc (Trimf).
Hình 4 11: Dạng hàm thuộc tương ứng với cỏc biến vào ra
Từ tập luật thu được bằng thực nghiệm, được đưa vào mô hình thông qua màn hìnhRule Editor
Hình 4.12: Tập luật được học từ tậpdữ liệu huấn luyện
Sinh viờn thực hiện: Đào Mạnh Sơn – HTTT – K49 Page 58
Trang 12- Chức năng nhập dữ liệu:
Mục đích để đưa vào bộ dữ liệu luyện tập để huấn luyện bộ
mô hình mờ nhúng từ đó kết hợp tạo thành bộ mô hình mờcần dùng trong đồ án Gồm các chức năng :
+ Chức năng chọn bộ dữ liệu huấn luyện: dữ liệu đượcngười dùng đưa vào
thống để huấn luyện
+ Chức năng nhập bộ tham số mô hình {m,c} trong đó m là mức độ mờ, c là
số phừn cụm mờ
- Chức khởi tạo mô hình :
Mục đích tạo ra các mô hình mờ nhúng Bao gồm:
Trang 13Cỏc Button “Import Training Data”, “Setup System”, “Optimal ”, “Look - uptable”, “Display”, “Calculate”, “RMSE”,“Introduction”, “Help”, được chọn là
loại Push Button Cỏc khung hiển thị c, m và giỏ trị được nhập vào và giỏ trị đầu ra được chọn là loại edit text
Khi lập trình giao diện:
Để các điều khiển tương ứng được hoạt động khi có các sự kiện kích hoạt taphải định nghĩa file Matlab lập trình các sự kiện
Đối với mỗi loại sự kiện ta cần có ứng xử tương ứng Các ứng xử được xừydựng trong hàm Callback Mỗi khi xảy ra sự kiện, hàm Callback tương ứng đượcgọi
Hàm Callback của “Setup System”:
Hình 4.18: Hàm Callback của button “Setup System”
4 2 2 2 Hoạt động của chương trình
Sinh viờn thực hiện: Đào Mạnh Sơn – HTTT – K49 Page 63
Trang 14Hình 4 19: Giao diện chương trình
Để khởi tạo mô hình ta click button “Import Traning Data”:
Hình 4.20: Chọn bộ dữ liệu huấn luyện
Sau đó ta click button “Setup System” để khởi tạo mô hình dùng cho hệ thốngSinh viờn thực hiện: Đào Mạnh Sơn – HTTT – K49 Page 64
Trang 15Tiếp đến để tối ưu mô hình theo tham số ctaclick button “Optimal c”
Hình 4 21: Chức năng Optimal c
Và bước cuối cùng trong khởi tạo mô hình cho hệ thống là ta thiết lập bảng tra cứu m, chúng ta click button “Look - up Table” để thực hiện việc thiết lập
Sau khi khởi tạo xong, chúng ta sẽ kiểm thử mô hình bằng bộ 50 dữ liệu cung cấp ở trên
Sau khi đã khởi tạo xong mô hình ta tiếp tục tiến hành kiểm thử bằng cỏch ấn ButtonRUN để bắt đầu và đỏnh giỏ sai số
Cho cỏc giỏ trị đầu vào là:
x 4 : present separation ratio moving average over a middle period
( tỉ lệ khoảng cách trung bình động trung hạn ở hiện tại)
x 8 : past separation ratio moving average over a short period
( tỉ lệ khoảng cách trung bình động ngắn hạn trong quỏ khứ)
x 10 : present separation ratiomoving average over a short period
( tỉ lệ khoảng cách trung bình động ngắn hạn hiện tại)
Sinh viờn thực hiện: Đào Mạnh Sơn – HTTT – K49 Page 65