FastConnect Data hỗ trợ cập nhật dữ liệu thời gian thực thông qua streaming. Ngay sau khi client kết nối, hệ thống sẽ chủ động gửi các thông tin cập nhật tới client khi có thay đổi. Các dữ liệu được streaming bao gồm:
Mã loại dữ liệu
Mô tả
Chú thích
Trạng thái mã chứng khoán
Thông tin tổng hợp bid/ask và thông tin khớp lệnh
Sàn HOSE hỗ trợ 3 mức giá. Sàn HNX, UPCOM và phái sinh hỗ trợ 10 mức giá.
Trạng thái Mã chứng khoán
Rtype F sẽ trả về thông tin phiên giao dịch và trạng thái giao dịch của mã chứng khoán.
Input Output
Sàn giao dịch. Có các giá trị sau: HOSE|HNX|HNXBOND|UPCOM|DER
Ngày giao dịch. Định dạng ddmmyyy
Thời gian.
Định dạng HHMMSS
Ví dụ
Copy Input:
F: SSI
Output:
{"DataType":"F",
"Content":"{
\"RType\":\"F\",
\"MarketId\":\"HOSE\",
\"TradingDate\":\"14/08/2023\",
\"Time\":\"13:00:00\",
\"Symbol\":\"SSI\",
\"TradingSession\":\"LO\",
\"TradingStatus\":\"N\",
\"Exchange\":\"HOSE\"}"
}
Dữ liệu bid/ask
Dữ liệu bid/ask của mã chứng khoán
Input Output
Khối lượng bid tốt nhất 1
Khối lượng bid tốt nhất 2
Khối lượng bid tốt nhất 3
Khối lượng bid tốt nhất 4
Khối lượng bid tốt nhất 5
Khối lượng bid tốt nhất 6
Khối lượng bid tốt nhất 7
Khối lượng bid tốt nhất 8
Khối lượng bid tốt nhất 9
Khối lượng bid tốt nhất 10
Khối lượng ask tốt nhất 1
Khối lượng ask tốt nhất 2
Khối lượng ask tốt nhất 3
Khối lượng ask tốt nhất 4
Khối lượng ask tốt nhất 5
Khối lượng ask tốt nhất 6
Khối lượng ask tốt nhất 7
Khối lượng ask tốt nhất 8
Khối lượng ask tốt nhất 9
Khối lượng ask tốt nhất 10
Ví dụ
Copy Input:
X-QUOTE: ACB
Output:
{"DataType":"X-QUOTE",
"Content":"{
\"TradingDate\":\"14/08/2023\",
\"Time\":\"14:00:28\",
\"Exchange\":\"HOSE\",
\"Symbol\":\"ACB\",
\"RType\":\"X-QUOTE\",
\"AskPrice1\":22950.0,
\"AskPrice2\":23000.0,
\"AskPrice3\":23050.0,
\"AskPrice4\":0.0,
\"AskPrice5\":0.0,
\"AskPrice6\":0.0,
\"AskPrice7\":0.0,
\"AskPrice8\":0.0,
\"AskPrice9\":0.0,
\"AskPrice10\":0.0,
\"AskVol1\":109100.0,
\"AskVol2\":208600.0,
\"AskVol3\":207200.0,
\"AskVol4\":0.0,
\"AskVol5\":0.0,
\"AskVol6\":0.0,
\"AskVol7\":0.0,
\"AskVol8\":0.0,
\"AskVol9\":0.0,
\"AskVol10\":0.0,
\"BidPrice1\":22900.0,
\"BidPrice2\":22850.0,
\"BidPrice3\":22800.0,
\"BidPrice4\":0.0,
\"BidPrice5\":0.0,
\"BidPrice6\":0.0,
\"BidPrice7\":0.0,
\"BidPrice8\":0.0,
\"BidPrice9\":0.0,
\"BidPrice10\":0.0,
\"BidVol1\":290900.0,
\"BidVol2\":454200.0,
\"BidVol3\":678800.0,
\"BidVol4\":0.0,
\"BidVol5\":0.0,
\"BidVol6\":0.0,
\"BidVol7\":0.0,
\"BidVol8\":0.0,
\"BidVol9\":0.0,
\"BidVol10\":0.0,
\"TradingSession\":\"LO\"}"}
Dữ liệu khớp lệnh
Input Output
Giá đóng cửa của ngày giao dịch trước đó của ngày báo cáo
Tổng giá trị khớp lệnh từ khi thị trường mở cửa đến thời điểm báo cáo.
Tổng khối lượng khớp lệnh từ khi mở cửa thị trường đến thời điểm báo cáo.
Chiều mua/ bán
SD: Bán
BU: Mua
Unknow: không xác định
Ví dụ
Copy Input:
X-TRADE: ACB
Output:
{"DataType":"X-TRADE",
"Content":"{
\"RType\":\"X-TRADE\",
\"TradingDate\":\"14/08/2023\",
\"Time\":\"14:07:53\",
\"Isin\":\"ACB\",
\"Symbol\":\"ACB\",
\"Ceiling\":24500.0,
\"Floor\":21300.0,
\"RefPrice\":22900.0,
\"AvgPrice\":22927.93,
\"PriorVal\":22900.0,
\"LastPrice\":22950.0,
\"LastVol\":100.0,
\"TotalVal\":201713015000.0,
\"TotalVol\":8797700.0,
\"MarketId\":\"HOSE\",
\"Exchange\":\"HOSE\",
\"TradingSession\":\"LO\",
\"TradingStatus\":\"N\",
\"Change\":50.0,
\"RatioChange\":0.22,
\"EstMatchedPrice\":22900.0,
\"Highest\":23050,
\"Lowest\":22800,
\"Side\":\"SD\"
},"}
Dữ liệu tổng hợp của thông tin bid/ask và thông tin khớp lệnh
Input Output
Giá đóng cửa của ngày giao dịch trước đó của ngày báo cáo
Tổng giá trị khớp lệnh từ khi thị trường mở cửa đến thời điểm báo cáo.
Tổng khối lượng khớp lệnh từ khi mở cửa thị trường đến thời điểm báo cáo.
Khối lượng bid tốt nhất 1
Khối lượng bid tốt nhất 2
Khối lượng bid tốt nhất 3
Khối lượng bid tốt nhất 4
Khối lượng bid tốt nhất 5
Khối lượng bid tốt nhất 6
Khối lượng bid tốt nhất 7
Khối lượng bid tốt nhất 8
Khối lượng bid tốt nhất 9
Khối lượng bid tốt nhất 10
Khối lượng ask tốt nhất 1
Khối lượng ask tốt nhất 2
Khối lượng ask tốt nhất 3
Khối lượng ask tốt nhất 4
Khối lượng ask tốt nhất 5
Khối lượng ask tốt nhất 6
Khối lượng ask tốt nhất 7
Khối lượng ask tốt nhất 8
Khối lượng ask tốt nhất 9
Khối lượng ask tốt nhất 10
Ví dụ
Copy Input:
X: ALL
Output:
{"DataType":"X",
"Content":"{
\"RType\":\"X\",
\"TradingDate\":\"15/08/2023\",
\"Time\":\"10:28:41\",
\"Isin\":\"TAR\",
\"Symbol\":\"TAR\",
\"Ceiling\":23400.0,
\"Floor\":19200.0,
\"RefPrice\":21300.0,
\"Open\":21300.0,
\"High\":22300.0,
\"Low\":21300.0,
\"Close\":21800.0,
\"AvgPrice\":21784.0,
\"PriorVal\":21300.0,
\"LastPrice\":21800.0,
\"LastVol\":100.0,
\"TotalVal\":27946100000.0,
\"TotalVol\":1282900.0,
\"BidPrice1\":21800.0,
\"BidPrice2\":21700.0,
\"BidPrice3\":21600.0,
\"BidPrice4\":21500.0,
\"BidPrice5\":21400.0,
\"BidPrice6\":21300.0,
\"BidPrice7\":21200.0,
\"BidPrice8\":21100.0,
\"BidPrice9\":21000.0,
\"BidPrice10\":20900.0,
\"BidVol1\":18800.0,
\"BidVol2\":35300.0,
\"BidVol3\":93600.0,
\"BidVol4\":60000.0,
\"BidVol5\":45800.0,
\"BidVol6\":94500.0,
\"BidVol7\":42900.0,
\"BidVol8\":48400.0,
\"BidVol9\":165900.0,
\"BidVol10\":26100.0,
\"AskPrice1\":21900.0,
\"AskPrice2\":22000.0,
\"AskPrice3\":22100.0,
\"AskPrice4\":22200.0,
\"AskPrice5\":22300.0,
\"AskPrice6\":22400.0,
\"AskPrice7\":22500.0,
\"AskPrice8\":22600.0,
\"AskPrice9\":22700.0,
\"AskPrice10\":22800.0,
\"AskVol1\":50300.0,
\"AskVol2\":109800.0,
\"AskVol3\":58500.0,
\"AskVol4\":152600.0,
\"AskVol5\":92200.0,
\"AskVol6\":129800.0,
\"AskVol7\":178700.0,
\"AskVol8\":60100.0,
\"AskVol9\":29400.0,
\"AskVol10\":17000.0,
\"MarketId\":\"HNX\",
\"Exchange\":\"HNX\",
\"TradingSession\":\"LO\",
\"TradingStatus\":\"N\",
\"Change\":500.0,
\"RatioChange\":2.35,
\"EstMatchedPrice\":0.0}"}
Dữ liệu Room nước ngoài
Input Output
Ngày giao dịch
Định dạng: dd/mm/yyyy
Tổng khối lượng khớp lệnh mà khối ngoại mua từ khi mở cửa thị trường đến thời điểm báo cáo
Tổng khối lượng khớp lệnh mà nhà đầu tư nước ngoài mua từ khi mở cửa thị trường đến thời điểm báo cáo
Tổng khối lượng khớp lệnh mà nhà đầu tư nước ngoài đã bán từ khi mở cửa thị trường đến thời điểm báo cáo
Tổng giá trị mua khớp của khách hàng nước ngoài.
Đối với HOSE, streaming tự tính theo công thức:
BuyVal = BuyVol * LastPrice (Giá khớp gần nhất)
Tổng giá trị bán khớp lệnh của khách hàng nước ngoài.
Đối với HOSE, streaming tự tính theo công thức:
SellVal = SellVol * LastPrice (Giá khớp gần nhất)
Ví dụ
Copy R:SSI
Output:
{"DataType":"R",
"Content":"{
\"RType\":\"R\",
\"TradingDate\":\"14/08/2023\",
\"Time\":\"14:24:02\",
\"Isin\":\"SSI\",
\"Symbol\":\"SSI\",
\"TotalRoom\":1501130137.0,
\"CurrentRoom\":806887173.0,
\"BuyVol\":863352.0,
\"SellVol\":825308.0,
\"BuyVal\":25123543200.0,
\"SellVal\":24016462800.0,
\"MarketId\":\"HOSE\",
\"Exchange\":\"HOSE\"}"
}
Dữ liệu chỉ số
Rtype MI cung cấp thông tin chỉ số cập nhật của tất cả các sàn HOSE, HNX, UPCOM.
Input Output
Tổng số lệnh khớp (cả thông thường và thỏa thuận)
Tổng giá trị khớp lệnh thông thường
Index:
“Main” – chỉ số chính như VN30
“Industry” – chỉ số liên quan đến Industry
“Khác” – chỉ số không được phân loại.
Tổng số mã có giá không đổi
Tổng số mã có giá cuối cùng = giá trần
Tổng số mã có giá cuối cùng = giá sàn
Tổng số lượng khớp lệnh thông qua
Tổng giá trị khớp lệnh thỏa thuận
Tổng khối lượng khớp của cả thông thường và thỏa thuận
Tổng giá trị khớp lệnh thông thường và thỏa thuận
Ví dụ
Copy Input:
MI:VN30
Output:
{'DataType': 'MI',
'Content': {
"IndexId":"VN30",
“IndexValEst”:1200.03,
"IndexValue":1238.76,
"PriorIndexValue":1226.16,
"TradingDate":"02/04/2021",
"Time":"11:28:13",
"TotalTrade":0.0,
"TotalQtty":191838100.0,
"TotalValue":7289093000000.0,
"IndexName":"VN30",
"Advances":25,
"NoChanges":2,
"Declines":3,"Ceilings":0,
"Floors":0,"Change":12.6,
"RatioChange":1.03,
"TotalQttyPt":2064000.0,
"TotalValuePt":244251000000.0,
"Exchange":"HOSE",
"AllQty":193902100.0,
"AllValue":7533344000000.0,
"IndexType":"Main",
"TradingSession":null,
"MarketId":null,
"RType":"MI",
"TotalQttyOd":0.0,
"TotalValueOd":0.0}'
}
Dữ liệu OHLCV
Rtype B sẽ trả ra thông tin open, high, low, close, volume của các mã chứng khoán/chỉ số theo tick.
Input Output
Tên trường
Kiểu dữ liệu
Mô tả
Bao gồm Ngày và Thời gian
Giá trị khớp gần nhất. Tạm thời để bằng 0
Ví dụ
Copy Input:
B:X26
Output:
{‘Datatype’: 'B',
‘Content’: '{
"RType":"B",
"Symbol":"X26",
"TradingTime":"14:28:33",
"Open":16000,
"High":16000,
"Low":16000,
"Close":16000,
"Volume":5000,
"Value":0}'
}
Dữ liệu Lô lẻ (Odlot)
Rtype OL sẽ trả ra thông tin giao dịch lô lẻ open, high, low, close, volume của các mã chứng khoán
Input Output
Tên trường
Kiểu dữ liệu
Mô tả
Ngày giao dịch theo định dạng dd/MM/yyyy
Bao gồm Ngày và Thời gian
Tổng giá trị giao dịch của cổ phiếu (cả lô chẵn và lẻ)
Tổng khối lượng giao dịch của cổ phiếu
Khối lượng đặt mua tốt mức 1
Khối lượng đặt mua tốt mức 2
Khối lượng đặt mua tốt mức 3
Khối lượng đặt bán tốt mức 1
Khối lượng đặt bán tốt mức 2
Khối lượng đặt bán tốt mức 3
Sàn giao dịch (HOSE/HNX/UPCOM)
Phiên giao dịch lô lẻ (LO/ATO/ATC/CLOSE/Break)
Trạng thái mã chứng khoán N/H (Normal/Halt)
Thay đổi giá khớp gần nhất so với tham chiếu
Phần trăm thay đổi giá khớp gần nhất so với tham chiếu
Loại cổ phiếu (Stock / Bond/ ETF...)
Ví dụ
Copy Input:
OL:MBB
Output:
{
"DataType": "OL",
"Content": {
"RType": "OL",
"TradingDate": "18/02/2025",
"Time": "13:55:03",
"StockNo": 2027,
"Symbol": "MBB",
"Ceiling": 24200,
"Floor": 21100,
"RefPrice": 22650,
"Open": 22650,
"High": 22950,
"Low": 22600,
"LastPrice": 22750,
"LastVol": 9193,
"TotalVal": 185028289999.99728,
"TotalVol": 8135000,
"BidPrice1": 22700,
"BidPrice2": 22650,
"BidPrice3": 22600,
"BidVol1": 1108,
"BidVol2": 1630,
"BidVol3": 2016,
"AskPrice1": 22750,
"AskPrice2": 22800,
"AskPrice3": 22850,
"AskVol1": 132,
"AskVol2": 548,
"AskVol3": 297,
"Exchange": "HOSE",
"TradingSession": "LO",
"TradingStatus": "H",
"Change": 100,
"RatioChange": 0.44,
"StockType": "Stock"
}
}