dac ta kt he thong gd cua hose

95
Phlc 02 : Đặc tkthut Hthng giao dch ca SGDCK TPHCM Ban hành kèm theo Quy đị nh giao dch tr c tuy ế n c a SGiao dch Ch ng khoán TP. HCM ngày 24 tháng 11 nă m 2008. ĐẶC TKTHUT HTHNG GIAO DCH CA SGDCK TPHCM 1

Upload: hoaianus9

Post on 24-Jun-2015

216 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Dac Ta KT He Thong GD Cua HOSE

Phụ lục 02: Đặc tả kỹ thuật Hệ thống giao dịch của SGDCK TPHCM

Ban hành kèm theo Quy định giao dịch trực tuyến của Sở Giao dịch Chứng khoán TP. HCM

ngày 24 tháng 11 năm 2008.

ĐẶC TẢ KỸ THUẬT

HỆ THỐNG GIAO DỊCH CỦA

SGDCK TPHCM

1

Page 2: Dac Ta KT He Thong GD Cua HOSE

Mục Lục I/ Thuật ngữ .................................................................................................................................... 5 II/ Giao thức Auto-T....................................................................................................................... 6

1. Định nghĩa: ......................................................................................................................... 6 2. Nguyên tắc họat động......................................................................................................... 6 3. Giao thức Auto-T................................................................................................................ 7

a. Truyền dữ liệu: ............................................................................................................. 12 b. Ngắt kết nối: ................................................................................................................. 13 c. Yêu cầu về khả năng xử lý của ứng dụng: ................................................................... 14

4. Bảng mô tả mã code ......................................................................................................... 15 Phụ lục Các biểu đồ .................................................................................................................. 16

III/ Giao thức Broadcast ............................................................................................................... 18 1. Phương thức truyền thông điệp: ....................................................................................... 18

a. Khái niệm Sequence Numbers ..................................................................................... 18 b. Khái niệm Timestamp .................................................................................................. 18 c. Định dạng của gói dữ liệu được truyền theo dạng broadcast ....................................... 18 d. Định dạng của content .................................................................................................. 18

2. Truyền lại các thông điệp bên đường UDP : ........................................................................ 19 a. Truyền tự động: ................................................................................................................ 19 b. Truyền thủ công :.............................................................................................................. 20

IV/ Mô tả các message: ................................................................................................................ 21 1. Message CTCI: ................................................................................................................. 21

Message 1C: Thông tin hủy lệnh.......................................................................................... 21 Message 1D: Thông tin thay đổi lệnh................................................................................... 22 Message 1E: Thông tin quảng cáo GDTT............................................................................ 23 Message 1F: Thông tin lệnh GDTT của khách hàng cùng công ty ...................................... 24 Message 1G: Thông tin lệnh GDTT của khách hàng khác công ty...................................... 25 Message 1I: Thông tin lệnh đặt ............................................................................................ 26 Message 2B: Xác nhận lệnh đặt ........................................................................................... 27 Message 2C: Xác nhận hủy lệnh .......................................................................................... 28 Message 2D: Xác nhận thay đổi lệnh ................................................................................... 29 Message 2E: Xác nhận khớp lệnh của khách hàng khác công ty ........................................ 30 Message 2F: Thông tin lệnh GDTT cho bên mua ................................................................ 31 Message 2G: Thông tin từ chối từ HOSE............................................................................. 32 Message 2I: Xác nhận khớp lệnh của khách hàng cùng công ty .......................................... 33 Message 2L: Xác nhận khớp GDTT.................................................................................... 34 Message 3A - Admin............................................................................................................ 35 Message 3B: Thông tin trả lời lệnh GDTT của bên mua hoặc HOSE ................................. 36 Message 3C: Thông tin yêu cầu hủy lệnh ............................................................................ 37 Message 3D: Thông tin trả lời yêu cầu hủy lệnh của bên mua hoặc HOSE ........................ 38 Message RN - Retransmission Nack .................................................................................... 39 Message RP - Retransmission Reply.................................................................................... 40 Message RQ - Retransmission Request................................................................................ 41

2. Message PRS:................................................................................................................... 42 Message AA – Thông báo về giao dịch thỏa thuận.............................................................. 42 Message BR – Thông tin xác nhận kết quả giao dịch của một công ty chứng khoán .......... 43 Message BS – Thông báo thay đổi trạng thái của broker..................................................... 44 Message CO - Hủy giao dịch lô lẻ....................................................................................... 45 Message DC – Thông báo hủy một giao dịch đã khớp ........................................................ 46 Message GA – Thông báo từ HOSE .................................................................................... 47 Message IU - cập nhật chỉ số............................................................................................... 48 Message LO – thông tin của phiên giao dịch lô lẻ mới nhất ................................................ 49 Message LS – thông tin của lần giao dịch mới nhất............................................................. 50 Message NH – Tiêu đề bản tin ............................................................................................. 51 Message NS – Bản tin .......................................................................................................... 52

2

Page 3: Dac Ta KT He Thong GD Cua HOSE

Message OL – lệnh đặt lô lẻ ................................................................................................ 53 Message OS – Thông tin xác định giá mở cửa..................................................................... 54 Message PD – Thông báo về khớp lệnh của giao dịch thỏa thuận....................................... 55 Message PO – Thông báo giá mở cửa dự kiến..................................................................... 56 Message SC – thông điệp điều khiển hệ thống..................................................................... 57 Message SI............................................................................................................................ 58 Message SR – Tổng kết thông tin từng mã chứng khoán.................................................... 59 Message SS – Thông báo thay đổi trạng thái của một mã chứng khoán.............................. 60 Message SU – Cập nhật mã chứng khoán ............................................................................ 61 Message TC – Thay đổi trạng thái của trader...................................................................... 63 Message TP – 3 giá trị tốt nhất ............................................................................................. 64 Message TR – room của đầu tư nước ngoài. ........................................................................ 65 Message TS .......................................................................................................................... 66

3. Ý nghĩa của các trường trong các message: ..................................................................... 67 Accumulate Value ................................................................................................................ 67 Accumulate Volume............................................................................................................. 67 Add/Cancel Flag................................................................................................................... 67 Advances .............................................................................................................................. 67 Automatch Halt Flag ............................................................................................................ 68 Benefit .................................................................................................................................. 68 Board .................................................................................................................................... 68 Board Lot.............................................................................................................................. 68 Broker Client Volume, Broker Foreign Volume, Broker Portfolio Volume........................ 69 Cancel Confirm .................................................................................................................... 69 Cancel Shares ....................................................................................................................... 69 Ceiling Price ......................................................................................................................... 69 Client ID ............................................................................................................................... 69 Client ID Required ............................................................................................................... 70 Confirm Number .................................................................................................................. 70 Contact.................................................................................................................................. 70 Contra Firm .......................................................................................................................... 71 Current Room ....................................................................................................................... 71 Deal ID ................................................................................................................................. 71 Declines ................................................................................................................................ 71 Delist..................................................................................................................................... 71 Down Volume ...................................................................................................................... 72 Error code ............................................................................................................................. 72 Filler ..................................................................................................................................... 72 Firm ...................................................................................................................................... 73 Floor Price ............................................................................................................................ 73 Halt / Resume Flag ............................................................................................................... 73 Highest Price ........................................................................................................................ 73 Index – HOSE....................................................................................................................... 74 Index Time............................................................................................................................ 74 Last Sale Price ...................................................................................................................... 74 Lot Volume........................................................................................................................... 74 Lot Volume 1,2,3.................................................................................................................. 74 Lowest Price ......................................................................................................................... 75 Market ID ............................................................................................................................. 75 Message Type....................................................................................................................... 75 Meeting................................................................................................................................. 75 Mutual Fund Volume ........................................................................................................... 75 No Change ............................................................................................................................ 75 No Change Volume .............................................................................................................. 76 Notice ................................................................................................................................... 76 Open Price ............................................................................................................................ 76 Order Cancel Status.............................................................................................................. 76

3

Page 4: Dac Ta KT He Thong GD Cua HOSE

Order Entry Date .................................................................................................................. 77 Order Number....................................................................................................................... 77 Original Message Text ......................................................................................................... 77 Par Value .............................................................................................................................. 77 Port/Client Flag .................................................................................................................... 77 Price...................................................................................................................................... 78 Price 1,2,3............................................................................................................................. 78 Prior Close Date ................................................................................................................... 78 Prior Close Price................................................................................................................... 78 Projected Open Price ............................................................................................................ 79 Published Volume ................................................................................................................ 79 Putthrough Halt Flag ............................................................................................................ 79 Reject Reason Code:............................................................................................................. 79 Reply Code ........................................................................................................................... 81 SDC Flag .............................................................................................................................. 81 Sector Number...................................................................................................................... 81 Security Name ...................................................................................................................... 81 Security Number, Security Number (New) .......................................................................... 82 Security Symbol ................................................................................................................... 82 Security Type........................................................................................................................ 82 Side ....................................................................................................................................... 82 Split....................................................................................................................................... 83 Suspension............................................................................................................................ 83 System Control Code............................................................................................................ 83 Time...................................................................................................................................... 84 Timestamp ............................................................................................................................ 84 Total Room........................................................................................................................... 84 Total Shares Traded.............................................................................................................. 84 Total Trades.......................................................................................................................... 84 Total Values Traded ............................................................................................................. 85 Trader ID .............................................................................................................................. 85 Trader Status......................................................................................................................... 85 Up Volume ........................................................................................................................... 85 Volume ................................................................................................................................. 86 Số lượng cổ phiếu hay chứng chỉ quỹ, trái phiếu được giao dịch trong giờ giao dịch......... 86

4. Lưu đồ các message:......................................................................................................... 87

Lưu đồ của message điều khiển (SC) ................................................................................... 87 Lưu đồ của các message từ pre-open sang open .................................................................. 87 Lưu đồ của các message với các lệnh đặt ATO/ATC .......................................................... 88 Lưu đồ xử lý lệnh đặt ........................................................................................................... 88 Lưu đồ xử lý lệnh thị trường (MP) ....................................................................................... 89 Lưu đồ message thay đổi lệnh .............................................................................................. 89 Lưu đồ message yêu cầu huỷ lệnh........................................................................................ 90 Lưu đồ khớp giao dịch thoả thuận cùng công ty .................................................................. 90 Lưu đồ huỷ một giao dịch thoả thuận cùng công ty ............................................................. 90 Lưu đồ khớp giao dịch thoả thuận khác công ty .................................................................. 90 Lưu đồ hủy lệnh thoả thuận (chỉ dành cho trường hợp khác công ty) ................................. 91 Lưu đồ quảng cáo giao dịch thoả thuận................................................................................ 92 Đơn vị của các trường giá trị số: .......................................................................................... 92

V . Bảng tóm lược các message được gửi trong từng giai đoạn................................................... 94 1. CTCI messsage:................................................................................................................ 94 2. PRS message: ................................................................................................................... 94

Lưu đồ message giữa Sở và Công ty chứng khoán ...................................................................... 95

4

Page 5: Dac Ta KT He Thong GD Cua HOSE

I/ Thuật ngữ

1. HOSE: Sở giao dịch chứng khoán Tp.HCM.

2. Front-End: Hệ thống đầu cuối, là hệ thống trung gian giữa hệ thống giao dịch

của Sở và CTCK.

3. Back-End: Hệ thống sau cuối, chính là hệ thống giao dịch của Sở.

4. Message: Thông điệp.

5. Flow control: Là tiến trình của việc quản lý tốc độ chuyển tải dữ liệu giữa 2

điểm.

6. TCP(Transmission control protocol): Là một giao thức giao vận. Đây là một

trong những giao thức cốt lõi của bộ giao thức internet.

7. UDP(User datagram protocol): là 1 giao thức giao vận Đây là một trong những

giao thức cốt lõi của bộ giao thức internet.

8. Sliding window: Là một kỹ thuật cho phép bên gửi có thể gửi nhiều gói tin mà

không cần thiết phải nhận ACK (phản hồi ) từ bên nhận, miễn là số gói tin

không được vượt quá một giá trị nhất định, gọi là window size.

9. full-duplex: Trao đổi dữ liệu 2 chiều

10. buffer window: bộ đệm chứa các gói tin nhận được từ mạng hay các gói tin

chuẩn bị được gửi đi, đây là một thành phần trong kỹ thuật sliding window.

11. Server: là hệ thống phần mềm phục vụ cho giao dịch trực tuyến, đặt tại HOSE

12. Client: là hệ thống phần mềm đặt tại các công ty chứng khoán thành viên, nhằm

phục vụ cho giao dịch trực tuyến. Phần mềm này do các CTCK tự phát triển

hoặc mua từ các nhà cung cấp giải pháp phần mềm.

13. Sequence number: số thứ tự kế tiếp của gói dữ liệu truyền

14. Acknowledge sequence number: số sequence xác nhận giá trị mong muốn nhận

trong lần kế tiếp.

15. ClientAck: viết tắt của client acknowledge sequence number, có nghĩa là số

Acknowledge sequence phía client.

16. ServerSeq: viết tắt của server sequence number, là số sequence phía server.

17. Window size: kích thước của kỹ thuật sliding window, là số gói dữ liệu tối đa

một bên có thể gửi liên tiếp mà không cần phải chờ phản hồi từ bên nhận.

Khuyến cáo cho ứng dụng đang phát triển là 7.

18. Broker: Công ty Chứng khoán thành viên ( dùng trong mô tả các message)

19. Trader: Người môi giới

20. Packet sequence: Thứ tự của gói dữ liệu.

21. CTCI (Computer to computer interface): Là phương thức mà các thành viên của

5

Page 6: Dac Ta KT He Thong GD Cua HOSE

Sở có thể nhập lệnh từ hệ thống máy tính của CTCK thành viên đến máy chủ

giao dịch của Sở.

22. PRS (Price report system) : Hệ thống báo giá

23. Alphabet : Ký tự chữ cái

24. Numeric String: Chuỗi chỉ bao gồm các ký tự số

25. Alphanumeric String: Chuỗi bao gồm các ký tự chữ cái và số.

II/ Giao thức Auto-T

Định nghĩa:

Giao thức Auto-T là giao thức 2 lớp ở tầng ứng dụng, được sử dụng trong việc chuyển tải

các giao dịch giữa Hệ thống giao dịch của HOSE và Hệ thống giao dịch của CTCK

thành viên. Các message được sử dụng để giao tiếp giữa 2 hệ thống.

Nguyên tắc họat động

Hệ thống giao dịch tại HOSE về logic có thể chia thành 2 thành phần: Front-End và

Back-End. Hệ thống Back-End chính là Hệ thống giao dịch của HOSE. Các giao dịch

được chuyển tải theo dạng Message giữa Hệ thống Back-End tại HOSE và Hệ thống giao

dịch của CTCK thành viên. Hệ thống Front-End sẽ đảm nhận tác vụ này nhằm xử lý các

Message theo đúng tiêu chuẩn của giao thức giao vận tầng dưới.

Giao thức ứng dụng được thiết kế theo tiêu chí sau:

- Có khả năng quản lý tốc độ chuyển tải dữ liệu giữa 2 điểm (Flow control)

- Đảm bảo độ tin cậy ngay cả khi xuất hiện sự cố

- Đáp ứng các chức năng của hệ thống Front-End

Trạng thái của một message được xác định bởi packet sequence. Thông thường, Packet

sequence không nhất thiết phải duy nhất cho cả session nhưng đối với giao thức Auto-T,

packet sequence bắt buộc phải duy nhất để dùng cho mục đích tham chiếu khác. Xem xét

trạng thái của một ứng dụng, sẽ có 3 chế độ kết nối:

- Mode A(New connection): tất cả các trạng thái đều ở tình trạng ban đầu.

- Mode C(Continued connection): Ứng dụng sẽ sử dụng trạng thái trước đó để phục

hồi dữ liệu nếu cần thiết.

- Mode B(Blindly continued connection): Khi ứng dụng mất trạng thái nhưng cố

gắng phục hồi dữ liệu chỉ với một phần thông tin trạng thái còn lưu lại được. Ví

dụ: Mode B có thể xảy ra khi máy chủ chạy ứng dụng bị sự cố.

Sẽ không có mode B nếu ứng dụng không mất trạng thái. Ví dụ : việc lưu thông tin trạng

thái lên thiết bị lưu trữ ổn định. Trong trường hợp ứng dụng được chuyển từ máy chủ này

để chạy trên một máy chủ khác, ứng dụng trong trường hợp này phải có khả năng truy

xuất thông tin lưu giữ trạng thái trên máy chủ mới. Chính vì vậy, thông tin trạng thái phải

6

Page 7: Dac Ta KT He Thong GD Cua HOSE

được lưu trên đĩa cứng chia sẻ. Tuy nhiên, đĩa cứng chia sẻ có thể không khả thi nếu như

2 máy chủ được đặt tại các vùng địa lý khác nhau.

Cả hai bên (CTCK và SGDCK TPHCM) phải thống nhất về mode kết nối khi giai đoạn

thiết lập hoàn tất, nếu không kết nối không thể tiếp tục. Ví dụ: sẽ không khả thi nếu

Server mong muốn kết nối ở mode A trong khi Client lại muốn tạo kết nối ở mode C.

Trong Auto-T, Sở đóng vai trò như là Server và CTCK có vai trò là Client. Mối quan hệ

là 1-1. Tóm lại, giao thức ứng dụng sẽ bao gồm 3 giai đoạn chính:

- Thiết lập kết nối: trong giai đoạn này, Client sẽ yêu cầu kết nối tới Server. Trước

khi Server chấp nhận kết nối, nó sẽ thẩm định yêu cầu của client và thực hiện

phục hồi dữ liệu cho client nếu cần thiết. Dựa trên sự chấp thuận kết nối từ Server,

Client phải kiểm tra dữ liệu phục hồi từ phía Server nếu được yêu cầu và sau đó

phải gửi một xác nhận về cho Server để kết thúc quá trình thiết lập kết nối.

- Truyền dữ liệu: Một khi kết nối được thiết lập một cách hợp lệ, cả server và

client có thể gửi các gói dữ liệu cho nhau. Giai đoạn này là full-duplex, nhưng

hoat động theo sliding window, flow control. Flow control sẽ giới hạn số gói dữ

liệu mà mỗi bên có thể gửi cho nhau mà không cần nhận bất cứ phản hồi nào.

Trong giai đọan này cũng sẽ có các yêu cầu phản hồi của giao thức phụ.

- Ngắt kết nối: Khi cả 2 bên chuẩn bị ngưng kết nối, client nên tuân theo giao thức

ứng dụng trước khi đóng kết nối.

Ngoài những vấn đề về độ tin cậy đã nêu trên, flow control phải có khả năng quản lý

như:

- Số gói tin có thể mất trong quá trình bị sự cố sẽ không được quá kích thước của

buffer window. Thời điểm phục hồi có thể được điều khiển ở mức ứng dụng.

- Nếu bên nhận không thể nhận bất kỳ gói tin nào vì bất kỳ lý do gì thì giai đoạn

truyền dữ liệu nên ngừng nếu không bên nhận có thể bị quá tải dẫn đến sụp đổ hệ

thống.

Giao thức Auto-T

Định dạng Auto-T Message:

Len Seq AckSeq Opcode Link ID Content ETX

2 bytes 4 bytes 4 bytes 2 bytes 2 bytes N bytes 1 byte

Bảng 1 : Định dạng Auto-T message

7

Page 8: Dac Ta KT He Thong GD Cua HOSE

Mô tả chi tiết:

Field Name Field Length Field Type Field Description

Length 2 bytes ASCII

( mod96+32)

Độ dài của cả gói

tin không bao gồm

trường này

sequence 4 bytes ASCII (mod96+32) Seq kế tiếp của bên

gửi.

ack sequence 4 bytes ASCII (mod96+32) Seq mong muốn kế

tiếp của bên gửi.

Opcode 2 bytes Alphabet Loại gói tin, giúp

ứng dụng có khả

năng xử lý tương

ứng, đồng thời định

rõ được định dạng

và ý nghĩa của

những trường còn

lại.

Link-ID 2 bytes ASCII (mod96+32) Id của đường kết

nối giúp server xác

định được dữ liệu

đến từ client nào

content N bytes Phần nội dung, phụ

thuộc vào loại gói

tin được chỉ ra

trong Opcode.

ETX 1 byte constant Dấu hiệu kết thúc

(ASCII code 03)

Bảng 2 : Mô tả chi tiết các trường

8

Page 9: Dac Ta KT He Thong GD Cua HOSE

Định dạng phần nội dung của gói tin, phụ thuộc vào opcode:

Nội dung

Opcode hay là kiểu gói

tin (2 chars)

Tên trường Độ dài của trường

HL (HELLO) Mode 1 byte ( alphabet )

A = new connection

B = blindly continued

connection

C = continued connection

password N bytes

EOS (End Of String,

ASCII code 00)

1 byte

number of markets 1 byte (mod96+32)

market ID-1 1 byte (alphabet)

A = ASSET

(subjected to change)

firm ID-1 3 bytes (alphabet)

... ...

market ID-n 1 byte (alphabet)

firm ID-n 3 bytes (alphabet)

HR (HELLO_REPLY) mode 1 byte (alphabet)

CF (CONFIRM) - -

DT(DATA), LO(LEFTOVER), LL(LEFTOVER_LAST) của DT

market-ID 1 byte (alphabet)

message-count 1 byte (mod96+32)

data N bytes (Nếu có hơn một

message, mỗi message sẽ

được ngăn cách bởi ký tự

US)

LO(LEFTOVER) LL(LEFTOVER_LAST) Của RP

market-ID 1 byte

RP Packet “RP” = 2 bytes Link id = 2 bytes Market-ID = 1 byte Broadcast message = N bytes

RR(RETRAN_REQ) market-ID 1 byte

broadcast request message N bytes

RP(RETRAN_REPLY) market-ID 1 byte

9

Page 10: Dac Ta KT He Thong GD Cua HOSE

broadcast message N bytes

AK(ACK) - -

NK(NACK) error code 2 bytes ( mod96+32 )

error string N bytes

EOS (ASCII code 00 ) 1 byte

FN(FINISH) - -

AF (ACKFIN) - -

EC (ECHO) - -

ER (ECHO_REPLY) - -

Bảng 3: Mô tả chi tiết nội dung của opcode

Thiết lập kết nối:

Giai đoạn này bao gồm cả quá trình chứng thực người dùng và quá trình phục hồi dữ

liệu nếu có message bị mất trong lần truyền trước.

Giao thức truyền:

Client gửi gói HELLO kèm theo sequence number, acknowledge sequence

number và cả mật khẩu để server kiểm tra, chứng thực người dùng. Nếu có

lỗi, message NACK kèm theo mã lỗi và mô tả lỗi sẽ được gửi về cho client.

Server sẽ kiểm tra để biết client có cần khôi phục dữ liệu nào không.

Nếu CliAck +WindowSize >= ServSeq > CliAck: client bị mất một số

message và cần được truyền lại các message bị mất

Nếu ServSeq == CliAck : Client đã nhận đủ các message.

Nếu ServSeq > CliAck+WindowSize: gần như không thể xảy ra. Nếu

có giao thức nên ngừng để phối hợp xử lý.

Nếu ServSeq < CliAck: có thể là do server bị sự cố hoặc server và

client kết nối ở 2 mode khác nhau. Nếu là trường hợp thứ hai, chỉ cần

tắt client và khởi động lại ở mode giống với server.

Sau khi đã kiểm tra và quá trình khôi phục dữ liệu (nếu có) hoàn tất, server

sẽ gửi message HELLO_REPLY, client cũng phải thực hiện các bước kiểm

tra tương tự server

Nếu ServAck+WindowSize >= CliSeq > ServAck: server bị mất

message và cần được truyền lại.

Nếu CliSeq == ServAck: server đã nhận đủ message từ client gửi.

Nếu CliSeq > ServAck+WindowSize: gần như không thể xảy ra. Nếu có

phải xem xét server ack và client sequence để điều chỉnh cho hợp lý.

Nếu CliSeq < ServAck: có thể là do client bị down hoặc server và client

10

Page 11: Dac Ta KT He Thong GD Cua HOSE

kết nối ở 2 mode khác nhau. Nếu là trường hợp thứ hai, chỉ cần tắt

client và khởi động lại ở mode giống với server.

Sau khi đã kiểm tra và quá trình khôi phục dữ liệu (nếu có) hoàn tất, client

gửi message CONFIRM để hoàn tất giai đoạn 1 giai đoạn kết nối. Bảng

dưới thể hiện tất cả các khả năng kết nối và thao tác cần thực hiện tương

ứng.

Exchange Broker Action(s)

A A Không cần quá trình

phục hồi dữ liệu

<< HELLO (1,1)

HELLO_REPLY (1,1) >>

<< CONFIRM(1,1)

A B Sai mode kết nối << HELLO

(any,any)

NACK (any,any)>>

A C Sai mode kết nối << HELLO

(any,any)

NACK (any,any)>>

B A Sai mode kết nối << HELLO

(any,any)

NACK (any,any)>>

B B Không cần quá trình

phục hồi dữ liệu.

<<

HELLO(seq1,ackSeq1)

HELLO_REPLY (seq1,ackSeq1) >>

<<CONFIRM(seq1,ackSeq1)

B C Không cần quá trình

phục hồi dữ liệu.

<<

HELLO(seq1,ackSeq1)

HELLO_REPLY (ackSeq1,seq1) >>

<<CONFIRM(seq1,ackSeq1)

C A Sai mode kết nối << HELLO

(any,any)

NACK (any,any)>>

C B Không cần quá trình

phục hồi dữ liệu.

<< HELLO(1,1)

HELLO_REPLY (seq1,ackSeq1) >>

<<CONFIRM(ackSeq1,seq1)

11

Page 12: Dac Ta KT He Thong GD Cua HOSE

C C Có thể có quá trình phục

hồi dữ liệu

<< HELLO(any,any)

LEFTOVER/LEFTOVER_LAST

>>

HELLO_REPLY(any,any)>>

<<LEFTOVER/LEFTOVER_LAST

<<CONFIRM(any,any)

* Ghi chú: Trong gói HELLO, client có thể gửi danh sách các thị trường muốn

giao dịch. Tuy nhiên, HOSE chỉ có 1 thị trường duy nhất.

a. Truyền dữ liệu:

• Quá trình này bao gồm cả truyền message và dịch vụ phản hồi yêu cầu:

♦ Giao thức truyền message sẽ phải dựa vào cơ chế sliding window để truyền.

♦ Dịch vụ phản hồi yêu cầu thì có thể lấy ví dụ trong trường hợp server gửi

ACK, NACK khi nhận được message từ client.

♦ Ngoài ra, client còn có thể có các giao thức phụ khác như gửi yêu cầu đến

server, yêu cầu truyền lại thông tin bên broadcast hoặc là gửi ECHO message

khi không có dữ liệu cần truyền. Bất cứ thông điệp nào gửi đến server có lỗi,

server sẽ gửi NACK về để thông báo.

• Kỹ thuật sliding window: chỉ dùng để điều khiển dòng dữ liệu truyền giữa server

và client. Nó không có nhiệm vụ sắp xếp thứ tự các gói tin, phát hiện việc mất hay

trùng lắp gói tin. Đó là việc của giao thức truyền dữ liệu. Kỹ thuật này cho phép

mỗi bên có thể gửi nhiều gói tin mà không cần thiết phải nhận ACK từ phía nhận,

miễn là số gói tin nằm trong khoảng window size. Mỗi gói dữ liệu được gửi kèm

theo số ack sequence, chứng nhận với bên nhận rằng bên gửi đã nhận được dữ liệu

đến giá trị sequence = ack sequence -1. Có nghĩa là khi gửi thông điệp DATA, bên

gửi đã bao gồm thông tin ACK trong đó. Và điều kiện sau phải luôn được thỏa

mãn:

theirAckSeq < ourNextSeq <= theirAckSeq+WindowSize

• Yêu cầu truyền lại dữ liệu broadcast: client nếu muốn có thể yêu cầu server truyền

lại dữ liệu bên broadcast. Server sẽ gửi lại ACK nếu yêu cầu hợp lệ, ngược lại, gửi

CTCI-RN. Message chứa dữ liệu client yêu cầu sẽ được gửi sau khi gửi ACK.

Quy trình gửi yêu cầu của client và trả lời của server như sau:

12

Page 13: Dac Ta KT He Thong GD Cua HOSE

retran request messageRETRAN_REQ MktID

ACK/CTCI-RN

RETRAN_REQ

retran broadcast messageRETRAN_REPLY MktID

Exchange Broker

When a broker wants to request broadcast message retransmission.

When an exchange wants to send broadcast retransmission data.

Hình 1 : Quy trình yêu cầu gửi lại dữ liệu

• Lệnh ECHO: bên nào cũng có thể gửi ECHO message để kiểm tra tính sẵn sàng

của bên nhận. Khi đó, bên nhận phải gửi ECHO REPLY để xác nhận tính sẵn

sàng.

b. Ngắt kết nối:

Giao thức truyền:

Bất kỳ bên nào cũng đều có quyền gửi FN để báo hiệu ý muốn ngắt kết nối.

* Đối với bên gửi yêu cầu ngắt kết nối (gửi FN):

- Khi bên gửi nhận được ACKFIN trả lời, nó kiểm tra điều kiện theirAckSeq <

ourNextSeq <= (theirAckSeq+window_size). Nếu không thoả sẽ gửi NACK và khi

đó quá trình ngắt kết nối không được hoàn tất. Và quá trình khôi phục dữ liệu sẽ phải

thực hiện trong lần thiết lập kết nối sau đó.

- Bên nhận FN có thể gửi DT nếu vẫn muốn tiếp tục. Bên gửi FN sau khi nhận DT,

nếu muốn ngắt kết nối, phải gửi FN lại. Cũng có thể cả hai bên đều gửi FN cùng lúc

để báo hiệu việc muốn ngắt kết nối.

Vì ACKFIN cũng bao gồm cả DATA ACK, nên input và output window phải được

cập nhật. Sau đó, nó cũng gửi ngược lại ACKFIN để kết thúc quá trình ngắt kết nối.

* Đối với bên nhận được yêu cầu ngắt kết nối (nhận FN):

- Khi nhận được FN, nó sẽ kiểm tra điều kiện theirAckSeq < ourNextSeq <=

(theirAckSeq+window_size). Nếu không thoả sẽ gửi NACK về. Khi đó quá trình ngắt

kết nối xem như chưa hoàn tất.

Vì FN cũng bao gồm cả DATA ACK, nên bên nhận FN sẽ cập nhật giá trị output

window. Sau đó, khi gửi ACKFIN, nó sẽ cập nhât input window và chờ đến khi nhận

được ACKFIN báo hiệu quá trình ngắt kết nối đã hoàn tất.

13

Page 14: Dac Ta KT He Thong GD Cua HOSE

Lược đồ mô tả các trạng thái của giao thức AutoT:

rcv: HELLOsnd: NACK

snd: LEFTOVERrcv: ACK

snd: HELLO_REPLY snd: LEFTOVER_LAST

snd: LEFTOVER

rcv: ACKsnd: HELLO_REPLY

rcv: LEFTOVERsnd: ACK

rcv: LEFTOVERrcv: LEFTOVER_LAST

snd: ACKrcv: CONFIRM

rcv: CONFIRM

rcv: FINISH

snd: FINISH

snd: ACKFIN

rcv: ACKFIN

rcv/snd: DATA,ACK, NACK

snd: NACK

rcv: NACK

START STOP

STOP

STOP

STOP

STOP

Protocol State Diagram

rcv: FINISH

rcv: DATA, ACK

1 2 3

456

7 8

91011*

14

15

snd: DATA, ACK

snd: LEFTOVER_LAST

rcv: LEFTOVER_LAST

Hình 2 : Lược đồ các trạng thái của giao thức Auto-t

rcv/snd: DATA, ACK, NACK

datatransfer

servercommand

clientcommand

snd: ACK, NACK, ECHO_REPLY

snd: COMAND ECHO

rcv: COMMAND, ECHO

rcv: ACK, NACK, ECHO_REPLY

rcv: FINISH

snd: FINISH

rcv: CONFIRM

State Diagram during Data Transfer State

11

12

13

Hình 3 : Lượt đồ trong trạng thái truyền dữ liệu

Cho dù đang ở bất kỳ trạng thái nào, nếu server nhận được yêu cầu thiết lập kết nối mới

của client, nó sẽ huỷ kết nối hiện tại và quay về trạng thái đầu tiên. Giai đoạn kết nối sẽ

được thực hiện ở mode C.

c. Yêu cầu về khả năng xử lý của ứng dụng:

• Ứng dụng cần phải ngừng trong các trường hợp sau:

14

Page 15: Dac Ta KT He Thong GD Cua HOSE

♦ Nó nhận được một gói tin không hợp lệ, ví dụ : sai định dạng. Nhưng

cũng có thể cho ứng dụng bỏ qua gói tin đó để nhận gói tin tiếp theo.

♦ Sau một khoảng thời gian xác định, nó không nhận được bất kỳ tín hiệu

nào từ phía đối ứng. Khoảng thời gian này là tuỳ ý, nhưng không được

nhỏ hơn một vòng truyền dữ liệu của gói tin. HOSE khuyến cáo thời

gian tối thiểu là 15 giây.

♦ Khi giao thức truyền nhận bị đứt vì một lý do nào đó, ví dụ : bị mất

trạng thái.

♦ Khi gói tin gửi đến có số sequence không liền kề với gói tin trước.

• Kích thước của input window và output window phải giống nhau. Kích

thước này ảnh hưởng nhiều đến khả năng xử lý, độ trễ và thời gian khôi

phục dữ liệu của ứng dụng. HOSE khuyến cáo window side 17 là 7.

• Có thể chọn cho mỗi gói DATA chứa một hay nhiều message, nhưng phải

có sự thống nhất giữa HoSE và CTCK.

• Để việc truyền dữ liệu trên mạng được đảm bảo an toàn, không bị mất mát

dữ liệu, gói AutoT nên có kích thước lớn nhất là 536 bytes (đã bao gồm

TCP packet header và AutoT packet header).

Bảng mô tả mã code

Mã lỗi Mô tả lỗi

2002 “sequence/ack-sequence không chính

xác"

2003 "Yêu cầu thực hiện không thành công"

2004 “Thị trường đã đóng cửa”

2005 “Không đủ quyền”

2006 “Gói dữ liệu không chính xác”

2007 “Không phù hợp mode kết nối”

Mã thị trường Tên thị trường

'A' "HOSE"

15

Page 16: Dac Ta KT He Thong GD Cua HOSE

16

Mode kết nối Mô tả

'A' "new connection"

'B' "blindly continued connection"

'C' "continued connection"

Bảng 4 : Bảng mô tả mã code

Phụ lục Các biểu đồ

HELLO

LEFTOVERACK

LEFTOVER_LASTACK

Transport Connection

HELLO_REPLY

LEFTOVERACK

LEFTOVER_LASTACK

CONFIRM

DATA/ACK/NACK

Server(Exchange)

Client(Broker)

...

...

Connection Setup

Hình 4 : Quá trình thiết lập kết nối

DATA

DATA( Piggybacked Ack)

(Explicit) ACK

NACK

FINISH

Server(Exchange)

Client(Broker)

Data Transfer

or

or

or

If Input Windowis full

If an exchangehas any data tosend

If a received data is invalid

If an exchangewants to terminatethe session

Hình 5 : Quá trình truyền dữ liệu

Page 17: Dac Ta KT He Thong GD Cua HOSE

FINISH

ACKFIN

NACK

Transport Disconnect

ACKFIN

Server orClient

Clientor Server

Connection Termination

or

Hình 6 : Quá trình kết thúc kết nối

17

Page 18: Dac Ta KT He Thong GD Cua HOSE

III/ Giao thức Broadcast Giới thiệu: giao thức này dùng để truyền các thông tin chung về thị trường đến tất

cả các thành viên tham gia giao dịch.

1. Phương thức truyền thông điệp:

- Các message broadcast được truyền dưới hình thức các gói broadcast. Một gói

broadcast có thể chứa một hay nhiều message broadcast và gói này được truyền

bằng giao thức UDP.

a. Khái niệm Sequence Numbers

- Một gói broadcast được xác định bằng một số sequence kèm theo. HOSE

gửi các gói broadcast này kèm theo chuỗi các số sequence tương ứng, bắt đầu

từ 1. Bên nhận sẽ dựa vào số sequence này để phát hiện message bị trùng lặp

hay bị mất và dựa vào đó để gửi yêu cầu truyền lại broadcast đến HOSE.

- Trường hợp HOSE phải thiết lập lại số sequence (trở lại bằng 1), bên nhận

cũng phải có chức năng hỗ trợ để thiết lập lại số sequence tương ứng. Trong

trường hợp không thể phục hồi được các gói dữ liệu bị mất, chương trình nhận

phải có khả năng bỏ qua các gói mất này, để tiếp tục nhận các gói tiếp theo của

phiên giao dịch hiện tại.

b. Khái niệm Timestamp

- Khi không có thông điệp nào được gửi, HOSE sẽ gửi timestamp (TS)

message theo một thời gian định kỳ nhất định. Hiện tại thời gian là sau mỗi 30

giây không có message được gửi.

c. Định dạng của gói dữ liệu được truyền theo dạng broadcast

- Một gói dữ liệu broadcast có định dạng chung như sau:

Tên field Kích cỡ

(bytes)

Định dạng Ghi chú

SeqNum 3 Mod96 Số sequence của gói dữ liệu

MarketID 1 Alpha String ‘A’ đối với HOSE

MsgCount 1 Mod96 Số message trong content

PackedContent n Xem mục d

Bảng 5 : Định dạng của message broadcast

d. Định dạng của content

- Trong content của gói broadcast có thể chứa nhiều message, mỗi message

cách nhau bởi ký tự US (ASCII 31 or 0x1F)

18

Page 19: Dac Ta KT He Thong GD Cua HOSE

Tên field Kích

cỡ

(bytes)

Định dạng Ghi chú

BCMsg1 n1 Broadcast Message

UnitSeparator 1 Control ASCII US character, ASCII 31 (0x1F)

BCMsg2 n2 Broadcast Message

UnitSeparator 1 Control ASCII US character, ASCII 31 (0x1F)

BCMsg2 n2 Broadcast Message

UnitSeparator 1 Control ASCII US character, ASCII 31 (0x1F)

BCMsg3 n3 Broadcast Message

… … … …

UnitSeparator 1 Control ASCII US character, ASCII 31 (0x1F)

BCMsgn nn Broadcast Message

Bảng 6 : Định dạng nội dung của message broadcast

2. Truyền lại các thông điệp bên đường UDP :

Khi sử dụng UDP gói dữ liệu có thể bị trùng lắp hoặc bị mất. Nếu số sequence

nhận được nhỏ hơn số sequence mà chương trình nhận mong muốn thì có nghĩa là nó bị

trùng lắp và chương trình phải bỏ những packets này. Nếu số sequence bị cách biệt, có

thể 1 số packet bị mất khi đó chương trình nên thiết lập quá trình retransmission.

a. Truyền tự động:

Chương trình có thể yêu cầu quá trình truyền lại thông qua giao thức Auto-t với

message CTCI-RQ.

Nếu yêu cầu không hợp lệ, HOSE sẽ gửi lại message CTCI-RN

Một số tiêu chuẩn của quá trình truyền lại :

- Số sequence tối đa của mỗi yêu cầu là 600 sequences.

- Số sequence bắt đầu của yêu cầu retransmission hiện tại phải lớn hơn số

sequence kết thúc của quá trình retransmission thành công lần trước.

Nếu yêu cầu hợp lệ, HOSE sẽ gửi lại Broadcast message chứa trong những

message CTCI-RP. Ký tự UnitSeparator (US) trong Broadcast packet sẽ thay

thành ký tự BELL. Nếu các message bị mất là các message Timestamp(CTCI-TS),

thì hệ thống sẽ không gửi lại. Message Timestamp trong trường hợp này được sử

dụng để thông báo kết thúc quá trình retransmission. Lưu ý : trường Timestamp

trong message TS có giá trị là mod96( số sequence kết thúc của quá trình

Retransmission) chứ không phải là Mod96(HHMMSS). Những message màu xám

trong hình 7 là tùy chọn.

19

Page 20: Dac Ta KT He Thong GD Cua HOSE

20

Hình 7 : Lượt đồ quá trình gửi lại thành công

Hình 8: Lượt đồ quá trinh gửi lại bị từ chối

b. Truyền thủ công :

Công ty Chứng khoán thành viên cũng có thể yêu cầu gửi lại các gói UDP đã bị

mất bằng cách gọi điện thoại cho HOSE và nói rõ packet sequence cần truyền lại.

: :

Client Server TP Broker

Broadcast packet lost detected

CTCI-RQ

CTCI-RP Valid request

CTCI-RP

CTCI-RP(TS)

CTCI-RQ

Broadcast packet lost detected

CTCI-RN

Client Broker

Server TP

Invalid request

Page 21: Dac Ta KT He Thong GD Cua HOSE

IV/ Mô tả các message:

Message CTCI:

Message 1C: Thông tin hủy lệnh

Field Size Type

1. Message Type 2 "1C"

2. Firm 3 Numeric String

3. Order Number 8 Numeric String

4. Order Entry Date 4 Numeric String

Total 17

Message này dùng để hủy lệnh trong Hệ thống giao dịch HOSE, được xác định bởi số

hiệu lệnh (Order number) và ngày nhập lệnh (Order Entry Date). Message xác nhận lệnh

hủy (2C) sẽ được trả về cho công ty bởi Hệ thống giao dịch HOSE nếu lệnh đó được hủy.

Ngược lại Message từ chối (2G) sẽ được gửi lại cho công ty đó với mã lý do giải thích tại

sao việc hủy lệnh đó không được chấp nhận.

21

Page 22: Dac Ta KT He Thong GD Cua HOSE

Message 1D: Thông tin thay đổi lệnh

Field Size Type

1. Message Type 2 "1D"

2. Firm 3 Numeric String

3. Order Number 8 Numeric String

4. Order Entry Date 4 Numeric String

5. Client ID 10 Alphanumeric String

6. Filler 17

Total 44

Message này dùng để thay đổi những giá trị có thể chỉnh sửa của lệnh đã được nhập vào

trước đó trong hệ thống giao dịch trên Bảng giao dịch khớp lệnh. Nếu 1 trường được điền

trong message này nó sẽ thay thế một giá trị đã tồn tại của trường đó trong lệnh đã đặt.

Message xác nhận thay đổi lệnh (2D) sẽ được gửi nếu nếu lệnh thay đổi này hợp lệ.

Ngược lại Message từ chối (2G) sẽ được gửi lại cho công ty đó với mã lý do giải thích tại

sao lệnh đó không được chấp nhận.

22

Page 23: Dac Ta KT He Thong GD Cua HOSE

Message 1E: Thông tin quảng cáo GDTT

Field Size Type

1. Message Type 2 "1E"

2. Firm 3 Numeric String

3. Trader ID 4 Alphanumeric String

4. Security Symbol 8 Alphanumeric String

5. Side 1 Alpha String

6. Volume 8 Numeric String

7. Price 12 Numeric String

8. Board 1 Alpha String

9. Time 6 Numeric String

10. Add/Cancel Flag 1 Alpha String

11. Contact 20 Alphanumeric String

Total 66

Message này dùng để thêm hoặc hủy một quảng cáo của mã chứng khoán. Quảng cáo

giao dịch thoả thuận không phải là lệnh đặt mà là thông tin được đưa lên biểu hiện ý

muốn giao dịch một loại chứng khoán nào đó với giá và khối lượng thoả thuận. Broker

phản hồi quảng cáo GDTT này bằng cách liên lạc với broker đăng quảng cáo và thực

hiện thỏa thuận giao dịch. Nếu broker đó chấp nhận thỏa thuận thì lệnh giao dịch thỏa

thuận khác thành viên (1G) sẽ được nhập vào bởi broker bán. Trường thời gian (Time)

được định bởi Hệ thống của broker và gửi cho Hệ thống giao dịch của HOSE khi thêm

hoặc hủy một quảng cáo GDTT

23

Page 24: Dac Ta KT He Thong GD Cua HOSE

Message 1F: Thông tin lệnh GDTT của khách hàng cùng công ty

Field Size Type

1. Message Type 2 "1F"

2. Firm 3 Numeric String

3. Trader ID 4 Alphanumeric String

4. Client ID (Buyer) 10 Alphanumeric string

5. Client ID (Seller) 10 Alphanumeric String

6. Security Symbol 8 Alphanumeric string

7. Price 12 Numeric String

8. Board 1 Alpha String

9. Deal ID 5 Numeric String

10. Filler 8

11. Broker Portfolio Volume

(Buyer)

8 Numeric String

12. Broker Client Volume (Buyer) 8 Numeric String

13. Mutual Fund Volume (Buyer) 8 Numeric String

14. Broker Foreign Volume

(Buyer)

8 Numeric String

15. Filler 32

16. Broker Portfolio Volume

(Seller)

8 Numeric String

17. Broker Client Volume (Seller) 8 Numeric String

18. Mutual Fund Volume (Seller) 8 Numeric String

19. Broker Foreign Volume

(Seller)

8 Numeric String

20. Filler 32

Total 191

Message này được dùng khi công ty chứng khoán thực hiện một giao dịch thỏa thuận

cùng thành viên và được chấp nhận bởi HOSE. Lệnh GDTT của khách hàng cùng công

ty (1F) chỉ có khi công ty chứng khoán vừa là người mua và người bán

24

Page 25: Dac Ta KT He Thong GD Cua HOSE

Message 1G: Thông tin lệnh GDTT của khách hàng khác công ty

Field Size Type

1. Message Type 2 "1G"

2. Firm (Seller) 3 Numeric String

3. Trader ID (Seller) 4 Alphanumeric String

4. Client ID (Seller) 10 Alphanumeric String

5. Contra Firm (Buyer) 3 Numeric String

6. Trader ID (Buyer) 4 Alphanumeric String

7. Security Symbol 8 Alphanumeric String

8 Price 12 Numeric String

9 Board 1 Alpha string

10. Deal ID 5 Numeric String

11. Filler 4

12. Broker Portfolio Volume

(Seller)

8 Numeric String

13. Broker Client Volume

(Seller)

8 Numeric String

14. Mutual Fund Volume (Seller) 8 Numeric String

15. Broker Foreign Volume

(Seller)

8 Numeric String

16. Filler 32

Total 120

Message này được sử dụng khi 2 công ty chứng khoán làm giao dịch thỏa thuận và được

chấp nhận bởi HOSE. Sau khi thỏa thuận, người bán sẽ gửi lệnh GDTT của khách hàng

khác công ty tới HOSE. Khi thỏa thuận đã được thương lượng thì người bán phải có đuợc

trader ID của người mua và nhập thông tin đó vào. Hệ thống HOSE sẽ ấn định confirm

number để giao dịch và gửi Message xác nhận giao dịch thỏa thuận (2F) cho người mua.

Người mua phải gửi lại message trả lời giao dịch thỏa thuận (3B) cho Hệ thống giao dịch

của HOSE. Sau khi người mua chấp nhận và HOSE chấp nhận thì một Message xác nhận

khớp thỏa thuận (2L) sẽ được gửi về 2 phía. Nếu người mua hoặc HOSE không chấp

nhận thỏa thuận thì một message trả lời giao dịch thỏa thuận (3B) sẽ được gửi cho 2 phía.

25

Page 26: Dac Ta KT He Thong GD Cua HOSE

Message 1I: Thông tin lệnh đặt

Field Size Type

1. Message Type 2 "1I"

2. Firm 3 Numeric String

3. Trader ID 4 Alphanumeric String

4. Order number 8 Numeric String

5. Client ID 10 Alphanumeric String

6. Security Symbol 8 Alphanumeric String

7. Side 1 Alpha string

8. Volume 8 Numeric String

9. Published volume 8 Numeric String

10. Price 6 Alphanumeric String

11. Board 1 Alpha string

12. Filler 5

13. Port/Client Flag 1 Alpha string

14. Filler 5

Total 70

Message này được gửi đến HOSE bởi công ty chứng khoán để nhập một lệnh.

Lưu ý : Published volume phải bằng với Volume

26

Page 27: Dac Ta KT He Thong GD Cua HOSE

Message 2B: Xác nhận lệnh đặt

Field Size Type

1. Message Type 2 "2B"

2. Firm 3 Numeric String

3. Order Number 8 Numeric String

4. Order Entry Date 4 Numeric String

Total 17

Message này được gửi bởi HOSE đến broker để xác nhận lệnh đó đã được nhận. Order

number được gửi ngược lại để xác định lệnh đã được nhận.

27

Page 28: Dac Ta KT He Thong GD Cua HOSE

Message 2C: Xác nhận hủy lệnh

Field Size Type

1. Message Type 2 "2C"

2. Firm 3 Numeric String

3. Cancel Shares 8 Numeric String

4. Order Number 8 Numeric String

5. Order Entry Date 4 Numeric String

6. Order Cancel Status 1 Alpha String

Total 26

Lệnh hủy được xác định bởi Order number. Message này được gửi khi :

- CTCK yêu cầu hủy lệnh và được HOSE chấp thuận.

- Lệnh MP không được khớp.

- Lệnh MP của nhà đầu tư nước ngoài (Bên mua), không được khớp hết.

- Lệnh ATO, ATC không được khớp.

28

Page 29: Dac Ta KT He Thong GD Cua HOSE

Message 2D: Xác nhận thay đổi lệnh

Field Size Type

1. Message Type 2 "2D"

2. Firm 3 Numeric String

3. Order Number 8 Numeric String

4. Order Entry Date 4 Numeric String

5. Client ID 10 Alphanumeric String

6. Port/Client Flag 1 Alpha string

7. Published Volume 8 Numeric String

8. Price 6 Numeric String

9. Filler 8

Total 50

Đối với mỗi lệnh thay đổi được chấp nhận bởi HOSE, message xác nhận thay đổi lệnh sẽ

đuợc gửi đến công ty yêu cầu thay đổi lệnh. Order Number và Order Entry Date sẽ xác

định lệnh được thay đổi. Những trường khác trong message này sẽ chứa giá trị hiện tại

cho lệnh đó bao gồm cả những thông tin lệnh mới được cập nhật. Message này cũng

được dùng để thông báo đến broker khi một lệnh thị trường chỉ mới khớp một phần, phần

chưa khớp sẽ đổi lại thành lệnh giới hạn. Khi đó, Published Volume để trống, price

chuyển thành giá giới hạn.

29

Page 30: Dac Ta KT He Thong GD Cua HOSE

Message 2E: Xác nhận khớp lệnh của khách hàng khác công ty

Field Size Type

1. Message Type 2 "2E"

2. Firm 3 Numeric String

3. Side 1 Alpha string

4. Order Number 8 Numeric String

5. Order Entry Date 4 Numeric String

6. Filler 2

7. Volume 8 Numeric String

8. Price 6 Numeric String

9. Confirm Number 6 Numeric String

Total 40

Lệnh khớp của khách hàng khác công ty sẽ được gửi cho mỗi bên khi lệnh từ 2 broker

khác nhau khớp.

30

Page 31: Dac Ta KT He Thong GD Cua HOSE

Message 2F: Thông tin lệnh GDTT cho bên mua

Field Size Type

1. Message Type 2 "2F"

2. Firm (Buy) 3 Numeric String

3. Trader ID (Buy) 4 Alphanumeric String

4. Side (B) 1 Alpha string

5. Contra Firm (Sell) 3 Numeric String

6. Trader ID (contra side-Sell) 4 Alphanumeric String

7. Security Symbol 8 Alphanumeric String

8. Volume 8 Numeric String

9. Price 12 Numeric String

10. Board 1 Alpha string

11. Confirm Number 6 Numeric String

Total 52

Message này sẽ được gửi cho broker đối ứng khi mà một giao dịch thỏa thuận 2 bên (1G-

Two Firm Put-through Deal Message) được nhận bởi HOSE. Message này được gửi cho

bên mua. Chi tiết của giao dịch có thể đã được kiểm tra. Người mua nên gửi Put-Through

Deal Reply để chấp nhận hoặc không chấp nhận giao dịch này.

31

Page 32: Dac Ta KT He Thong GD Cua HOSE

Message 2G: Thông tin từ chối từ HOSE

Field Size Type

1. Message Type 2 "2G"

2. Firm 3 Numeric String

3. Reject Reason Code 2 Numeric String More codes

4. Original Message Text 233 Depend size of

message type

Total 240

Lệnh từ chối sẽ được trả về cho công ty khi HOSE nhận một message không hợp lệ.

Trường Reject Reason code giải thích vì sao HOSE không thể thực hiện yêu cầu. Trong

trường hợp message nguyên thủy vượt quá 233 byte, chỉ 233 byte đầu được đính kèm.

32

Page 33: Dac Ta KT He Thong GD Cua HOSE

Message 2I: Xác nhận khớp lệnh của khách hàng cùng công ty

Field Size Type

1. Message Type 2 "2I"

2. Firm 3 Numeric String

3. Order Number (Buy) 8 Numeric String

4. Order Entry Date (Buy) 4 Numeric String

5. Order Number (Sell) 8 Numeric String

6. Order Entry Date (Sell) 4 Numeric String

7. Volume 8 Numeric String

8. Price 6 Numeric String

9. Confirm Number 6 Numeric String

Total 49

Lệnh khớp của khách hàng cùng công ty sẽ được gửi cho công ty chứng khoán khi 2 lệnh

khớp được tạo bởi cùng 1 công ty chứng khoán

33

Page 34: Dac Ta KT He Thong GD Cua HOSE

Message 2L: Xác nhận khớp GDTT

Field Size Type

1. Message Type 2 "2L"

2. Firm 3 Numeric String

3. Side 1 Alpha string

4. Deal ID 5 Numeric String

5. Contra Firm 3 Numeric String

6. Volume 8 Numeric String

7. Price 12 Numeric String

8. Confirm Number 6 Numeric String

Total 40

Message này được gửi để xác nhận cùng công ty hoặc khác công ty giao dịch thỏa thuận

Nếu là bên mua Side=’B’, nếu là bên bán Side=’S’. Nếu mà giao dịch thỏa thuận cùng

công ty Side=’X’

34

Page 35: Dac Ta KT He Thong GD Cua HOSE

Message 3A - Admin

Field Size Type

1. Message Type 2 "3A"

2. Firm 3 Numeric String

3. Trader ID (sender) 4 AlphaNumeric String

4. Trader ID (receiver) 4 AlphaNumeric String

5. Contra Firm 3 Numeric String

6. Admin Message Text 66 AlphaNumeric String

Total 82

Admin Message là một message định dạng tự do, nó có thể được gửi từ công ty chứng

khoán này đến 1 công ty chứng khoán khác, từ công ty chứng khoán đến HOSE hoặc từ

HOSE đến công ty chứng khoán. Trường Contra Firm sẽ là rỗng nếu message được

truyền từ HOSE. Trường Trader ID (sender) được yêu cầu và phải chứa ID của người gửi

cho admin. Trường Trade ID (receiver) là tùy chọn và được sử dụng để nói với admin

người nhận sẽ là ai tại công ty chứng khoán khác.

35

Page 36: Dac Ta KT He Thong GD Cua HOSE

Message 3B: Thông tin trả lời lệnh GDTT của bên mua hoặc HOSE

Field Size Type

1. Message Type 2 "3B"

2. Firm 3 Numeric String

3. Confirm number 6 Numeric String

4. Deal ID 5 Numeric String

5. Client ID (Buyer) 10 Alphanumeric

String

6. Reply Code 1 Alpha string

7. Filler 4

8. Broker Portfolio Volume 8 Numeric String

9. Broker Client Volume 8 Numeric String

10. Broker Mutual Fund Volume 8 Numeric String

11. Broker Foreign Volume 8 Numeric String

12. Filler 32

Total 95

Message này được gửi bởi người mua để cho biết là chấp nhận hay không chấp nhận của

GDTT khác công ty sau khi nhận được Put-through Acknowledgment Message từ

HOSE. Nếu người mua đồng ý giao dịch thì Client ID, Port/Client Flag phải được nhập

vào. Sau khi giao dịch đó được chấp nhận hay không chấp nhận bởi người mua, HOSE sẽ

gửi message này cho người bán. Nếu giao dịch không chấp nhận bởi HOSE, HOSE sẽ

gửi message này cho cả người mua và bán.

Reply Code

A = Chấp nhận

C = Đối tác không chấp nhận

S = HOSE không chấp nhận

36

Page 37: Dac Ta KT He Thong GD Cua HOSE

Message 3C: Thông tin yêu cầu hủy lệnh

Field Size Type

1. Message Type 2 "3C"

2. Firm 3 Numeric String

3. Contra Firm 3 Numeric String

4. Trader ID 4 Alphanumeric String

5. Confirm Number 6 Numeric String

6. Security Symbol 8 Alphanumeric String

7. Side 1 Alpha string

Total 27

Message này được gửi bởi người mua để yêu cầu hủy một giao dịch thỏa thuận. Nó cũng

được HOSE sử dụng để chuyển yêu cầu này cho người bán. Người bán sẽ phản hồi lại

message 3D. Khi message này xuất phát từ người bán gửi đến HOSE , trường Contra

Firm ý chỉ người mua và trường Trader ID là Trader ID của người bán khởi tạo message

này. Trường hợp message này gửi từ HOSE đến người mua, trường Firm là người mua,

Contra Firm là người bán và Trader ID là Trader ID của người mua.

HOSE sẽ không kiểm tra trường Side trong message 3C nếu trường khác đã được HOSE

xác nhận chính xác. Trường Side trong message thuần của người bán được chuyển qua

cho người mua.

37

Page 38: Dac Ta KT He Thong GD Cua HOSE

Message 3D: Thông tin trả lời yêu cầu hủy lệnh của bên mua hoặc HOSE

Field Size Type

1. Message Type 2 "3D"

2. Firm 3 Numeric String

3. Confirm Number 6 Numeric String

4. Reply Code 1 Alpha string

Total 12

Message này sẽ được gửi bất cứ khi nào thỏa thuận bị hủy, đối với những thỏa thuận

được thực hiện bởi 2 broker khác nhau, người mua sẽ gửi message này đến HOSE để trả

lời message yêu cầu hủy (3C) được gửi bởi người bán. HOSE sẽ gửi message này đến

người bán để báo cho người bán biết yêu cầu của người mua và phản hồi của HOSE với

việc hủy giao dịch. Nếu giao dịch được thực hiện bởi 1 broker, HOSE sẽ gửi message

này đến broker đó để trả lời yêu cầu hủy (3C)

38

Page 39: Dac Ta KT He Thong GD Cua HOSE

Message RN - Retransmission Nack

Field Size Type

1. Message Type 2 "RN"

2. Firm 2 Mod-96

3. Error code 2 Alpha numeric

4. Original Message Text 478 Alpha string

Total 484

Message này sẽ được gửi ngược lại công ty chứng khoán bao gồm mã lỗi và message gốc

khi yêu cầu truyền lại không hợp lệ. Lý do từ chối được miêu tả trong error code.

39

Page 40: Dac Ta KT He Thong GD Cua HOSE

Message RP - Retransmission Reply

Field Size Type

1. Message Type 2 "RP"

2. Firm 2 Mod-96

3. Market ID. 1 Alpha String

4. Previous Sequence Number 3 Mod-96

5. Sequence Number 3 Mod-96

6. Message Count 1 Mod-96

7. Original Broadcast Message 472 Alpha string

Total 484

Message này dùng để truyền lại Broadcast message đến công ty dựa trên yêu cầu (RQ).

Market ID là mã thị trường. Trường Sequence Number chứa số sequence của khối

message broadcast thuần. Trường Previous Sequence Number cho biết số Sequence của

khối Broadcast đã được gửi trước khối sẽ được gửi lại trong message này. Trường

Message Count chỉ ra cho biết số message trong khối được gửi lại. Đối với message đầu

tiên của quá trình gửi lại này, trường Previous Sequence Number sẽ là 0. Để duy trì sự

toàn vẹn của dữ liệu truyền lại, ký tự Unit-Separator (US) trong message broadcast thuần

sẽ được thay thế bởi ký tự BELL.

40

Page 41: Dac Ta KT He Thong GD Cua HOSE

Message RQ - Retransmission Request

Field Size Type

1. Message Type 2 "RQ"

2. Firm 2 Mod-96

3. Market ID. 1 Alpha String

4. Retransmission Start Sequence 3 Mod-96

5. Retransmission End Sequence 3 Mod-96

Total 11

Message này cho phép một công ty yêu cầu quá trình truyền lại thông qua đường truyền

Auto-t dựa trên trường Retransmission Start Sequence và Retransmission End Sequence.

41

Page 42: Dac Ta KT He Thong GD Cua HOSE

Message PRS:

Message AA – Thông báo về giao dịch thỏa thuận

Field Size Type

1. Message Type 2 "AA"

2. Security Number 2 Mod-96

3. Volume 4 Mod-96

4. Price 13 AlphaNumeric String

5. Firm 2 MOd-96

6. Trader 3 Mod-96

7. Side 1 Alpha String

8. Board 1 Alpha String

9. Time 3 Mod-96

10. Add/Cancel Flag 1 Alpha String

11. Contact 20 AlphaNumeric String

Total 52

Các thông báo quảng cáo này được broadcast đến tất cả các broker khi có một quảng cáo

giao dịch thỏa thuận được thêm vào hay bị hủy bỏ khỏi Hệ thống giao dịch của HOSE.

42

Page 43: Dac Ta KT He Thong GD Cua HOSE

Message BR – Thông tin xác nhận kết quả giao dịch của một công ty chứng khoán

Field Size Type

1. Message Type 2 "BR"

2. Firm 2 Mod-96

3. Market ID 1 Alpha-numeric string

4. Volume Sold 10 Alpha-numeric string

5. Value Sold 14 Alpha-numeric string

6. Volume Bought 10 Alpha-numeric string

7. Value Bought 14 Alpha-numeric string

Total 53

Message này được gửi trong quá trình chạy dữ liệu cuối ngày để giúp broker xác nhận

chính xác dữ liệu giao dịch của họ. Nó cho từng broker biết số cổ phiếu và số tiền mà họ

đã mua hay bán được đến thời điểm đó.

Thứ tự của các broadcast message trong quá trình chạy dữ liệu cuối ngày như sau:

message SC (mã G)

các message SU,...,SU (mỗi SU ứng với một mã chứng khoán)

message SC (mã J) (khỏang 3 phút sau)

message SC (mã T)

các message BR,...,BR (mỗi BR ứng với một công ty chứng khoán)

message SC (mã U)

Message "End-of-Day Broadcast Transmissions Complete"

Message "Begin End-of-Day Procedure Now"

43

Page 44: Dac Ta KT He Thong GD Cua HOSE

Message BS – Thông báo thay đổi trạng thái của broker

Field Size Type

1. Message Type 2 "BS"

2. Firm 2 Mod-96

3. AutoMatch Halt Flag 1 Alpha string

4. Put through Halt Flag 1 Alpha string

Total 6

Message này được gửi khi một công ty chứng khoán bị tạm dừng hay hủy tạm

dừng giao dịch

44

Page 45: Dac Ta KT He Thong GD Cua HOSE

Message CO - Hủy giao dịch lô lẻ

Field Size Type

1. Message Type 2 "CO"

2. Reference Number 3 Mod-96

Total 5

Message được gửi khi có yêu hủy bỏ lệnh đặt giao dịch lô lẻ. Trường

“reference number” giúp hệ thống xác định đó là lệnh đặt nào.

45

Page 46: Dac Ta KT He Thong GD Cua HOSE

Message DC – Thông báo hủy một giao dịch đã khớp

Field Size Type

1. Message Type 2 "DC"

2. Confirm Number 3 Mod-96

3. Security Number 2 Mod-96

4. Volume 4 Mod-96

5. Price 4 Mod-96

6. Board 1 Alpha string

Total 16

Message được gửi để thông báo với các broker về việc hủy một giao dịch đã

khớp. Chỉ các giao dịch thỏa thuận mới được hủy.

46

Page 47: Dac Ta KT He Thong GD Cua HOSE

Message GA – Thông báo từ HOSE

Field Size Type

1. Message Type 2 "GA"

2. Admin message length 1 Mod-96

3. Admin message text 70 AlphaNumeric String

Total 73

Cho phép HOSE gửi các thông báo đến tất cả các broker.

47

Page 48: Dac Ta KT He Thong GD Cua HOSE

Message IU - cập nhật chỉ số

Field Size Type

1. Message Type 2 "IU"

2. Index – HOSE 4 Mod-96

3. Total Trades 4 Mod-96

4. Total Shares Traded 5 Mod-96

5. Total Values Traded 5 Mod-96

6. Up Volume 5 Mod-96

7. Down Volume 5 Mod-96

8. No Change Volume 5 Mod-96

9. Advances (no. of stocks) 2 Mod-96

10. Declines (no. of stocks) 2 Mod-96

11. No Change (no. of stocks) 2 Mod-96

12. Filler 4

13. Market ID 1 Alpha String

14. Filler 7

15. Index – Time 3 Mod-96

Total 56

Chỉ số index của HOSE (VN Index) sẽ được broadcast đến tất cả các broker

sau từng khoảng thời gian xác định. Hiện tại là sau mỗi phút trong thời gian giao

dịch và vài phút sau khi bước vào giai đoạn kết thúc giao dịch của thị trường.

Message này không được gửi trong giai đoạn tiền mở cửa.

48

Page 49: Dac Ta KT He Thong GD Cua HOSE

Message LO – thông tin của phiên giao dịch lô lẻ mới nhất

Field Size Type

1. Message Type 2 "LO"

2. Confirm Number 3 Mod-96

3. Security Number 2 Mod-96

4. Odd Lot Volume 2 Mod-96

5. Price 4 Mod-96

6. Reference Number 3 Mod-96

Total 16

Message này cũng giống như Message LS, nhưng nó xử lý với các giao dịch lô

lẻ. Nó được gửi đi khi có một lệnh lô lẻ được khớp.

49

Page 50: Dac Ta KT He Thong GD Cua HOSE

Message LS – thông tin của lần giao dịch mới nhất

Field Size Type

1. Message Type 2 "LS"

2. Confirm Number 3 Mod-96

3. Security Number 2 Mod-96

4. Lot Volume 3 Mod-96

5. Price 4 Mod-96

6. Side 1 Alpha string

Total 15

Message được broadcast khi có một lệnh được khớp trong hệ thống trong thời

gian giao dịch. Các Message loại này chỉ được dùng sau khi giai đoạn mở cửa đã

hoàn tất. Mỗi Message LS tương ứng với một giao dịch khớp lệnh.

Nếu LS được phát sinh là từ lệnh mua, trường “side” sẽ mang giá trị “S”.

Ngược lại, phát sinh từ lệnh bán, trường side mang giá trị “B” (mang giá trị của

bên đối ứng). Nếu trường side là ‘ ‘ thì đó là thông tin lệnh khớp của đợt pre-open.

50

Page 51: Dac Ta KT He Thong GD Cua HOSE

Message NH – Tiêu đề bản tin

Field Size Type

1. Message Type 2 "NH"

2. News number 2 Mod-96

3. Security Symbol 8 AlphaNumeric String

4. News headline length 1 Mod-96

5. Total News Story Pages 2 Mod-96

6. News headline text 70 AlphaNumeric String

Total 85

51

Page 52: Dac Ta KT He Thong GD Cua HOSE

Message NS – Bản tin

Field Size Type

1. Message Type 2 "NS"

2. News Number 2 Mod-96

3. News Page Number 2 Mod-96

4. News Text Length 2 Mod-96

5. News Text 215 AlphaNumeric String

Total 223

Một Message NS sẽ chứa thông tin chi tiết của một bản tin. Nếu bản tin có

nhiều trang, nhiều Message NS sẽ được gửi đi. Message này được gửi cùng lúc

với Message NH.

52

Page 53: Dac Ta KT He Thong GD Cua HOSE

Message OL – lệnh đặt lô lẻ

Field Size Type

1. Message Type 2 "OL"

2. Security Number 2 Mod-96

3. Odd Lot Volume 2 Mod-96

4. Price 4 Mod-96

5. Side 1 Alpha string

6. Reference Number 3 Mod-96

Total 14

Message được gửi khi có một lệnh đặt lô lẻ đến hệ thống. Nó được broadcast

đến tất cả các broker để họ cập nhật sổ lệnh. Lưu ý rằng cách nó xử lý khác với

cách xử lý của một lệnh trong main board

53

Page 54: Dac Ta KT He Thong GD Cua HOSE

Message OS – Thông tin xác định giá mở cửa

Field Size Type

1. Message Type 2 "OS"

2. Security Number 2 Mod-96

3. Price 4 Mod-96

Total 8

Mỗi lần có một giao dịch được thực hiện trong giai đoạn mở cửa thị trường,

một message OS sẽ được gửi đi. Nếu ứng với một mã chứng khoán nào đó, không

có giao dịch nào được thực hiện trong thời gian mở cửa, một OS cũng sẽ được gửi

với giá là 0. Trong trường hợp này, khi có một giao dịch được thực hiện sau đó, hệ

thống sẽ tự động gửi lại Message OS này với trường “price” có giá trị là giá của

giao dịch vừa thực hiện. Giá này được xem như là giá mở cửa của loại chứng

khoán đó.

54

Page 55: Dac Ta KT He Thong GD Cua HOSE

Message PD – Thông báo về khớp lệnh của giao dịch thỏa thuận

Field Size Type

1. Message Type 2 "PD"

2. Confirm Number 3 Mod-96

3. Security Number 2 Mod-96

4. Volume 4 Mod-96

5. Price 4 Mod-96

6. Board 1 Alpha string

Total 16

Message được gửi dạng broadcast khi có một giao dịch thỏa thuận được đồng

ý của 2 bên và của HOSE.

55

Page 56: Dac Ta KT He Thong GD Cua HOSE

Message PO – Thông báo giá mở cửa dự kiến

Field Size Type

1. Message Type 2 "PO"

2. Security Number 2 Mod-96

3. Projected Open Price 4 Mod-96

Total 8

Message được broadcast trong suốt giai đoạn tiền mở cửa để thông báo với

broker về sự thay đổi của giá mở cửa dự kiến. Việc ước lượng dựa vào các lệnh

đặt hiện có trong hệ thống. Chú ý là Message PO chỉ được gửi đối với các mã

chứng khoán nào có thể có giao dịch khớp lệnh lúc mở cửa.

56

Page 57: Dac Ta KT He Thong GD Cua HOSE

Message SC – thông điệp điều khiển hệ thống

Field Size Type

1. Message Type 2 "SC"

2. System Control Code 1 Alpha string

3. Timestamp 3 Mod-96

Total 6

Message được gửi khi hệ thống muốn điều khiển một sự kiện nào đó. Ví dụ

như khi thị trường mở cửa hay ngắt.

57

Page 58: Dac Ta KT He Thong GD Cua HOSE

Message SI

Field Size Type

1. Message Type 2 "SI"

2. Index - Sectoral 1 4 Mod-96

3. Filler 120

4. Index – Time 3 Mod-96

Total 129

58

Page 59: Dac Ta KT He Thong GD Cua HOSE

Message SR – Tổng kết thông tin từng mã chứng khoán

Field Size Type

1. Message Type 2 "SR"

2. Security Number 2 Mod-96

3. Main or Foreign Deal 3 Mod-96

4. Main or Foreign Acc-Volume 5 Mod-96

5. Main or Foreign Acc-Value (in

1,000)

5 Mod-96

6. Deals in Big Lot Board 2 Mod-96

7. Big Lot Acc-Volume 5 Mod-96

8. Big Lot Acc-Value (in 1,000) 4 Mod-96

9. Deals in Odd Lot Board 2 Mod-96

10. Odd Lot Acc-Volume 3 Mod-96

11. Odd Lot Acc-Value 3 Mod-96

Total 36

Message này giúp broker xác nhận một lần nữa dữ liệu giao dịch. Mỗi mã

chứng khoán ứng với một message SR. Nó được gửi trong quá trình chạy dữ liệu

cuối ngày.

59

Page 60: Dac Ta KT He Thong GD Cua HOSE

Message SS – Thông báo thay đổi trạng thái của một mã chứng khoán

Field Size Type

1. Message Type 2 "SS"

2. Security Number 2 Mod-96

3. Filler 1

4. Sector Number 1 Mod-96

5. Filler 1

6. Halt/Resume Flag 1 Alpha string

7. System Control Code 1 Alpha string

8. Filler 1

9. Suspension 1 Alpha string

10. Delist 1 Alpha string

11. Filler 1

12. Ceiling 4 Mod-96

13. Floor Price 4 Mod-96

14. Security Type 1 Alpha string

15. Prior Close Price 4 Mod-96

16. Filler 4 Mod-96

17. Split 1 Alpha string

18. Benefit 1 Alpha string

19. Meeting 1 Alpha string

20. Notice 1 Alpha string

21. Board Lot 2 Mod-96

22. Filler 1

Total 37

Message này sẽ được gửi thông qua broadcast trong thời gian giao dịch để

thông báo với broker khi có một mã chứng khoán thay đổi trạng thái.

60

Page 61: Dac Ta KT He Thong GD Cua HOSE

Message SU – Cập nhật mã chứng khoán

Field Size Type

1. Message Type 2 "SU"

2. Security Number (Old) 2 Mod-96

3. Security Number (New) 2 Mod-96

4. Filler 1

5. Sector Number 1 Mod-96

6. Filler 1

7. Security Symbol 8 Alphanumeric String

8. Security Type 1 Alpha string

9. Ceiling Price 4 Mod-96

10. Floor Price 4 Mod-96

11. Last Sale Price 4 Mod-96

12. Market ID 1 Alpha String

13. Filler 3

14. Security Name 25 Alpha string

15. Filler 1

16. Suspension 1 Alpha string

17. Delist 1 Alpha string

18. Halt/Resume Flag 1 Alpha string

19. Split 1 Alpha string

20. Benefit 1 Alpha string

21. Meeting 1 Alpha string

22. Notice 1 Alpha string

23. Client ID Required 1 Alpha string

24. Par Value 4 Mod-96

25. SDC Flag 1 Alpha String

26. Prior Close Price 4 Mod-96

27. Prior Close Date 8 Numeric String

28. Open Price 4 Mod-96

29. Highest Price 4 Mod-96

30. Lowest Price 4 Mod-96

31. Total Shares Traded 5 Mod-96

32. Total Values Traded 5 Mod-96

33. Board Lot 2 Mod-96

34. Filler 1

Total 110

61

Page 62: Dac Ta KT He Thong GD Cua HOSE

Các message SU đựơc gửi trong quá trình chạy dữ liệu cuối để cung cấp các

thông tin tổng kết cuối cùng của mã chứng khoán tương ứng. Message không bao

giờ được gửi trong lúc giao dịch. Thứ tự gửi như sau

Message SC (mã G)

Các message SU,...,SU (mỗi SU ứng với một mã chứng khoán)

Message SC (mã J)

Đối với các message SU được truyền sau khi thị trường đã đóng cửa, tất cả các

giá trị của các trường là dữ liệu được dùng để phục vụ cho phiên giao dịch hôm

sau. Nếu có một cổ phiếu không có giao dịch trong ngày hôm đó, trường “Last

Sale Price” (giá của lần khớp lệnh gần nhất) sẽ có giá trị bằng với “Prior Close

Price”.

Đối với một chứng khoán đã niêm yết, thì 2 trường “Security Number” và

“Security Number (New)” luôn giống nhau.

Trường hợp niêm yết mới thì 2 trường này sẽ khác nhau. Một ngày trước khi

chứng khoán này chính thức được niêm yết, sau khi đã đóng cửa thị trường,

message SU sẽ được tạo và gửi đi, với trường “Security Number (New)” chứa mã

chứng khoán mới.

62

Page 63: Dac Ta KT He Thong GD Cua HOSE

Message TC – Thay đổi trạng thái của trader

Field Size Type

1. Message Type 2 "TC"

2. Firm 2 Mod-96

3. Trader ID 3 Mod-96

4. Trader Status 1 Alpha string

Total 8

Message được gửi khi một trader bị đình chỉ hay huỷ đình chỉ hoặc khi trader

được cho phép hay huỷ cho phép gửi các lệnh giao dịch thoả thuận với giá nằm

ngoài khoảng trần sàn.

63

Page 64: Dac Ta KT He Thong GD Cua HOSE

Message TP – 3 giá trị tốt nhất

Field Size Type

1. Message Type 2 "TP"

2. Security Number 2 Mod-96

3. Side 1 Alpha string

4. Price 1 (best) 4 Mod-96

5. Lot Volume 1 3 Mod-96

6. Price 2 (2nd best) 4 Mod-96

7. Lot Volume 2 3 Mod-96

8. Price 3 (3rd best) 4 Mod-96

9. Lot Volume 3 3 Mod-96

Total 26

Message được gửi khi có bất kỳ một thay đổi nào về 3 giá mua tốt nhất, 3 giá

bán tốt nhất, hay khối lượng nằm trong 3 giá mua hay bán tốt nhất. Tuy nhiên,

trong từng chu kỳ nhất định, message cũng vẫn được gửi đi mặc dù các mã chứng

khoán đó không có thay đổi gì về 3 giá tốt nhất hay khối lượng. Các lệnh ATO,

ATC được xếp ưu tiên so với lệnh giới hạn, mặc dù giá của nó sẽ được ghi nhận

bằng 0.

HOSE cần phải yêu cầu các thành viên cho hiển thị giá của các lệnh ATO,

ATC trên màn hình như sau:

• Hiển thị “ATO” cho các lệnh trong thời gian mở cửa để diễn đạt ý giao

dịch ở giá mở cửa.

• Hiển thị “ATC” cho các lệnh trong thời gian đóng cửa để diễn đạt ý giao

dịch ở giá đóng cửa.

64

Page 65: Dac Ta KT He Thong GD Cua HOSE

Message TR – room của đầu tư nước ngoài.

Field Size Type

1. Message Type 2 "TR"

2. Security Number 2 Mod-96

3. Total Room 6 Mod-96

4. Current Room 6 Mod-96

Total 16

Message này được broadcast khi

• Đầu ngày giao dịch

• Kết thúc đợt khớp lệnh xác định giá mở cửa và bắt đầu đợt khớp lệnh liên

tục: có lệnh mua của nhà đầu tư nước ngoài được khớp.

• Đợt khớp lệnh liên tục, có lệnh mua của nhà đầu tư nước ngoài được khớp.

• Có giao dịch thoả thuận giữa bên mua là nhà đầu tư nước ngoài và bên bán

là nhà đầu tư trong nước.

• Có huỷ giao dịch thoả thuận giữa bên mua là nhà đầu tư nước ngoài và bên

bán là nhà đầu tư trong nước.

Message này sẽ thông báo số room còn lại của nhà đầu tư nước ngoài, ứng với

mã chứng khoán đó.

65

Page 66: Dac Ta KT He Thong GD Cua HOSE

Message TS

Field Size Type

1. Message Type 2 "TS"

2. Timestamp 3 Mod-96

Total 5

Message được broadcast mỗi phút khi server không có message nào cần phải

gửi, để xác nhận với các broker rằng server vẫn hoạt động bình thường.

66

Page 67: Dac Ta KT He Thong GD Cua HOSE

Ý nghĩa của các trường trong các message: Accumulate Value

Một trường 5 ký tự kiểu số trong định dạng Mod96 chứa đựng giá trị tổng cộng của tất cả

giao dịch trong một phiên giao dịch

Giá trị nằm trong khoảng :

1<= n <= 8,153,729,880 ( số nguyên )

CTCI: None

Broadcast: LE

Accumulate Volume

Một trường 4 ký tự kiểu số trong định dạng Mod96 chứa đựng khối lượng tổng cộng của

tất cả giao dịch trong ngày.

Giá trị nằm trong khoảng :

1<= n <= 84,934,655 ( số nguyên)

CTCI: None

Broadcast: LE

Add/Cancel Flag

Một trường 1 ký tự chỉ ra một giao dịch được thêm vào hoặc bỏ ra từ tập tin dữ liệu giao

dịch.

Những giá trị có thể :

"A" Thêm

"C" Hủy

CTCI: 1E

Broadcast: AA

Advances

Một trường 2 ký tự kiểu số trong định dạng mod96 chỉ ra số chứng khoán tăng giá trong

ngày, được so sánh với giá đóng của của ngày hôm trước.

Giá trị nằm trong khoảng :

0 <= n <= 9,215

CTCI: None

Broadcast: IU

67

Page 68: Dac Ta KT He Thong GD Cua HOSE

Automatch Halt Flag

Một trường 1 ký tự chỉ ra CTCK Thành viên có được thực hiện Giao dịch khớp lệnh hay

không hoặc cho biết CTCK Thành viên được phép Giao dịch khớp lệnh trở lại

Giá trị nằm trong khoảng :

“ ”: Được phép Giao dịch

“B”: Không được phép đặt lệnh Mua cho Giao dịch khớp lệnh

“S”: Không được phép đặt lệnh Bán cho Giao dịch khớp lệnh

“A”: Không được phép đặt lệnh Mua và Bán cho Giao dịch khớp lệnh

CTCI: None

Broadcast: BS

Benefit

Một trường 1 ký tự kiểu chữ chỉ ra 1 chứng khoán được giao dịch không còn quyền lợi

trước đó.

Những giá trị có thể :

" " Không sử dụng

"A" Phát hành thêm và cổ tức

"D" Chia cổ tức

"R" Thực hiện quyền

CTCI: None

Broadcast: SU, SS

Board

Một trường một ký tự kiểu chữ chỉ ra bảng giao dịch

Những giá trị có thể :

"B" Giao dich lô lớn

"M" Giao dịch khớp lệnh

"O" Giao dịch lô lẻ

CTCI: 1E, 1F, 1G, 1I, 2F

Broadcast: AA, PD, DC

Board Lot

Một trường 2 ký tự kiểu số trong định dạng mod96 chỉ ra kích thước của 1 lô của cổ

phiếu

Giá trị nằm trong khoảng :

1 <= n <= 9,215 68

Page 69: Dac Ta KT He Thong GD Cua HOSE

CTCI: None

Broadcast: SS, SU

Broker Client Volume, Broker Foreign Volume, Broker Portfolio

Volume

1 <= n <= 84,934,655 (encoded integer)

CTCI: 8 bytes 1F, 1G, 3B

Broadcast: None

Cancel Confirm

Một trường 6 ký tự kiểu số chỉ ra confirm number của 1 thỏa thuận bị hủy hoặc hiệu

chỉnh.

CTCI: 3C, 3D

Broadcast: None

Cancel Shares

Một trường có 8 ký tự chứa số cổ phiếu được huỷ thành công từ một lệnh đặt nào đó.

Nếu lệnh đó chưa được khớp, thì giá trị này sẽ là toàn bộ số cổ phiếu trong lệnh đặt. Nếu

lệnh đã được khớp một phần, thì giá trị này là phần còn lại chưa được khớp.

CTCI: 2C

Broadcast: None

Ceiling Price

Một trường 4 ký tự kiểu số được định dạng mod96 chứa đựng giá cao nhất của chứng

khoán có thể được giao dịch trên bảng chính cho ngày hôm sau. Trường này cùng định

dạng với trường Price. Đơn vị tính của Ceiling price là 1/100 point. Giá trị thực của

Celling price được tính bằng cách lấy giá trị chia 100. ( Xem trường Price )

CTCI: None

Broadcast: SS, SU

Client ID

Một trường 10 ký tự kiểu chữ chứa đựng mã tài khoản khách hàng của công ty chứng

khoán. Thông tin này là bắt buộc và theo quy định của HOSE.

Những giá trị có thể :

- Ba ký tự đầu là mã công ty chứng khoán hoặc mã thành viên lưu ký

- Ký tự thứ 4 thì tương ứng với PC flag

69

Page 70: Dac Ta KT He Thong GD Cua HOSE

- Những ký tự khác là những giá trị khác

- Không có khoảng trắng

PC Flag Fourth Char First three Char

P P Mã CTCK

C C Mã CTCK

M A Mã lưu ký trong nước

M B Mã lưu ký

F F Mã lưu ký hoặc mã CTCK

F E Mã lưu ký nước ngoài

CTCI: 1D, 1F, 1G, 1I, 2D, 3B

Broadcast: None

Client ID Required

Trường 1 ký tự kiểu chữ chứa mã liên quan đến đến chứng khoán. Khi mã này được thiết

lập là “Y”, thì tất cả các lệnh của chứng khoán này phải chứa Client ID.

Những giá trị có thể :

" " Không sử dụng (Client ID không yêu cầu)

"Y" Client ID yêu cầu trên tất cả các lệnh nhập vào với mã chứng khoán

CTCI: None

Broadcast: SS, SU

Confirm Number

Một số được gán bởi Hệ thống giao dịch của HOSE được dùng để xác định duy nhất cho

mỗi giao dịch. Tất cả những việc được thực hiện sau đó mà có liên quan đến giao dịch

này được xác định dựa trên Confirm Number.

Giá trị nằm trong khoảng :

1 <= n <= 884,735

CTCI: 6 bytes. 2E, 2F, 2I, 2L, 3B, 3C, 3D

Broadcast: 3 bytes (mod-96) DC, LE, PD, LS

Contact

Một trường 20 ký tự kiểu chữ chứa thông tin liên lạc cá nhân và điện thoại

CTCI: 1E

70

Page 71: Dac Ta KT He Thong GD Cua HOSE

Broadcast: AA

Contra Firm

Một trường 3 ký tự chỉ ra công ty đối ứng của một giao dịch hay 1 message ( Xem Firm)

Giá trị nằm trong khoảng :

1 <= n <= 9215 < 2 bytes Mod-96 >

1 <= n <= 999 < 3 bytes Numeric String >

CTCI: 1G, 2F, 2L, 3C

Broadcast: None

Current Room

Một trường 6 ký tự kiểu số dưới định dạng mod96 chỉ ra số room hiện tại còn lại của nhà

đầu tư nước ngoài.

Giá trị nằm trong khoảng :

0 <= n <= 782,757,789,695

CTCI: None

Broadcast: TR

Deal ID

Một trường 5 ký tự kiểu số mà giá trị của nó được gán bởi HOSE khi thỏa thuận cùng

thành viên hay khác thành viên được nhập vào. Hệ thống HOSE trả về Deal ID trong

nhiều loại message để giúp đỡ cho hệ thống của của Broker tìm kiếm giá những thỏa

thuận giao dịch trước đó. Hệ thống HOSE không kểm tra Deal ID.

Đối với hệ thống nhập lệnh tại sàn Deal ID là rỗng.

CTCI: 1F, 1G, 2L, 3B

Broadcast: None

Declines

Một trường 2 ký tự kiểu số định dạng theo mod96 thể hiện số chứng khoán giảm giá

trong ngày, được so sánh với giá đóng của của ngày hôm trước.

Giá trị nằm trong khoảng :

0 <= n <= 9,215

CTCI: None

Broadcast: IU

Delist

71

Page 72: Dac Ta KT He Thong GD Cua HOSE

Một trường 1 ký tự kiểu chữ chỉ ra cho biết cờ của chứng khoán.

Những giá trị có thể :

" " Không sử dụng

"D" Mã cổ phiếu bị hủy niêm yết .

CTCI: None

Broadcast: SS, SU

Down Volume

Một trường 6 ký tự kiểu số định dạng theo mod96 chứa đựng tổng khối lượng của cổ

phiếu giảm giá trong ngày. Đơn vị tính của Down Volume là 1,000. Giá trị thực của

down volume được tính bằng cách lấy giá trị nhân với 1000.

Giá trị nằm trong khoảng :

0 <= n <= 8,153,726,975

CTCI: None

Broadcast: IU

Error code

Một trường 2 ký tự kiểu số chứa đựng mã lỗi của quá trình khôi phục dữ liệu

Giá trị nằm trong khoảng :

1 <= n <= 999

01 Chiều dài message RQ sai

02 Loại message gửi trong qui trình retranmission bị sai.

03 Số broker sai.

04 Số lần yêu cầu gửi lại vượt quá giới hạn cho phép.

05 Sequence bắt đầu lớn hơn sequence kết thúc.

06 Số sequence bắt đầu nhỏ hơn sequence cuối cùng được gửi.

07 Số lượng sequence (End - Start) vượt giới hạn cho phép.

08 Thông tin file log bên broadcast không có.

09 Sequence cuối trong message yêu cầu lớn hơn sequence hiện tại trong hệ thống

HoSE Gateway.

10 Không tìm thấy message có sequence bắt đầu như yêu cầu.

99 Lỗi không xác định được.

CTCI: RN

Broadcast: none

Filler

72

Page 73: Dac Ta KT He Thong GD Cua HOSE

Một khối ký tự rỗng không chứa đựng thông tin gì.

CTCI: 1D, 1F, 1G, 1I, 2D, 2E, 3B

Broadcast: AA, IU, SI, SU

Firm

Số firm được định nghĩa và cung cấp bởi HOSE. Trường này dùng để xác nhận công ty

nào đang nhận hay gửi message.

Giá trị nằm trong khoảng :

1 <= n <= 9215 < 2 bytes Mod-96 >

1 <= n <= 999 < 3 bytes Numeric String >

CTCI: 2 bytes. All

Broadcast: 1 byte (mod-96). AA

Floor Price

Một trường 4 ký tự số định dạng theo mod96 chứa đựng giá thấp nhất của một chứng

khoán có thể giao dịch trên bảng chính trong ngày giao dịch hôm sau. Cùng định dạng

với trường Price. Đơn vị tính của Floor Price là 1/100. Giá trị thực của Floor Price được

tính bằng cách lấy giá trị của nó chia cho 100 ( Xem Price)

CTCI: None

Broadcast: SS, SU

Halt / Resume Flag

Một trường 1 ký tự kiểu chữ chỉ ra chứng khoán đang bị tạm dừng hoặc chứng khoán đó

được giao dịch trở lại.

Những giá trị có thể :

" " Không sử dụng

"H" Tạm dừng

"R" Giao dịch lại

CTCI: None

Broadcast: SU, SS

Highest Price

Một trường 4 ký tự kiểu số theo định dạng mod96 chứa đựng thông tin giá khớp cao nhất

của một chứng khoán trên bảng chính trong ngày. Đơn vị tính của Highest Price là 1/100.

Giá trị thực của highest price tính bằng cách lấy giá trị chia cho 100.

73

Page 74: Dac Ta KT He Thong GD Cua HOSE

Những giá trị có thể : Xem trường Price

CTCI: None

Broadcast: SU

Index – HOSE

Một trường 4 ký tự kiểu số theo định dạng mod96 chỉ ra giá trị của index tương ứng. Đơn

vị tính của index là 1/100. Giá trị index thực được tính bằng cách lấy giá trị chia cho 100

CTCI: None

Broadcast: IU

Index Time

Một trường 3 ký tự kiểu số theo định dạng mod96 chỉ ra thời gian gửi index

CTCI: None

Broadcast: IU, SI

Last Sale Price

Một trường 4 ký tự số theo định dạng mod96 chỉ ra giá trị khớp cuối cùng của chứng

khoán. Đơn vị tính của Last sale price là 1/100 point. Giá trị thực của last sale price được

tính bằng cách chia giá trị đó cho 100

CTCI: None

Broadcast: SU

Lot Volume

Một trường 5 ký tự kiểu số theo định dạng mod96 chỉ ra khối lượng giao dịch tính theo lô

Giá trị nằm trong khoảng: 0 <= n <= 84,934,655

CTCI: None

Broadcast: LE, LS

Lot Volume 1,2,3

Một trường 5 ký tự kiểu số theo định dạng mod96 chỉ ra 3 khối lượng mua hoặc bán tốt

nhất ( tính theo lô).

Giá trị nằm trong khoảng: 0 <= n <= 884,735

CTCI: None

Broadcast: TP

74

Page 75: Dac Ta KT He Thong GD Cua HOSE

Lowest Price

Một trường 4 ký tự kiểu số định dạng theo mod96 chỉ ra giá khớp thấp nhất của chứng

khoán trong bảng chính trong ngày. Đơn vị tính của Lowest price là 1/100 point. Giá trị

thực của lowest price được tính bằng cách chia giá trị đó cho 100.

CTCI: None

Broadcast: SU

Market ID

Một trường 1 ký tự kiểu chữ chỉ ra loại của thị trường

Giá trị có thể: “A” HOSE

CTCI: None

Broadcast: IU, SU

Message Type

Một trường 2 ký tự kiểu chữ chỉ ra loại message của hệ thống

CTCI: All

Broadcast: All

Meeting

Một trường 1 ký tự kiểu chữ chỉ ra dấu hiệu của đại hội cổ đông

Những giá trị có thể :

“M” Tổ chức đại hội cổ đông

“ “ Không sử dụng

CTCI: None

Broadcast: SS, SU

Mutual Fund Volume

Xem trường Broker Client Volume, Broker Foreign Volume, Broker Portfolio Volume

No Change

Một trường hai ký tự kiểu số định dạng theo mod96 chỉ ra số chứng khoán không thay

đổi giá trong ngày. Trường này được so sánh với giá đóng cửa của ngày hôm trước

Giá trị nằm trong khoảng: 0 <= n <= 9,215

CTCI: None

Broadcast: IU

75

Page 76: Dac Ta KT He Thong GD Cua HOSE

No Change Volume

Một trường 6 ký tự kiểu số định dạng theo mod96, chứa đựng tổng khối lượng giao dịch

trong ngày của những chứng khoán không thay đổi giá. Đơn vị tính của No change

volume là 1000. Giá trị thực của No change volume được tính bằng cách nhân giá trị của

trường này với 1000.

Giá trị nằm trong khoảng có: 0 <= n <= 8,153,726,975

CTCI: None

Broadcast: IU

Notice

Một trường 1 ký tự kiểu chữ chỉ ra rằng một chứng khoán được yêu cầu cung cấp thông

tin quan trọng hoặc trả lời thông tin được yêu cầu.

Những giá trị có thể :

" " Không sử dụng

"P" Chờ thông tin cần cung cấp

"R" Đã nhận thông tin cần cung cấp

CTCI: None

Broadcast: SS, SU

Open Price

Một trường 4 ký tự kiểu số định dạng theo mod96 chứa đựng giá mở cửa của một chứng

khoán. Đơn vị tính của Open Price là 1/100. Giá trị thực của open price được tính bằng

cách chia giá trị đó cho 100.

Những giá trị có thể có: Xem trường Price

CTCI: None

Broadcast: SU

Order Cancel Status

Một trường 1 ký tự kiểu chữ chứa đựng trạng thái của lệnh hủy của 1 chứng khoán giao

dịch trong ngày.

Những giá trị có thể có :

" " Hủy bởi CTCK

"S" Hủy bởi HOSE

CTCI: 2C

76

Page 77: Dac Ta KT He Thong GD Cua HOSE

Broadcast: None

Order Entry Date

Một trường 4 ký tự kiểu ngày định dạng theo “DDMM” chỉ ra ngày của lệnh được nhập

vào hệ thống đầu tiên.

CTCI: 1C, 1D, 2B, 2C, 2D, 2E, 2I

Broadcast: None

Order Number

Giá trị nằm trong khoảng có: 1 <= n <= 84,934,655

CTCI: 1C, 1D, 1I, 2B, 2C, 2D, 2E, 2I

Broadcast: None

Original Message Text

Một trường giá trị chứa đựng dữ liệu thuần của message khi message được gửi trả lại từ

chối tới công ty chứng khoán.

CTCI: 2G

Broadcast: None

Par Value

Một trường 4 ký tự kiểu số định dạng theo mod96 chỉ ra mệnh giá của một cổ phiếu. Đơn

vị tính của Par value là 1/100. Giá trị thực của par value được tính bằng cách chia giá trị

đó cho 100.

CTCI: None

Broadcast: SU

Port/Client Flag

Một trường 1 ký tự kiểu chữ chỉ ra lệnh đó được giao dịch với tư cách tự doanh của công

ty chứng khoán của nhà đầu tư v.v…

Những giá trị có thể có :

"C" Khách hàng trong nước

"F" Khách hàng nước ngoài

"M" Quỹ đầu tư

"P" Tự doanh

CTCI: 1I, 2D (1F, 1G, 3B, 3C)

Broadcast: None

77

Page 78: Dac Ta KT He Thong GD Cua HOSE

Price

Một trường chỉ ra giá của lệnh đặt hoặc lệnh khớp. Price có thể là số nguyên hoặc là số

thập phân dựa vào loại giao dịch. Ví dụ : 54.25 hoặc 1250. Giá trị kiểu chữ chỉ được chấp

nhận với trường hợp ATO, ATC hoặc lệnh MP.

Những giá trị có thể có :

"ATO" At The Open

OR "ATC" At The Close

OR "MP" Market Price

OR 1 <= n <= 849,346 (đối với Broadcast)

OR 1 <= n <= 999,999.999999(đối với 1E, 1F, 1G, 2F, 2L,AA)

OR 1 <= n <= 99,999.99 (đối với 1I)

OR 1 <= n <= 99,999.99 (đối với 2D, 2E, 2I)

Lưu ý : Price trong giao dịch thỏa thuận như 1F,1G thì theo kiểu đơn vị 1/1,000,000

point.

CTCI: 1E, 1F, 1G, 1I, 2D, 2E, 2F, 2I, 2L

Broadcast: AA, DC, LE, OS, PD, LS

Price 1,2,3

Một trường 4 ký tự kiểu số theo định dạng mod96 chứa đựng thông tin 3 giá mua hoặc

bán tốt nhất. Price 1 là giá tốt nhất, Price 2 là giá tốt nhất thứ 2, Price 3 là tốt nhất thứ 3.

Đơn vị tính của Price 1,2,3 là 1/100. Giá trị thực của price 1,2,3 được tính bằng cách chia

giá trị đó cho 100

Xem trường lot volume 1,2,3

CTCI: None

Broadcast: TP

Prior Close Date

Một trường 6 ký tự kiểu số chứa thông tin ngày giao dịch của ngày hôm trước . Định

dạng YYYYMMDD.

CTCI: None

Broadcast: SU

Prior Close Price

Một trường 4 ký tự kiểu số theo định dạng mod96 chứa thông tin giá đóng cửa của chứng

khoán ngày hôm trước. Giá trị của trường này giống với định dạng của trường Price. 78

Page 79: Dac Ta KT He Thong GD Cua HOSE

Đơn vị tính của Prior Close Price là 1/100. Giá trị thực của trường này được tính bằng

cách chia giá trị này cho 100.

Giá trị nằm trong khoảng: 1 <= n <= 84,934,655 (encoded integer)

CTCI: None

Broadcast: SS, SU

Projected Open Price

Một trường 4 ký tự kiểu số theo định dạng mod96 chỉ ra giá mở cửa của một cổ phiếu

dựa trên những lệnh có trong hệ thống. Đơn vị tính của Projected open price là 1/100 .

Giá trị thực của trường này được tính bằng cách chia giá trị này cho 100.

Giá trị nằm trong khoảng: 1 <= n <= 84,934,655 (encoded integer)

CTCI: None

Broadcast: PO

Published Volume

Một trường 8 ký tự chỉa ra bao nhiêu khối lượng của lệnh đặt có trong thị trường.

Giá trị nằm trong khoảng: 1 <= n <= 84,934,655 (encoded integer)

CTCI: 8 bytes. 1I, 2D

Broadcast: None

Putthrough Halt Flag

Một trường 1 ký tự chỉ ra CTCK Thành viên có được thực hiện Giao dịch thoả thuận hay

không hoặc cho biết CTCK Thành viên được phép thực hiện Giao dịch thoả thuận trở lại

Giá trị nằm trong khoảng :

“ ”: Được phép Giao dịch

“B”: Không được phép đặt lệnh Mua cho Giao dịch thoả thuận

“S”: Không được phép đặt lệnh Bán cho Giao dịch thoả thuận

“A”: Không được phép đặt lệnh Mua và Bán cho Giao dịch thoả thuận

CTCI: None

Broadcast: BS

Reject Reason Code:

Một trường 2 ký tự kiểu số dùng để chỉ ra cho công ty chứng khoán biết lý do yêu cầu

của hành động không được thực hiện.

Những giá trị có thể có:

00 Lệnh MP nhưng không có lệnh đối ứng.

79

Page 80: Dac Ta KT He Thong GD Cua HOSE

01 Sai bước giá.

02 Khối lượng đặt sai.

03 Yêu cầu không hợp lệ. Thị trường đã đóng cửa.

04 Sai mã chứng khoán.

05 Sai mã thành viên.

06 Sai mã trader.

07 Sai giá trị “confirm number”.

08 Đã trễ để thực hiện yêu cầu trên.

09 Sai số “Reference number”.

10 Điều kiện sai.

11 Chứng khoán bị tạm dừng giao dịch

12 Sai board

13 Thiếu thông tin mã khách hàng.

14 Loại lệnh nhập sai.

15 Cờ “P/C” nhập sai.

16 “Reply Code ” hoặc “Request Code” bị sai.

17 Sai trường “Side”: chỉ được là mua (B), hoặc bán (S).

18 Sai thông tin “Order Number”.

19 Sai thông tin “Time”.

20 Sai thông tin “Date”.

24 Chứng khoán đang bị treo, không được giao dịch.

25 Thiếu thông tin trường “P/C”.

27 Không còn room cho loại chứng khoán đó.

29 Thị trường đang tạm ngừng giao dịch.

31 Không được phép thay đổi thông tin đối với lệnh đã khớp.

33 Không được phép giao dịch với Chứng khoán đã yêu cầu.

34 Nhập giá lớn hơn giá trần.

35 Nhập giá nhỏ hơn giá sàn.

36 Sai định dạng của giá trong lệnh thoả thuận.

37 Không được phép huỷ một lệnh đã được khớp.

38 Sai thông tin “Volume” trong giao dịch thoả thuận.

41 Sai thông tin “Market ID”.

42 Sai loại message (trường “message type”).

43 Thông tin về Chiều dài message (Message Length) sai.

44 Sai thông tin “Customer ID”.

80

Page 81: Dac Ta KT He Thong GD Cua HOSE

45 Sai thông tin “Filler”.

99 Lỗi không xác định.

CTCI: 2G

Broadcast: None

Reply Code

Một trường 1 ký tự kiểu chữ dùng để phản hồi lại yêu cầu của việc hủy lệnh hoặc sự hiệu

chỉnh của một thỏa thuận.

Những giá trị có thể có:

"A" Chấp thuận.

"C" Bên đối tác không chấp thuận

"S" HOSE không chấp thuận.

CTCI: 3B, 3D

Broadcast: None

SDC Flag

Một cờ dùng để chỉ ra chứng khoán đó có trong SDC không. Trường này được thêm vào

trong ASSET V3.0

Những giá trị có thể có:

"Y" Mã cổ phiếu có trong SDC

"N" Mã cổ phiếu không có trong SDC

CTCI: None

Broadcast: SU

Sector Number

Một trường 1 ký tự kiểu số định dạng theo mod96 chứa đựng số của một nhóm lĩnh vực

chứng khoán.

Giá trị nằm trong khoảng: 0 <= n <= 95

CTCI: None

Broadcast: SS, SU

Security Name

Một trường 25 ký tự kiểu chữ chứa đựng tên đầy đủ của 1 chứng khoán. Tên phải bắt đầu

bằng ký tự A-Z. Tên có thể chứa khoảng trằng hoặc dấu gạch ngang (-).

CTCI: None

81

Page 82: Dac Ta KT He Thong GD Cua HOSE

Broadcast: SU

Security Number, Security Number (New)

Một trường 2 ký tự kiểu số định dạng theo mod96 để xác định một chứng khoán. Một giá

trị số nguyên duy nhất được gán vào mỗi chứng khoán được giao dịch trên HOSE. Số

này có thể thay đổi khi có một chứng khoán bị hủy. Điều này để loại trừ khoảng trống

trong dãy số. Vì thế, khi có thao tác đánh số lại, các mã chứng khoán sẽ được gán một số

security number mới.

Giá trị nằm trong khoảng có : 1 <= n <= 4000 (encoded integer)

CTCI: None

Broadcast: AA, DC, LE, OS, PD, PO, SS, SU, TP, TR, LS

Security Symbol

Một trường 8 ký tự kiểu chữ chứa đựng mã chứng khoán được dùng ở HOSE.

CTCI: 1E, 1F, 1G, 1I, 2F, 3C

Broadcast: SU

Security Type

Một trường 1 ký tự kiểu chữ chỉ ra loại của 1 chứng khoán.

Những giá trị có thể có:

"D" Trái phiếu

"S" Cổ phiếu

"U" Chứng chỉ quĩ

CTCI: None

Broadcast: SS, SU

Side

Một trường 1 ký tự kiểu chữ xác định bên mua hoặc bên bán của 1 giao dịch. Trường này

có thể để trống trong message xác nhận thỏa thuận (deal confirmation messages ) mà

message này là kết quả của 1 giao dịch thỏa thuận cùng thành viên.

Những giá trị có thể có :

"X" Giao dịch cùng công ty.

"B" Là bên bán.

"S" Là bên mua.

Trường “side” nếu nằm trong message 3C gửi từ HOSE thì hệ thống sẽ không kiểm tra.

82

Page 83: Dac Ta KT He Thong GD Cua HOSE

CTCI: 1E, 1I, 2E, 2F, 2L, 3C

Broadcast: AA, LE, TP, LS

Split

Một trường chỉ ra chứng khoán đó đang giao dịch ngày đầu tiên sau khi chứng khoán đó

được chia.

Những giá trị có thể có :

" " Không sử dụng

"S" Chứng khoán được chia

CTCI: None

Broadcast: SS, SU

Suspension

Một trường 1 ký tự kiểu chữ chỉ ra chứng khoán bị tạm dừng giao dịch.

Những giá trị có thể có :

" " Không sử dụng

"S" Chứng khoán bị treo.

CTCI: None

Broadcast: SS, SU

System Control Code

Một trường mô tả một sự kiện điều khiển của hệ thống

Những giá trị có thể có :

" " Không sử dụng

"A" Bắt đầu đợt giao dịch khớp lệnh xác định giá đóng cửa.

"C" Thị trường đóng cửa, chuyển sang giao dịch thoả thuận.

"G" Bắt đầu quá trình truyền thông tin tổng kết cuối ngày.

"H" Ngưng thị trường giao dịch.

"J" Kết thúc quá trình truyền thông tin tổng kết cuối ngày.

"K" Kết thúc toàn bộ giao dịch trong ngày.

"N" Khôi phục lại hoạt động cho một loại chứng khoán nào đó.

"O" Thị trường mở cửa.

"P" Bắt đầu đợt giao dịch khớp lệnh giá mở cửa.

"R" Khôi phục lại toàn bộ hoạt động giao dịch.

"X" Lệnh đặt không được phép đối với loại chứng khoán đã yêu cầu.

83

Page 84: Dac Ta KT He Thong GD Cua HOSE

CTCI: None

Broadcast: 1 byte. SC, SS

Time

Một trường 6 ký tự kiểu số theo định dạng “HHMMSS”. Giờ đươc xác định dựa trên 24

giờ.

CTCI: 6 bytes. 1E

Broadcast: 3 bytes (Mod-96) AA.

Timestamp

Một trường 3 ký tự kiểu số theo định dạng mod96 chỉ ra thời gian của message được gửi

từ phía HOSE. Định dạng của Timestamp là “HHMMSS” theo định dạng 24 giờ.

CTCI: None

Broadcast: SC

Total Room

Một trường 6 ký tự kiểu số theo định dạng mod96 chứa đựng tổng khối lượng chứng

khoán nhà đầu tư nước ngoài được mua.

Giá trị nằm trong khoảng có: 0 <= n <= 782,757,789,695

CTCI: None

Broadcast: TR

Total Shares Traded

Một trường 5 ký tự kiểu số địng dạng theo mod 96 chứa đựng tổng khối lượng được giao

dịch trong ngày.

Giá trị nằm trong khoảng có: 1 <= n <= 8,153,726,975

CTCI: None

Broadcast: IU, SU

Total Trades

Một trường 4 ký tự kiểu số theo định dạng mod96 chứa đựng tổng số giao dịch được thực

hiện trong ngày.

Giá trị nằm trong khoảng có: 1 <= n <= 84,934,655 (encoded integer)

CTCI: None

Broadcast: IU

84

Page 85: Dac Ta KT He Thong GD Cua HOSE

Total Values Traded

Một trường 5 ký tự kiểu số theo định dạng mod96 chứa đựng tổng giá trị của tất cả giao

dịch trong ngày(giá trị ở dạng nghìn đồng). Giá trị của Total values traded theo kiểu đơn

vị1000. Giá trị thực được tính bằng cách nhân giá trị đó với 1000.

Giá trị nằm trong khoảng có: 1 <= n <= 8,153,726,975

CTCI: None

Broadcast: IU, SU

Trader ID

Một trường 4 ký tự chỉ ra 1 người giao dịch xác định. Trường này được gán bởi HOSE,

xác định 1 người giao dịch cụ thể đã đăng ký với HOSE và có quyền sử dụng hệ thống

giao dịch.

Giá trị nằm trong khoảng :

xxxx : x = 0-9

CTCI: 1E, 1F, 1G, 1I, 2F, 3C

Broadcast: None

Trader Status

Một trường 1 ký tự chỉ ra trạng thái của Trader, Hose có thể tạm ngưng giao dịch của

Trader bất kỳ lúc nào mà không phụ thuộc vào trạng thái thị trường

Giá trị nằm trong khoảng :

“N”: Được phép giao dịch

“S”: Không được phép giao dịch

CTCI: None

Broadcast: TC

Up Volume

Một trường 6 ký tự kiểu số định dạng theo mod96 chứa đựng tổng khối lượng giao dịch

của những chứng khoán tăng trong ngày. Giá trị của Up volume theo kiểu đơn vị1000.

Giá trị thực của trường này được tính bằng cách nhân giá trị này với 1000.

Giá trị nằm trong khoảng có: 0 <= n <= 8,153,726,975

CTCI: None

Broadcast: IU

85

Page 86: Dac Ta KT He Thong GD Cua HOSE

Volume

Số lượng cổ phiếu hay chứng chỉ quỹ, trái phiếu được giao dịch

trong giờ giao dịch.

Giá trị nằm trong khoảng có: 1 <= n <= 84,934,655 (encoded integer)

CTCI: 8 bytes 1E, 1I, 2E, 2F, 2I, 2L (1F, 1G, 3B)

Broadcast: 4 bytes (mod-96) AA, DC, PD

86

Page 87: Dac Ta KT He Thong GD Cua HOSE

Lưu đồ các message:

Lưu đồ của message điều khiển (SC)

SET Firm Contra Firm

Pre-Open Period SC code P ++++++++++> Market Opens SC code O ++++++++++> Intermission SC code I ++++++++++> End Intermission SC code F ++++++++++> Pre-Open SC code P ++++++++++> Market Opens SC code O ++++++++++> Call Market SC code A ++++++++++> Runoff SC code C ++++++++++> Market close SC code K ++++++++++> Bắt đầu gửi SU SC Code G ++++++++++> Gửi SU Kết thúc gửi SU SC Code J ++++++++++> Market Halt SC code H ++++++++++> SC Code P ++++++++++>

Lưu đồ của các message từ pre-open sang open

SET Firm Contra Firm

Pre-Open Period

<---------- 1I 2B ----------> <---------- 1I 2B ----------> TP ++++++++>

PO ++++++++>

Market Open

87

Page 88: Dac Ta KT He Thong GD Cua HOSE

OS ++++++++>

2E/2I ----------> 2E/2I ----------> LS ++++++++>

TP ++++++++>

Lưu đồ của các message với các lệnh đặt ATO/ATC

SET Firm Contra Firm

Pre-Open Period

<---------- 1I (ATO/ATC)

2B ----------> <---------- 1I

(ATO/ATC) 2B ----------> TP ++++++++>

PO ++++++++>

Market Open Nếu khớp 2E/2I ----------> 2E/2I ----------> OS (không gửi đối với trường hợp ATC )

++++++++++>

LS ++++++++++>

TP ++++++++++>

Nếu không khớp hoặc phần còn lại

2C ----------> 2C ----------> TP +++++++++>

Lưu đồ xử lý lệnh đặt

SET Firm Contra Firm

During Trade <---------- 1I 2B/2E/2I ----------> Nếu nằm trong 3 giá cao/thấp nhất

TP ++++++++>

88

Page 89: Dac Ta KT He Thong GD Cua HOSE

<---------- 1I Nếu khớp 2E/2I ----------> 2E/2I ---------->

LS ++++++++>

TP ++++++++>

Nếu không khớp nằm trong 3 giá cao/thấp nhất

TP ++++++++>

Lưu đồ xử lý lệnh thị trường (MP)

SET Firm Contra Firm

<---------- 1I (MP) Không khớp 2C ----------> Khớp 2E/2I ----------> 2E/2I ----------> LS ++++++++>

TP ++++++++>

Phần còn lại 2D ----------> TP ++++++++>

Lưu đồ message thay đổi lệnh

SET Firm Contra Firm

<---------- 1I 2B/2E/2I ----------> <---------- 1D (thay đổi) 2D ---------->

Nếu có sự thay đổi về lệnh đặt, cho dù lệnh đó đã khớp hết, chỉ khớp một phần

hay không khớp, thì yêu cầu thay đổi sẽ làm ảnh hưởng lên cả phần lệnh đặt và khớp.

Nếu có sự thay đổi cho một lệnh đã huỷ, thì sự thay đổi đó cũng có tác động

lên cả phần lệnh đặt và khớp.

89

Page 90: Dac Ta KT He Thong GD Cua HOSE

Lưu đồ message yêu cầu huỷ lệnh

SET Firm

<---------- 1I (order) 2B (order confirm) ----------> <---------- 1C 2C (cancel confirm) ----------> Nếu ảnh hưởng đến khối lượng của 3 giá cao/thấp nhất

TP ++++++++++>

Lưu đồ khớp giao dịch thoả thuận cùng công ty

SET Firm (Seller=01)

<--------- 1F 2L ---------> PD +++++++++>

Lưu đồ huỷ một giao dịch thoả thuận cùng công ty

SET Firm (Seller=01)

<--------- 3C • Nếu HOSE

không chấp nhận

3D (code S) ---------> • Nếu HOSE chấp

nhận

3D (code A) ---------> DC +++++++++> • HOSE không làm

gì Không có message nào gửi từ hệ thống

Lưu đồ khớp giao dịch thoả thuận khác công ty SET Firm

(seller=01) Contra Firm

(buyer=02)

<--------- 1G 2F --------->

90

Page 91: Dac Ta KT He Thong GD Cua HOSE

• Nếu đối ứng không chấp nhận

<--------- 3B (code C) 3B(C) ---------> ---------> • Nếu đối ứng

chấp nhận

<--------- 3B (code A) 2L ---------> ---------> PD +++++++++> • Nếu đối ứng

chấp thuận lệnh mua nước ngoài nhưng không đủ room

<--------- 3B (code A) 3B (code S) ---------> ---------> • Nếu đối ứng

không làm gì cả

Không có message nào gửi từ hệ thống

Lưu đồ hủy lệnh thoả thuận (chỉ dành cho trường hợp khác công ty)

SET Firm (seller=01)

Contra Firm (buyer=02)

<--------- 3C 3C ---------> • Nếu đối ứng không

chấp nhận

<--------- 3D (code C) 3D(C) ---------> • Nếu đối ứng chấp

nhận

<--------- 3D (code A) - Nếu HOSE không chấp nhận

3D(S) ---------> --------->

- Nếu HOSE chấp nhận

3D(A) ---------> ---------> DC +++++++++>

- Nếu đối ứng chấp nhận nhưng HOSE không làm gì hết

Không có me

91

Page 92: Dac Ta KT He Thong GD Cua HOSE

• Nếu đối ứng không

làm gì Không có message nào được gửi từ hệ thống

Lưu đồ quảng cáo giao dịch thoả thuận

SET Firm

<--------- 1E AA +++++++++>

Đơn vị của các trường giá trị số:

1. Đơn vị tính 1000:

Là trường số có 6 ký tự, biểu diễn dưới dạng mod 96, chứa giá trị đã được chia

cho 1000

VD: Giá trị thực của một số là 100 000, được biểu diễn dưới dạng mod 96, đơn

vị tính 1000 là

modulo-96 (100,000/1,000)] = 14

Vì vậy, khi muốn tính giá trị thật của trường này, đầu tiên phải demode 96, sau

đó nhân với 1000

CTCI: None

Broadcast: IU, SU

2. Đơn vị tính 1/100:

Là trường số có 4 ký tự, biểu diễn dưới dạng mod 96, chứa giá trị đã được

nhân cho 100.

VD: Giá trị thực của một số là 10, thì nó sẽ được biểu diễn là

[modulo-96 (10*100)]

Vì vậy, khi muốn tính giá trị thật của trường này, đầu tiên phải demode 96, sau

đó chia cho 100.

CTCI: None

Broadcast: DC, IU, LE, OS, PD, PO, SI, SS, SU, TP

3. Đơn vị tính 1/1000000

Là trường số có 12 ký tự chứa giá trị đã được nhân cho 1000000

VD: Giá trị thực của một số là 1234.50, thì nó sẽ được biểu diễn là

92

Page 93: Dac Ta KT He Thong GD Cua HOSE

[1,234.50*1,000,000]

Vì vậy, khi muốn tính giá trị thật của trường này phải chia nó cho 1000000

CTCI: 1E, 1F, 1G, 2F, 2L

Broadcast: None

93

Page 94: Dac Ta KT He Thong GD Cua HOSE

V . Bảng tóm lược các message được gửi trong từng giai đoạn

CTCI messsage: Pre- Open Call Run- Close Begin End Eod

CTCI Messages Open off SU SU

System Code p O A C K G J

1C - Order Cancellation Yes Yes Yes

1D - Order Change Yes Yes Yes

1E - Advertisement Announcement

Yes Yes Yes

1F - One Firm Put-Through Deal

Yes Yes Yes

1G - Two Firm Put-Through Deal

Yes Yes Yes

1I – New Order Yes Yes Yes

2B - Order Confirmation Yes Yes Yes

2C - Confirmation of Order Cancellation

Yes Yes Yes

2D - Confirmation of Order Change

Yes Yes Yes Yes

2E - Confirmation of Deal Yes Yes

2F - Put-Through Acknowledgement

Yes Yes Yes

2G - Reject Yes Yes Yes Yes

2I - Confirmation of Crossing Deal

Yes Yes

2L - PT Deal Confirmation Yes Yes Yes

3B - Put-Through Deal Reply Yes Yes Yes

3C - Deal Cancel/Change Request

Yes Yes Yes

3D - Deal Cancel/Change Reply

Yes Yes Yes

1. PRS message: Pre- Open Call Run- Close Begin End Eod

Broadcast Messages Open off SU SU

System Code P O A C K G J

Advertisement Announcement (AA)

Yes Yes Yes

Deal Cancellation Notice (DC) Yes Yes Yes

Index Update (IU) Yes Yes Yes Yes

Last Sale(LS) Yes Yes

Market Open Last Sale (OS) Yes

Put Through Deal Notice (PD) Yes Yes Yes

Projected Open (PO) Yes Yes

System Control (SC) Yes Yes Yes Yes Yes Yes Yes

Sectoral Index (SI) Yes Yes Yes Yes

Security Status Change (SS) Yes Yes Yes Yes Yes

Security Update (SU) Yes

Top Prices (TP) Yes Yes Yes Yes

94

Page 95: Dac Ta KT He Thong GD Cua HOSE

Lưu đồ message giữa Sở và Công ty chứng khoán

Broker Front system

DCTerm

Exchange system

A

B

A’, B’

B’

CTCI

PRS

CTCI(A,A’,B,B’)

PRS

Broadcast

A là message từ CTCK và A’ là message phản hồi của A.

B là message từ CTCK và B’ là message phản hồi của B.

95