Skip to main content

Tổng quan

Kênh TRADING cho phép client nhận các sự kiện giao dịch theo thời gian thực: trạng thái lệnh, khớp lệnh, thay đổi danh mục và sự kiện lệnh điều kiện (FCO). Client cần subscribe theo tài khoản (accountNo) để nhận event. Mỗi topic tương ứng với một nhóm sự kiện cụ thể.

Topic pattern

Sự kiện lệnh điều kiện (FCO) được trả về trên cùng kênh order — không cần subscribe topic riêng.
Subscribe topic portfolio hiện chỉ hỗ trợ tài khoản đuôi 8 (tài khoản phái sinh). Tài khoản cơ sở (đuôi 1) hoặc ký quỹ (đuôi 6) chưa được hỗ trợ.

Subscribe

Gửi message với method: "SUBSCRIBE" và channel: "TRADING":

Quy tắc subscribe

  • Có thể subscribe nhiều topic trong cùng một message.
  • Subscribe order.* sẽ nhận event lệnh của tất cả tài khoản (bao gồm cả lệnh điều kiện FCO).
  • Subscribe portfolio.* sẽ nhận event danh mục của tất cả tài khoản.
  • Subscribe cùng topic nhiều lần không gây lỗi — server bỏ qua topic đã subscribe.
  • Sau khi reconnect, client phải subscribe lại toàn bộ topic cần theo dõi.

Unsubscribe

Gửi message với method: "UNSUBSCRIBE" và channel: "TRADING":

Quy tắc unsubscribe

  • Chỉ unsubscribe các topic đã subscribe trước đó.
  • Unsubscribe topic chưa subscribe không gây lỗi — server bỏ qua.
  • Unsubscribe không ảnh hưởng đến các topic khác đang subscribe.
  • Để kiểm tra danh sách topic đang subscribe, dùng LIST_SUBSCRIPTION.

Kiểm tra subscription hiện tại

Response trả về scope theo nhóm:

Các loại event

Sau khi subscribe thành công, client sẽ nhận các event sau theo thời gian thực.

Binding event trong SDK

Sự kiện lệnh điều kiện (FCO) được trả về qua cùng binding onClientPortfolioEvent.

Order Event

Sự kiện trạng thái lệnh — phát sinh khi lệnh được đặt, sửa, hủy hoặc thay đổi trạng thái.
string
Loại event: "orderEvent"
Long
Số serial của event message
string
Định danh phiên kết nối stream của client
string
Định danh lệnh trong ngày, tự động sinh nếu không truyền. Dùng để đối chiếu tương ứng với lệnh từ đầu client
string
Số định danh lệnh được ghi nhận tại hệ thống giao dịch
string
Mã chứng khoán
string
Chiều mua/bán của lệnh (B → BUY / S → SELL)
string
Loại lệnh (LO, ATO, ATC,…)
string
Số tài khoản đặt lệnh
string
Giá
number
Khối lượng
number
Khối lượng đã hủy
number
Khối lượng chưa khớp
number
Khối lượng khớp
string
Thời gian tiếp nhận đặt lệnh (format theo quy chuẩn chung)
string
Thời gian sửa, cập nhật trạng thái lệnh (format theo quy chuẩn chung)
string
Trạng thái lệnh, tham chiếu theo bảng trạng thái lệnh
string
Lý do từ chối
string
Mã lỗi lệnh
string
Thông tin lệnh lỗi

Order Match Event

Sự kiện khớp lệnh — phát sinh khi lệnh được khớp (một phần hoặc toàn bộ).
string
Loại event: "orderMatchEvent"
Long
Số serial của event message
string
Định danh phiên kết nối stream của client
string
Định danh lệnh trong ngày, tự động sinh nếu không truyền. Dùng để đối chiếu tương ứng với lệnh từ đầu client
string
Số định danh lệnh được ghi nhận tại hệ thống giao dịch
string
Mã chứng khoán
string
Chiều mua/bán của lệnh (B → BUY / S → SELL)
string
Số tài khoản đặt lệnh
string
Giá khớp
number
Khối lượng khớp
string
Thời gian khớp (format theo quy chuẩn chung)

Client Portfolio Event

Sự kiện cập nhật danh mục — phát sinh khi số dư hoặc tài sản thay đổi.
string
Loại event: "clientPortfolioEvent"
Long
Số serial của event message
string
Định danh phiên kết nối stream của client
string
Mã chứng khoán
string
Số tài khoản
number
Vị thế long
number
Vị thế short
number
Vị thế net (tính bằng long - short)
string
Giá mua trung bình
string
Giá bán trung bình
string
Giá khớp
string
Giá thị trường
string
Lãi/lỗ tạm tính
string
Lãi/lỗ đã chốt

FCO Event (Lệnh điều kiện)

Sự kiện lệnh điều kiện (FCO — FastConnect Conditional Order) — phát sinh khi lệnh điều kiện thay đổi trạng thái (khởi tạo, kích hoạt, khớp, hủy…).
FCO Event được trả về trên cùng kênh streaming order — client nhận qua binding onClientPortfolioEvent.
Ví dụ FCO Event Response:
string
Loại event: "fcoEvent"
object
Thông tin chi tiết của event
string
ID lệnh điều kiện (UUID)
number
ID thông báo
string
Trạng thái xử lý lệnh điều kiện. Tham khảo Phụ lục FCO
number
Khối lượng đã khớp
boolean
true: Có lệnh thực phát sinh (xuất hiện lệnh ở Orderbook). false: Chưa có lệnh thực phát sinh
string
Mã chứng khoán. Đối với phái sinh, truyền theo mã tổng quát hoặc chi tiết: 1M, 2M, 1Q, 2Q, VN30FYYMM
number
Khối lượng muốn đặt lệnh
string
Giá đặt (đơn vị đồng). Giá số (vd: "23500") hoặc "MP", "MOK", "MTL"
string
Tiểu khoản đặt lệnh (ví dụ tài khoản đuôi 8, đuôi 6)
string
Thời gian cập nhật (Unix timestamp milliseconds), vd: "1751966448000"
string
Mã trạng thái. Tham chiếu bảng mã lỗi
string
Thông báo kết quả hoặc lỗi
string
ID người dùng tại SSI