Luận Văn: Nghiên Cứu FIX Protocol và Mô Phỏng Khớp Lệnh HNX

Luận văn thạc sĩ: Nghiên cứu giao thức FIX và ứng dụng xây dựng phần mềm mô phỏng khớp lệnh chứng khoán HNX. Tìm hiểu sâu về FIX Protocol.

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

Luận văn thạc sĩ

2013

79
1
0

Phí lưu trữ

30 Point

Mục lục chi tiết

MỤC LỤC

DANH SÁCH BẢNG BIỂU

DANH MỤC CÁC HÌNH VẼ

BẢNG KÝ HIỆU CÁC CHỮ VIẾT TẮT

MỞ ĐẦU

1. CHƢƠNG 1: TỔNG QUAN VỀ CÁC GIAO THỨC TRAO ĐỔI DỮ LIỆU TRONG LĨNH VỰC TÀI CHÍNH

1.1. Các giao thức trong đổi dữ liệu trong lĩnh vực tài chính

1.2. Giới thiệu về chuẩn giao thức FIX

1.2.1. Sơ lược về chuẩn FIX

1.2.2. Cấu trúc của một FIX thông điệp

2. CHƢƠNG 2: NGHIÊN CỨU VỀ CHUẨN MESSAGE VÀ GIAO THỨC FIX ĐANG ĐƢỢC SỬ DỤNG TẠI SỞ GIAO DỊCH CHỨNG KHOÁN HÀ NỘI

2.1. Mô hình giao tiếp giữa CTCK và HNX

2.1.1. Sơ đồ giai đoạn thiết lập kết nối

2.1.2. Sơ đồ giai đoạn truyền dữ liệu

2.1.3. Sơ đồ giai đoạn đóng kết nối

2.1.4. Một số quy định khi trao đổi dữ liệu của giao thức

2.2. Quy trình thực hiện trao đổi dữ liệu giữa CTCK và HNX

2.2.1. Danh mục các quy trình

2.2.2. Chi tiết các quy trình liên quan đến kết nối

2.2.3. Quy trình đóng kết nối

2.2.4. Chi tiết các quy trình liên quan đến nghiệp vụ

2.2.4.1. Quy trình đặt lệnh
2.2.4.2. Quy trình hủy lệnh
2.2.4.3. Quy trình sửa lệnh
2.2.4.4. Quy trình đặt lệnh quảng cáo
2.2.4.5. Quy trình xóa lệnh quảng cáo chưa thực hiện
2.2.4.6. Quy trình đặt lệnh thỏa thuận của khách hàng cùng công ty
2.2.4.7. Quy trình đặt lệnh thỏa thuận của khách hàng khác công ty

2.3. Đặc tả các thông điệp trao đổi dữ liệu giữa CTCK và HNX

2.3.1. Danh mục các thông điệp

2.3.2. Danh mục các TAG sử dụng trong FIX

2.3.3. Đặc tả chi tiết các thông điệp

2.3.3.1. Thông điệp Logon
2.3.3.2. Thông điệp Reject
2.3.3.3. Thông điệp NewOrderSingle
2.3.3.4. Thông điệp OrderCancelRequest
2.3.3.5. Thông điệp OrderCancelReplaceRequest

3. CHƢƠNG 3: XÂY DỰNG PHẦN MỀM MÔ PHỎNG HỆ THỐNG KHỚP LỆNH TẠI SỞ GIAO DỊCH CHỨNG KHOÁN HÀ NỘI – HNX

3.1. Mô tả bài toán

3.2. Tổng quan nghiệp vụ giao dịch chứng khoán tại HNX

3.2.1. Phiên giao dịch

3.2.2. Nguyên tắc khớp lệnh

3.2.2.1. Nguyên tắc khớp lệnh định kỳ
3.2.2.2. Nguyên tắc khớp lệnh liên tục

3.2.3. Các loại lệnh giao dịch

3.2.3.1. Lệnh giới hạn (LO)
3.2.3.2. Lệnh thị trường (MP)
3.2.3.3. Lệnh ATO/ATC

3.3. Phân tích yêu cầu

3.3.1. Yêu cầu phần mềm

3.3.2. Xây dựng mô hình Use-Case

3.4. Thiết kế kiến trúc hệ thống

3.4.1. Mô hình tương tác dữ liệu CTCK và HNX

3.4.2. Kiến trúc xử lý dữ liệu

3.4.3. Kiến trúc phần mềm mô phỏng

3.5. Thiết kế cơ sở dữ liệu

3.5.1. Mô hình quan hệ dữ liệu

3.5.2. Chi tiết các bảng dữ liệu

3.5.2.1. StockPrice: Thông tin chứng khoá
3.5.2.2. OrderSysStat: Thông tin trạng thái thị trường
3.5.2.3. SOrder: Thông tin lệnh bán
3.5.2.4. BOrder: Thông tin lệnh mua
3.5.2.5. HistOrders: Bảng thông tin lịch sử lệnh
3.5.2.6. OrderCancelRequest: Thông tin yêu cầu hủy lệnh báo giá
3.5.2.7. OrderReplaceRequest: Thông tin yêu cầu sửa lệnh báo giá
3.5.2.8. Advertisement: Thông tin lệnh quảng cáo
3.5.2.9. ClientInfo: Thông tin về máy trạm kết nối đến HNX
3.5.2.10. Order_PT: Thông tin lệnh giao dịch thỏa thuận
3.5.2.11. MatchInfo: Chi tiết khớp lệnh của hệ thống

3.6. Thiết kế chức năng

3.6.1. Xử lý đặt lệnh báo giá

3.6.1.1. Một số thực thể liên quan

3.6.2. Hủy lệnh báo giá

3.6.2.1. Một số thực thể liên quan

3.6.3. Sửa lệnh báo giá

3.6.3.1. Một số thực thể liên quan

4. CHƢƠNG 4: CÀI ĐẶT THỬ NGHIỆM VÀ ĐÁNH GIÁ HỆ THỐNG

4.1. Kết quả xây dựng phần mềm

4.1.1. Màn hình chính

4.1.2. Đặt lệnh báo giá

4.1.3. Khớp lệnh thủ công

4.1.4. Đặt lệnh quảng cáo

4.2. Kịch bản thử nghiệm - 63 - 4.1 Mục tiêu thử nghiệm

4.3. Đánh giá kết quả

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng Quan Về FIX Protocol Giao Thức Khớp Lệnh Chứng Khoán

Trong thế giới tài chính hiện đại, việc tích hợp các hệ thống giao dịch khác nhau là một bài toán phức tạp và cấp thiết. Trước đây, các nhà cung cấp phần mềm tài chính thường tự định nghĩa giao thức riêng, dẫn đến sự khó khăn khi tích hợp với các hệ thống khác. FIX (Financial Information eXchange) Protocol ra đời như một chuẩn giao thức chung, giải quyết bài toán này. FIX Protocol là một chuẩn thông điệp và giao thức quốc tế phổ biến cho việc giao tiếp giữa các hệ thống tài chính, đặc biệt là trong các lĩnh vực giao dịch thị trường như chứng khoán, vàng, tiền tệ, và giao dịch hàng hóa. Hầu hết các sàn giao dịch hiện đại trên thế giới đều sử dụng FIX để trao đổi thông tin với các hệ thống liên quan. FIX Protocol không chỉ định nghĩa chuẩn thông điệp mà còn quy định về cách thức bắt tay giữa các bên, cách thức truyền nhận dữ liệu, duy trì kết nối và đảm bảo tính toàn vẹn dữ liệu. Theo tài liệu gốc, việc sử dụng FIX giúp chuẩn hóa cấu trúc dữ liệu và cách thức trao đổi, từ đó giảm chi phí và thời gian tích hợp hệ thống. Việc sử dụng chuẩn và giao thức quốc tế tạo ra nhiều thuận lợi cho việc triển khai, tích hợp hệ thống sau này và còn phục vụ nhu cầu mở rộng kết nối với các hệ thống tài chính khác trên thế giới. Financial Information eXchange Protocol có rất nhiều phiên bản từ FIX 4. Hiện nay FIX 4.4 đang được sử dụng rộng rãi nhất và tại Việt Nam cũng đang sử dụng chuẩn này. Một thông điệp FIX bao gồm nhiều trường và được chia thành 3 phần chính: Message Header, Message Body, và Message Trailer. Cấu trúc mỗi trường của mỗi thông điệp FIX có dạng: <TAG>=<VALUE><DELIMITER>.

1.1. Lịch Sử Hình Thành và Phát Triển của FIX Protocol

FIX Protocol không phải là một phát minh đơn lẻ mà là kết quả của quá trình phát triển liên tục để đáp ứng nhu cầu ngày càng tăng của thị trường tài chính. Từ những giao thức đơn giản ban đầu, FIX Protocol đã trải qua nhiều phiên bản khác nhau, mỗi phiên bản đều được cải tiến để phù hợp hơn với các yêu cầu mới về tốc độ, độ tin cậy và khả năng mở rộng. Hiện nay, FIX Protocol không chỉ được sử dụng trong giao dịch chứng khoán mà còn được ứng dụng rộng rãi trong nhiều lĩnh vực tài chính khác, chứng minh tính linh hoạt và hiệu quả của nó.

1.2. Ưu Điểm Nổi Bật Của Chuẩn Giao Thức FIX Trong Giao Dịch

FIX Protocol mang lại nhiều ưu điểm vượt trội so với các giao thức truyền thống. Thứ nhất, nó giúp chuẩn hóa quy trình giao tiếp giữa các hệ thống, giảm thiểu sự phức tạp và chi phí tích hợp. Thứ hai, Financial Information eXchange Protocol cung cấp các cơ chế bảo mật mạnh mẽ, đảm bảo an toàn cho dữ liệu trong quá trình truyền tải. Thứ ba, FIX Protocol có khả năng mở rộng linh hoạt, dễ dàng thích ứng với các yêu cầu mới của thị trường. Cuối cùng, FIX Protocol được hỗ trợ bởi một cộng đồng lớn các nhà phát triển và chuyên gia, đảm bảo nguồn lực và kiến thức để giải quyết các vấn đề phát sinh.

II. Vấn Đề Tồn Tại Thách Thức Khi Triển Khai FIX Protocol

Mặc dù mang lại nhiều lợi ích, việc triển khai FIX Protocol cũng đối mặt với một số thách thức. Một trong những thách thức lớn nhất là sự phức tạp của chính giao thức. FIX Protocol bao gồm rất nhiều trường và thông điệp khác nhau, đòi hỏi các nhà phát triển phải có kiến thức chuyên sâu để có thể sử dụng hiệu quả. Thêm vào đó, việc tích hợp FIX Protocol với các hệ thống hiện có có thể gặp khó khăn, đặc biệt là khi các hệ thống này sử dụng các giao thức khác nhau. Theo tài liệu gốc, các công ty chứng khoán thường phải đầu tư nhiều thời gian và nguồn lực để xây dựng các framework hỗ trợ FIX Protocol. Một vấn đề khác là sự khác biệt về phiên bản FIX Protocol. Hiện nay có nhiều phiên bản FIX Protocol khác nhau đang được sử dụng, và việc đảm bảo khả năng tương thích giữa các phiên bản này có thể là một thách thức. Cuối cùng, việc duy trì và cập nhật hệ thống FIX Protocol cũng đòi hỏi sự chú ý và nỗ lực liên tục.

2.1. Rào Cản Về Chi Phí và Nguồn Lực Khi Áp Dụng FIX Protocol

Triển khai FIX Protocol đòi hỏi một khoản đầu tư đáng kể về chi phí và nguồn lực. Các công ty cần phải mua các framework hỗ trợ FIX Protocol, đào tạo nhân viên về giao thức này, và xây dựng các hệ thống để tích hợp FIX Protocol với các hệ thống hiện có. Điều này có thể là một rào cản lớn đối với các công ty nhỏ và vừa, đặc biệt là các công ty ở các thị trường mới nổi.

2.2. Khó Khăn Trong Việc Tích Hợp FIX Protocol Với Hệ Thống Hiện Tại

Việc tích hợp Giao thức FIX với các hệ thống hiện tại có thể gặp nhiều khó khăn, đặc biệt là khi các hệ thống này sử dụng các giao thức khác nhau hoặc có kiến trúc phức tạp. Các công ty cần phải xây dựng các cầu nối hoặc bộ chuyển đổi để đảm bảo khả năng tương thích giữa các hệ thống. Điều này đòi hỏi sự am hiểu sâu sắc về cả FIX Protocol và các hệ thống hiện tại.

2.3. Đảm Bảo An Ninh Mạng Cho Giao Thức FIX Trong Môi Trường Giao Dịch

An ninh mạng là một mối quan tâm lớn trong môi trường giao dịch tài chính. FIX Protocol cần được bảo vệ khỏi các cuộc tấn công mạng, chẳng hạn như tấn công từ chối dịch vụ (DoS) hoặc tấn công man-in-the-middle. Các công ty cần phải triển khai các biện pháp bảo mật mạnh mẽ, chẳng hạn như mã hóa dữ liệu, xác thực hai yếu tố và giám sát lưu lượng mạng.

III. Hướng Dẫn Phương Pháp Mô Phỏng Hệ Thống Khớp Lệnh FIX Protocol

Để giải quyết các thách thức trên, việc mô phỏng hệ thống khớp lệnh FIX Protocol là một giải pháp hiệu quả. Mô phỏng cho phép các nhà phát triển thử nghiệm và gỡ lỗi các ứng dụng FIX Protocol trong một môi trường kiểm soát, giảm thiểu rủi ro và chi phí liên quan đến việc triển khai thực tế. Theo tài liệu gốc, tác giả đã xây dựng một hệ thống mô phỏng hệ thống khớp lệnh tại Sở Giao dịch Chứng khoán Hà Nội (HNX) để hỗ trợ quá trình phát triển và kiểm thử các phần mềm giao dịch chứng khoán. Hệ thống mô phỏng này cho phép các phần mềm giao dịch chứng khoán kết nối và thử nghiệm các giao dịch tương tự như tương tác với hệ thống HNX, giúp phát hiện các lỗi và đảm bảo tính chính xác. Mô phỏng hệ thống giao dịch chứng khoán là một phương pháp rất hữu ích trong quá trình xây dựng và triển khai hệ thống thực tế, giảm thiểu rủi ro và chi phí.

3.1. Xây Dựng Mô Hình Dữ Liệu Chuẩn Xác Cho Hệ Thống Mô Phỏng

Mô hình dữ liệu là nền tảng của bất kỳ hệ thống mô phỏng nào. Để đảm bảo tính chính xác và hiệu quả, mô hình dữ liệu cần phải phản ánh đầy đủ các khía cạnh của hệ thống thực tế, bao gồm các loại chứng khoán, lệnh giao dịch, thông tin thị trường, và quy trình khớp lệnh. Các ràng buộc về mặt nghiệp vụ cũng cần phải được mô hình hóa một cách cẩn thận để đảm bảo tính hợp lệ của dữ liệu.

3.2. Thiết Kế Kiến Trúc Hệ Thống Mô Phỏng Linh Hoạt và Mở Rộng

Kiến trúc hệ thống cần phải được thiết kế để đáp ứng các yêu cầu về hiệu năng, độ tin cậy, và khả năng mở rộng. Một kiến trúc phổ biến là sử dụng cấu trúc lưu trữ là Message Queue. Các thành phần của hệ thống, chẳng hạn như bộ xử lý lệnh, bộ khớp lệnh, và bộ lưu trữ dữ liệu, nên được thiết kế dưới dạng các module độc lập, dễ dàng thay thế hoặc nâng cấp.

3.3. Phát Triển Các Kịch Bản Thử Nghiệm Toàn Diện và Thực Tế

Các kịch bản thử nghiệm cần phải bao phủ tất cả các tình huống có thể xảy ra trong thực tế, bao gồm các loại lệnh giao dịch khác nhau, các điều kiện thị trường khác nhau, và các lỗi có thể xảy ra. Các kịch bản thử nghiệm nên được thiết kế để kiểm tra tính chính xác, hiệu năng, và độ tin cậy của hệ thống mô phỏng.

IV. Giải Pháp Sử Dụng FIX Engine Để Quản Lý Kết Nối FIX Protocol

Để đơn giản hóa việc triển khai và quản lý Kết nối FIX, các công ty thường sử dụng FIX Engine. FIX Engine là một phần mềm trung gian giúp xử lý các thông điệp FIX Protocol, quản lý kết nối, và đảm bảo tính toàn vẹn dữ liệu. FIX Engine cung cấp các API (Application Programming Interfaces) cho phép các ứng dụng dễ dàng gửi và nhận thông điệp FIX Protocol. Theo tài liệu gốc, có nhiều đơn vị thứ ba đã phát triển sẵn các framework cho chuẩn dữ liệu này. Việc sử dụng FIX Engine giúp giảm thiểu sự phức tạp và chi phí liên quan đến việc xây dựng và duy trì hệ thống FIX Protocol. Nó cũng giúp cải thiện hiệu năng và độ tin cậy của hệ thống.

4.1. Lựa Chọn FIX Engine Phù Hợp Với Yêu Cầu Của Hệ Thống

Có nhiều FIX Engine khác nhau trên thị trường, mỗi loại có những ưu điểm và nhược điểm riêng. Khi lựa chọn FIX Engine, các công ty cần phải xem xét các yếu tố như hiệu năng, độ tin cậy, khả năng mở rộng, tính năng, và chi phí. Các công ty cũng cần phải đảm bảo rằng FIX Engine được hỗ trợ bởi một nhà cung cấp uy tín và có kinh nghiệm.

4.2. Cấu Hình và Tối Ưu FIX Engine Để Đạt Hiệu Suất Tốt Nhất

Sau khi lựa chọn FIX Engine, các công ty cần phải cấu hình và tối ưu hóa FIX Engine để đạt hiệu suất tốt nhất. Điều này bao gồm việc cấu hình các tham số kết nối, các tham số xử lý thông điệp, và các tham số bảo mật. Các công ty cũng cần phải theo dõi hiệu năng của FIX Engine và điều chỉnh cấu hình khi cần thiết.

4.3. Giám Sát và Quản Lý Kết Nối FIX Protocol Để Đảm Bảo Hoạt Động Ổn Định

Việc giám sát và quản lý kết nối FIX Protocol là rất quan trọng để đảm bảo hoạt động ổn định của hệ thống. Các công ty cần phải theo dõi các chỉ số hiệu năng, chẳng hạn như thời gian phản hồi, số lượng thông điệp, và tỷ lệ lỗi. Các công ty cũng cần phải có các quy trình để xử lý các sự cố, chẳng hạn như mất kết nối hoặc lỗi thông điệp.

V. Ứng Dụng FIX Phần Mềm Mô Phỏng Khớp Lệnh Tại HNX

Luận văn này đã xây dựng một phần mềm mô phỏng hệ thống khớp lệnh tại Sở Giao dịch Chứng khoán Hà Nội (HNX) sử dụng FIX Protocol. Phần mềm này cho phép các công ty chứng khoán kiểm thử các phần mềm giao dịch chứng khoán của họ trước khi triển khai thực tế. Phần mềm mô phỏng hỗ trợ các chức năng chính như quản lý kết nối, xử lý đặt lệnh, xử lý khớp lệnh, xử lý yêu cầu hủy lệnh, xử lý yêu cầu sửa lệnh, và quản lý thông tin trạng thái thị trường. Phần mềm mô phỏng cũng tuân thủ các quy định hiện hành của UBCK nhà nước và Sở giao dịch, đảm bảo tính chính xác và tuân thủ. Theo tài liệu gốc, phần mềm mô phỏng này đã được thử nghiệm và đánh giá, cho thấy khả năng hỗ trợ đắc lực quá trình phát triển phần mềm giao dịch chứng khoán.

5.1. Chi Tiết Về Thiết Kế và Chức Năng Của Phần Mềm Mô Phỏng

Phần mềm mô phỏng được thiết kế với kiến trúc module, cho phép dễ dàng mở rộng và tùy chỉnh. Các module chính bao gồm module quản lý kết nối, module xử lý lệnh, module khớp lệnh, và module quản lý thông tin thị trường. Phần mềm hỗ trợ các loại lệnh giao dịch khác nhau, bao gồm lệnh giới hạn, lệnh thị trường, và lệnh ATO/ATC. Phần mềm cũng hỗ trợ các quy trình khớp lệnh khác nhau, bao gồm khớp lệnh định kỳ và khớp lệnh liên tục.

5.2. Kết Quả Thử Nghiệm và Đánh Giá Hiệu Quả Của Phần Mềm

Phần mềm mô phỏng đã được thử nghiệm với nhiều kịch bản khác nhau, bao gồm các kịch bản giao dịch thông thường và các kịch bản giao dịch bất thường. Kết quả thử nghiệm cho thấy phần mềm hoạt động ổn định và đáp ứng các yêu cầu về hiệu năng và độ tin cậy. Phần mềm cũng giúp phát hiện các lỗi trong các phần mềm giao dịch chứng khoán được kiểm thử.

5.3. Hướng Dẫn Sử Dụng Phần Mềm Mô Phỏng Cho Nhà Phát Triển

Phần mềm mô phỏng đi kèm với một tài liệu hướng dẫn sử dụng chi tiết, giúp các nhà phát triển dễ dàng làm quen và sử dụng phần mềm. Tài liệu hướng dẫn bao gồm các hướng dẫn về cách kết nối đến phần mềm, cách gửi và nhận thông điệp FIX Protocol, cách cấu hình các tham số giao dịch, và cách theo dõi trạng thái của hệ thống.

VI. Tương Lai Phát Triển FIX Protocol và Ứng Dụng Thực Tế

FIX Protocol tiếp tục phát triển và mở rộng để đáp ứng nhu cầu ngày càng tăng của thị trường tài chính. Các phiên bản mới của FIX Protocol được bổ sung các tính năng mới, chẳng hạn như hỗ trợ cho các loại tài sản mới, các quy trình giao dịch mới, và các yêu cầu bảo mật mới. Ứng dụng FIX Protocol cũng ngày càng đa dạng, từ các hệ thống giao dịch chứng khoán đến các hệ thống quản lý rủi ro và các hệ thống báo cáo. Trong tương lai, FIX Protocol sẽ tiếp tục đóng vai trò quan trọng trong việc kết nối các hệ thống tài chính và thúc đẩy sự phát triển của thị trường tài chính.

6.1. Xu Hướng Phát Triển Mới Nhất Của FIX Protocol Trên Thế Giới

Các xu hướng phát triển mới nhất của FIX Protocol bao gồm việc hỗ trợ cho các loại tài sản mới, chẳng hạn như tiền điện tử, việc tích hợp với các công nghệ mới, chẳng hạn như blockchain, và việc cải thiện khả năng bảo mật. Các phiên bản mới của FIX Protocol cũng được thiết kế để dễ dàng tích hợp với các hệ thống hiện có.

6.2. Tiềm Năng Ứng Dụng FIX Protocol Trong Các Lĩnh Vực Tài Chính Khác

Ngoài giao dịch chứng khoán, FIX Protocol có tiềm năng ứng dụng trong nhiều lĩnh vực tài chính khác, chẳng hạn như giao dịch ngoại hối, giao dịch trái phiếu, và giao dịch hàng hóa. FIX Protocol cũng có thể được sử dụng để kết nối các hệ thống quản lý rủi ro, các hệ thống báo cáo, và các hệ thống thanh toán.

6.3. Cơ Hội và Thách Thức Cho Thị Trường Việt Nam Khi Áp Dụng FIX Protocol

Việc áp dụng FIX Protocol mang lại nhiều cơ hội cho thị trường Việt Nam, chẳng hạn như cải thiện hiệu quả giao dịch, giảm chi phí tích hợp, và tăng cường khả năng cạnh tranh. Tuy nhiên, cũng có những thách thức, chẳng hạn như sự phức tạp của giao thức, sự thiếu hụt nhân lực có kinh nghiệm, và sự cần thiết phải đầu tư vào các hệ thống mới.

24/09/2025

Trích đoạn nội dung tài liệu

phần mở đầu, danh mục ký hiệu viết tắt, mục lục, danh mục tài liệu tham khảo, phụ lục và phần kết luận, nội dung của luận văn gồm ba chương. Tổng quan về các giao thức trao đổi dữ liệu trong lĩnh vực tài chính. Chương này giới thiệu tổng quan các giao thức trao đổi dữ liệu giữa các hệ thống tài chính. So sánh các giao thức với FIX.

Nghiên cứu chuẩn thông điệp và giao thức FIX đang được sử dụng tại Sở giao dịch chứng khoán Hà Nội. Chương này tập trung làm rõ nguyên lý của chuẩn giao thức FIX và nghiệp vụ trao đổi dữ liệu tại sàn giao dịch chứng khoán Hà Nội. Xây dựng phần mềm mô phỏng hệ thống khớp lệnh tại Sở giao dịch chứng khoán Hà Nội. Dựa trên cở sở lý thuyết về FIX và nghiệp vụ giao dịch chứng khoán tại Việt Nam và quy địch giao dịch tại HNX, luận văn thiết kế phần mềm mô phỏng hệ thống khớp lệnh tại HNX nhằm phục vụ quá trình kiểm thử phần mềm giao dịch chứng khoán.

Cài đặt thử nghiệm và đánh giá hệ thống Chương này trình bày kết quả cài đặt thử nghiệm, các kịch bản thử nghiệm và đánh giá kết quả. TIEU LUAN MOI download : skknchat@gmail.com -3- CHƢƠNG 1: TỔNG QUAN VỀ CÁC GIAO THỨC TRAO ĐỔI DỮ LIỆU TRONG LĨNH VỰC TÀI CHÍNH 1.1 Các giao thức trong đổi dữ liệu trong lĩnh vực tài chính Trước đây để tích hợp các hệ thống tin học trong lĩnh vực tài chính, các công ty phát triển phần mềm tài chính thường sử dụng một trong 2 giải pháp hoặc kết hợp các giải pháp sau: Giải pháp 1. Tự định nghĩa một giao thức phù hợp với phần mềm và nghiệp vụ hiện có. Ưu điểm: Với cách tạo ra một giao thức riêng sẽ có ưu điểm là đơn giản và tối ưu về hiệu năng, các thông điệp được tạo ra vừa đủ dữ liệu sát với nghiệp vụ mà phần mềm đáp ứng.

Nhược điểm: Nhược điểm lớn nhất của kiểu giao thức này là mang tính đặc thù, chỉ có phần mềm của nhà cung cấp đó sử dụng được, do đó chỉ có thể sử dụng để giao tiếp giữa các phần mềm do công ty đó cung cấp. Nếu muốn tích hợp với phần mềm bên thứ 3 thì phải chỉnh sửa lại giao thức. Khó khăn để tích hợp với nhiều loại phần mềm khác nhau. Áp dụng một số chuẩn mã hóa thông điệp để định nghĩa giao thức như chuẩn thông điệp ISO 8583, ISO 20022,.

Giải pháp này được đưa ra để khắc phục các nhược điểm của giải pháp 1 với mong muốn định nghĩa các thông điệp chuẩn trong lĩnh vực tài chính để đơn giản quá trình tích hợp giữa các hệ thống. Ưu điểm: Giải pháp này đã chuẩn hóa được thông điệp trao đổi thông tin giữa các hệ thống tích hợp giúp đơn giản hơn khi xây dựng giao thức tích hợp. Hiện nay hầu hết các hệ thống Core Banking lớn đều hỗ trợ giải pháp này như T24, Intellect, Korebank, Symbols,. Nhược điểm: Mặc dù đã đưa ra được chuẩn mã hóa các thông điệp nhưng chưa đưa ra được các quy tắc về giao thức, nên khi xây dựng giải pháp tích hợp các giao thức được tạo ra từ ISO thông điệp vẫn có thể khác nhau.

Do đó khi số lượng phần mềm cần tích hợp gia tăng vẫn có thể phải chỉnh sửa giao thức. Ngày nay, khi mà số lượng phần mềm tài chính gia tăng về số lượng, đa dạng về thể loại phong phú về công nghệ nếu sử dụng 1 trong 2 giải pháp trên sẽ hạn chế nhiều khi phải tích hợp với nhiều hệ thống khác nhau. Do đó cần phải có những quy định về chuẩn thông điệp và giao thức chung khi trao đổi dữ liệu tài chính. Bằng cách định nghĩa sẵn tất cả các loại thông tin có thể dùng khi trao đổi thông tin giữa các hệ thống tài chính FIX ra đời như một chuẩn thông điệp giao tiếp giữa các phần mềm tài chính TIEU LUAN MOI download : skknchat@gmail.com -4- với nhau.

Bên cạnh việc định nghĩa chuẩn thông điệp FIX còn quy định về các thức bắt tay giữa các bên, các thức truyền nhận dữ liệu, duy trì kết nối và đảm bảo tính toàn vẹn dữ liệu khi trao đổi. Có thể nói FIX là một chuẩn giao thức chung cho việc trao đổi dữ liệu giữa các hệ thống tài chính đã khắc phục được nhược điểm của các giao thức truyền thống.2 Giới thiệu về chuẩn giao thức FIX 1.1 Sơ lược về chuẩn FIX Trên thế giới hiện nay FIX đang là chuẩn thông điệp và giao thức quốc tế phổ thông cho việc giao tiếp giữa các hệ thống tài chính, đặc biệt là cho các lĩnh vực giao dịch thị trường như chứng khoán, vàng, tiền tệ, giao dịch hàng hóa,. Hầu hết, các Sàn giao dịch hiện đại trên thế giới đều sử dụng FIX cho việc trao đổi với các hệ thống liên quan phục vụ cho hoạt động công nghệ thông tin. Việc sử dụng chuẩn và giao thức quốc tế tạo ra nhiều thuận lợi cho việc triển khai, tích hợp hệ thống sau này và còn phục vụ nhu cầu mở rộng kết nối với các hệ thống tài chính khác trên thế giới.

Những thuận lợi chính khi lựa chọn FIX là chuẩn dữ liệu trao đổi với các hệ thống của thành viên như sau:  Đây là chuẩn quốc tế và tương đối phổ thông, nên các qui định về cấu trúc dữ liệu, cách thức trao đổi hoàn toàn chuẩn hóa và có nhiều tài liệu hỗ trợ cho việc tích hợp hệ thống giữa Sở và CTCK.  Chuẩn dữ liệu này tường minh và dễ hiểu.  Có nhiều đơn vị thứ ba đã phát triển sẵn các framework cho chuẩn dữ liệu này, HNX và CTCK sẽ không mất nhiều thời gian và nguồn lực để phát triển các framework đó mà có thể tận dụng và sử dụng ngay, mặc dù sẽ phải trả thêm một số chi phí khi mua các framework này.  Các hệ thống của các công ty chứng khoán hiện đại đều hỗ trợ sẵn chuẩn FIX, vì thế các CTCK khi mua các phần mềm giao dịch chứng khoán này cũng sẽ dễ dàng tích hợp với HNX.

 Chuẩn FIX được nhiều Sở giao dịch trên thế giới và các đơn vị tài chính khác trên thế giới ứng dụng vì thế Sở giao dịch chứng khoán Hà Nội cũng sẽ dễ dàng tích hợp với các hệ thống đó Chuẩn FIX có rất nhiều phiên bản từ FIX 4. Hiện nay FIX 4.4 đang được sử dụng rộng rãi nhất và tại Việt Nam cũng đang sử dụng chuẩn này. Trong phạm vi luận văn này chúng ta chỉ đề cập đến phiên bản FIX 4. TIEU LUAN MOI download : skknchat@gmail.1 Cấu trúc của một FIX thông điệp Mỗi thông điệp FIX bao gồm nhiều trường và được chia thành 3 phần chính:  Message Header: : Định nghĩa loại thông điệp, độ dài, người gửi, người nhận, thời gian gửi, số thứ tự,.

 Message Body: Chứa nội dung thông tin thông điệp.  Message Trailer: Chứa thông tin kiểm tra toàn vẹn dữ liệu trên đường truyền (chữ ký số, checksum,. Cấu trúc mỗi trường của mỗi thông điệp FIX có dạng sau: <TAG>=<VALUE><DELIMITER> Trong đó: <TAG>: Là mã số để xác định trường: có thể là số hoặc tên tường minh <VALUE>: Là giá trị của trường <DELIMITER>: Là dấu ngăn cách giữa các trường, đây là ký tự đặc biệt có mã ASCII =1 Ví dụ về một thông điệp FIX: 8=FIX. TIEU LUAN MOI download : skknchat@gmail.com -6- CHƢƠNG 2: NGHIÊN CỨU VỀ CHUẨN MESSAGE VÀ GIAO THỨC FIX ĐANG ĐƢỢC SỬ DỤNG TẠI SỞ GIAO DỊCH CHỨNG KHOÁN HÀ NỘI 2.1 Mô hình giao tiếp giữa CTCK và HNX Hiện nay các CTCK giao tiếp với sở giao dịch chứng khoán theo mô hình Máy trạm/Máy chủ, trong đó CTCK đóng vai trò làm Máy trạm và HNX đóng vai trò Máy chủ.

Gửi lệnh SERVER CLIENT (CTCK) (HNX) Kết quả Thông tin thị trường Hình 2. Mô hình giao tiếp CTCK và HNX Thông tin trao đổi giữa CTCK và HNX là các gói tin có cấu trúc gồm 2 phần: Header Data content Trong đó:  Hearder: có độ dài 4 byte, lưu độ dài của dữ liệu “Data” dưới dạng binary  Data content: nội dung dữ liệu gửi dưới dạng string có độ dài tùy ý. Quy ước ta sẽ gọi phần Data là thông điệp (message). Thông điệp có cấu trúc tuân theo chuẩn thông điệp FIX  Quá trình trao đổi dữ liệu giữa Máy trạm và máy chủ thông qua FIX sẽ trải qua 3 giai đoạn.

 Thiết lập kết nối: Trong giai đoạn này máy trạm sẽ gửi yêu cầu kết nối đến máy chủ. Máy chủ sẽ kiểm tra để xác thực thông tin gửi đến và khôi phục dữ liệu (nếu cần), nếu thỏa mãn các điều kiện kết nối thì một kênh kết nối sẽ được thiết lập giữa Máy trạm và Server. Trong trường hợp cần khôi phục dữ liệu ngay sau khi thực hiện kết nối, máy chủ sẽ gửi thông báo chấp nhận kết nối và yêu cầu máy trạm gửi dữ liệu khôi phục.  Truyền dữ liệu: Sau khi máy chủ đồng ý kết nối và cho phép gửi dữ liệu lên, 2 bên có thể trao đổi dữ liệu.

Việc trao đổi dữ liệu diễn ra theo 2 chiều nhưng trong giới hạn của buffer size. Buffer size là sự chênh lệch giữa số thông điệp lệnh mà Máy trạm gửi cho HNX và số lệnh mà HNX xử lý xong. TIEU LUAN MOI download : skknchat@gmail.com -7-  Kết thúc kết nối: Khi muốn kết thúc kết nối, cả 2 bên đều có quyền gửi yêu cầu kết thúc kết nối cho bên kia. Trong điều kiện bình thường thì phải đợi bên kia chấp nhận kêt thúc thì kết nối đó mới bị ngắt.

Tuy nhiên, trong các trường hợp đặc biệt (lỗi đường truyền, hoặc hết giờ, hoặc máy trạm vi phạm quy chế .) thì có thể ngắt kết nối mà không cần sự chấp thuận.1 Sơ đồ giai đoạn thiết lập kết nối CLIENT (CTCK) SERVER (HNX) Đúng FIX Gửi Start massage LogonMessage chưa? Y Gửi N RejectMessage Gửi lại Gửi User/pass LogonMessage N RejectMessage hợp lệ (Đúng user/pass) Y Gửi Sequence CTCK = HNX Last Thiết lập kết nối LogonMessage Msg Seq Num Processed ? (Thành công) N N Sequence CTCK < HNX Last N Msg Seq Num Processed ? Y Gửi Gửi lại dữ liệu ResendMessage CTCK reset lại Gửi Y sequence và tiếp SequenceReset tục gửi message Message 1 account không được logon 2 lần cùng 1 thời điểm Gửi Logon thành Kết thúc session LogoutMessage Y công chưa? (Đóng kết nối) Gửi Thiết lập kết nối LogonMessage N (Thành công) Hình 2. Sơ đồ giai đoạn thực hiện kết nối TIEU LUAN MOI download : skknchat@gmail.2 Sơ đồ giai đoạn truyền dữ liệu CLIENT (CTCK) SERVER (HNX) Gửi Đúng FIX Start Y DataMessage massage? Gửi N RejectMessage Gửi lại Gửi Gửi đúng DataMessage N RejectMessage SenderID?

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ