Tài liệu LightSpeed API V1
I. Trading API
1. Giới thiệu chung
DNSE cung cấp các API theo chuẩn Restful API với format JSON để phục vụ cho việc giao dịch chứng khoán. Để truy cập được các API này, khách hàng cần phải đăng nhập và sử dụng token sau đăng nhập để gọi API giao dịch. DNSE cung cấp cơ chế bảo mật 2 lớp gồm:
Lớp 1: sử dụng tài khoản và mật khẩu
Lớp 2: Sử dụng mã OTP
Sau khi đăng nhập lớp 1, khách hàng được cấp một jwt-token. Tuy nhiên để có thể đặt lệnh thì cần thêm xác thực OTP lớp 2: kết quả ở bước này, khách hàng sẽ nhận được trading-token và dùng thêm token này để giao dịch.
Với các API lấy thông tin, khi gọi lên server cần truyền theo header Authorization: "Bearer < jwt-token>" trong đó jwt-token là giá trị token trả về lúc đăng nhập thành công lớp 1 (Mục 2.a)
Với các API làm thay đổi dữ liệu: ví dụ: đặt, huỷ lệnh, cần gửi thêm thông tin trên header có jwt-token cùng với trading-token lấy ở lớp 2 (Mục 2.2)
2. Đăng nhập và xác thực
2.1 Đăng nhập
Resquest header
N/A
Resquest body
username
String
ID đăng nhập: email hoặc số điện thoại hoặc số lưu ký
password
String
Mật khẩu
Response body
token
String
JWT token (có hiệu lực trong 8 tiếng)
2.2 Xác thực OTP
DNSE cung cấp 2 phương thức để xác thực OTP cho giao dịch qua API, có thể sử dụng một trong 2 phương thức này để xác thực:
Xác thực bằng Smart OTP
Xác thực bằng Email OTP
i. Xác thực bằng Smart OTP
Để sử dụng tính năng xác thực OTP, tài khoản cần đăng ký sử dụng Smart OTP trên ứng dụng DNSE. Hướng dẫn cài đặt Smart OTP
Sau khi xác thực OTP thành công, hệ thống sẽ cấp trading-token
Trading token sẽ được sử dụng trong các API chỉnh sửa dữ liệu: đặt lệnh, huỷ lệnh
Trading token sẽ có hiệu lực trong vòng 8h, khi hết hiệu lực cần dùng API này để xác thực và lấy lại trading-token mới.
Resquest header
Authorization
Bearer <JWT token>
smart-otp
String
Mã smart otp lấy từ ứng dụng Entrade X
Resquest body
N/A
ii. Xác thực bằng Email OTP
Để sử dụng tính năng xác thực bằng email OTP, cần thực hiện 3 bước như sau:
Bước 1: Đăng ký
Khách hàng có thể thực hiện đăng ký online trực tiếp trên trang Web EntradeX hoặc liên hệ DNSE theo hướng dẫn: Hướng dẫn đăng ký.
Bước 2: Lấy OTP bằng email
Sau khi đăng ký thành công, Khách hàng có thể sử dụng API lấy OTP bằng email.
Khi dùng API Email OTP thì mã OTP sẽ được gửi tới địa chỉ email đăng ký khi tạo tại khoản trên Entrade X. Hướng dẫn xem email hiện tại (Lưu ý: Email cần được xác thực trước khi dùng API)
Mã OTP sẽ có hiệu lực trong vòng 2 phút và chỉ dùng được 1 lần, khi dùng xong hoặc hết hiệu lực thì cần dùng API này để lấy mã mới
Resquest header
Authorization
Bearer <JWT token>
Resquest body
N/A
Response body
N/A
Bước 3: Xác thực OTP
Sau khi tài khoản lấy được mã OTP bằng email thì có thể xác thực OTP để hệ thống cấp trading-token.
Trading token sẽ được sử dụng trong các API chỉnh sửa dữ liệu: đặt lệnh, huỷ lệnh
Trading token sẽ có hiệu lực trong vòng 8h, khi hết hiệu lực cần dùng API này để xác thực và lấy lại trading-token mới
Resquest header
Authorization
Bearer <JWT token>
otp
String
Mã otp lấy từ API Email OTP (Bước 2)
Resquest body
N/A
Response body
tradingToken
String
Trading token (có hiệu lực trong 8 tiếng)
3. Thông tin tài khoản và tiền tài khoản
3.1 Thông tin tài khoản
Resquest header
Authorization
Bearer <JWT token>
Resquest body
N/A
OK
Response body
investorId
String
Mã khách hàng
name
String
Họ và tên
custodyCode
String
Số lưu ký
mobile
String
Số điện thoại
String
<others>
3.2 Thông tin tiểu khoản
Lấy danh sách tiểu khoản giao dịch
Resquest header
Authorization
Bearer <JWT token>
Resquest body
N/A
Response body
accounts
Account list
Danh sách các tiểu khoản
Account
id
String
Mã tiểu khoản
custodyCode
String
Số lưu ký
investorId
String
Mã khách hàng
accountTypeName
String
Tên tiểu khoản
derivativeAccount
Bolean
Đã đăng ký giao dịch phái sinh chưa?
<others>
3.3 Thông tin tiền
Lấy thông tin tài sản tiền theo mã tiểu khoản
Path param
account
Mã tiểu khoản <account> lấy ở bước 3.2
Resquest header
Authorization
Bearer <JWT token>
Resquest body
N/A
Response body
custodyCode
String
Số lưu ký
investorAccountId
String
Mã tiểu khoản, bằng giá trị <account> truyền lên
totalCash
Double
Tổng tiền hiện có
availableCash
Double
Tiền mặt hiện có đã trừ đi các khoản nợ + phí
totalDebt
Double
Tổng nợ
withdrawableCash
Double
Số tiền được rút
depositFeeAmount
Double
Phí lưu ký
depositInterest
Double
Lãi tiền gửi không ký hạn
marginDebt
Double
Nợ margin
stockValue
Double
Giá trị chứng khoán tính theo giá đầu ngày
netAssetValue
Double
Tài sản ròng
receivingAmount
Double
Tiền chờ về
secureAmount
Double
Tiền mua khớp trong ngày
withdrawableCash
Double
Số tiền có thể rút
cashDividendReceiving
Double
Tiền cổ tức chờ về
4. Giao dịch cơ sở
4.1 Danh sách gói vay
Lấy thông tin gói vay, gói vay sẽ được dùng để đặt lệnh
Gói vay là khái niệm của DNSE định nghĩa để hỗ trợ phân biệt các tỷ lệ ký quỹ khi đặt lệnh (margin, không margin)
Gói vay có 2 loại, type = N (non-margin) và type = M (margin)
Một mã chứng khoán có thể thuộc nhiều gói vay type = M, cùng một mã chứng khoán nằm trong các gói vay type M có thể khác nhau về chính sách lãi suất, chính sách phí giao dịch, tỷ lệ cho vay. Việc lựa chọn gói vay nào phụ thuộc vào nhu cầu sử dụng phù hợp của khách hàng
Path param
accountNo
Số tiểu khoản
Resquest header
Authorization
Bearer <JWT token>
Response body
loanPackages
Array [List gói vay đang được gắn với tiểu khoản]
id
integer
Id gói vay
name
string
Tên gói vay
type
string
Loại gói vay (Margin hoặc Non-Margin)
brokerFirmBuyingFeeRate
number
Phí mua, chưa bao gồm phí trả sở (net)
brokerFirmSellingFeeRate
number
Phí bán, chưa bao gồm phí trả sở (net)
transferFee
numer
Phí chuyển khoản chứng khoán khi bán
description
string
Diễn giải
loanProducts
Array [List các mã đi kèm với chính sách margin]
Loan product là list các mã, đi kèm thông tin chính sách về lãi suất, tỷ lệ ký quỹ, kỳ hạn, thời gian miễn lãi,..
id
string
ID của từng loan product
name
string
Tên của loan product
symbol
string
Tên mã
initialRate
number
Tỷ lệ cọc ban đầu
initialRateForWithdraw
number
Tỷ lệ rút sức mua
maintenanceRate
number
Tỷ lệ duy trì
liquidRate
number
Tỷ lệ xử lý
interestRate
number
Lãi vay (%/năm)
preferentialPeriod
integer
Thời hạn miễn lãi
preferentialInterestRate
number
Lãi suất áp dụng trong thời gian miễn lãi
term
integer
Kỳ hạn vay
allowExtendLoanTerm
boolean
Cho phép gia hạn khoản vay
allowEarlyPayment
boolean
Cho phép trả nợ trước hạn
basketId
integer
ID của rổ vay
4.2 Sức mua, sức bán
Lấy thông tin sức mua sức bán tối đa theo tiểu khoản, mã, giá và gói vay
Path param
account
Mã tiểu khoản
Query param
loanPackageId
Mã gói vay (lấy Mã gói vay cần trong danh sách gói vay mục 4.1)
symbol
Mã
price
Giá (đơn vị đồng)
Resquest header
Authorization
Bearer <JWT token>
Resquest body
N/A
Response body
investorAccountId
String
Mã tiểu khoản
ppse
Double
Sức mua
price
Double
Giá tính sức mua
qmax
Double
Số lượng mua tối đa
tradeQuantity
Double
Số lượng bán tối đa
4.3 Đặt lệnh
https://api.dnse.com.vn/order-service/v2/orders
POST
Resquest header
Authorization
Bearer <JWT token>
Trading-Token
Trading-token lấy ở xác thực bước 2 (Mục 2.2)
Resquest body
symbol
String
Mã
side
String
Lệnh mua: NB, Lệnh bán:NS
orderType
String
Loại lệnh: LO/MP/MTL/ATO/ATC/MOK/MAK
price
Double
Giá, đơn vị đồng
quantity
Double
Khối lượng đặt
loanPackageId
Double
Mã gói vay, lấy gói vay muốn đặt từ api danh sách gói vay
accountNo
String
Mã tiểu khoản
Response body
id
integer
Số hiệu lệnh
side
string
Lệnh Mua/Bán thuộc các giá trị sau:
- NB: Mua
- NS: Bán
accountNo
string
Số tiểu khoản
investorId
string
Mã Khách hàng
symbol
string
Mã chứng khoán
price
number
Giá đặt
quantity
integer
Khối lượng đặt
orderType
string
Loại lệnh, thuộc các giá trị sau:
- LO: lệnh giới hạn
- MP/MTL: lệnh thị trường
- ATC/ATO: lệnh khớp phiên định kỳ đóng cửa/mở cửa
- PLO: lệnh khớp lệnh sau giờ
orderStatus
string
Trạng thái lệnh, thuộc các giá trị sau đây:
- pending: chờ gửi
- pendingNew: chờ gửi
- new: chờ khớp
- partiallyFilled: khớp một phần
- filled: khớp toàn bộ
- rejected: bị từ chối
- expired: bị hết hạn trong phiên
- doneForDay: lệnh hết hiệu lực khi hết phiên
fillQuantity
integer
Khối lượng đã khớp
lastQuantity
integer
Khối lượng của lần khớp gần nhất của lệnh
lastPrice
number
Giá khớp của lần khớp gần nhất của lệnh
averagePrice
double
Giá khớp trung bình của lệnh
transDate
string
Ngày giao dịch, theo định dạng ISO UTC 8601 format date
Ví dụ: 2022-07-15
createdDate
string
Thời điểm (ngày giờ) đặt lệnh, theo định dạng ISO UTC 8601 format datetime
Ví dụ: 2022-07-15T10:00:00.111+07:00
modifiedDate
string
Thời điểm (ngày giờ) thay đổi cuối cùng của lệnh
taxRate
double
Tỷ lệ thuế lệnh chịu
feeRate
double
Tỷ lệ phí lệnh chịu
leaveQuantity
integer
Khối lượng chưa khớp của lệnh
canceledQuantity
integer
Khối lượng đã huỷ của lệnh
priceSecure
double
Giá cọc cho lệnh
custody
string
Số lưu ký của tiểu khoản đặt lệnh
channel
string
Kênh đặt lệnh
loanPackageId
integer
Id gói vay
initialRate
number
Tỷ lệ ký quỹ theo gói vay tương ứng với lệnh
error
string
Mã lỗi với trạng thái expired
0: Lệnh MP không có lệnh đối ứng
Mã lỗi đối với trạng thái lệnh rejected (bị từ chối) bao gồm các mã lỗi:
QMAX_EXCEED: Vượt quá KL có thể mua/bán
INVALID_QUANTITY_LOT: KL đặt không hợp lệ
PRICE_MUST_GREATER_THAN_OR_EQUAL_TO_FLOOR_PRICE: Giá đặt không hợp lệ
PRICE_MUST_LESS_THAN_OR_EQUAL_TO_CEILING_PRICE: Giá đặt không hợp lệ
INVALID_PRICE_LOT: Giá đặt không hợp lệ
SYMBOL_IS_NOT_IN_MARGIN_BASKET: Mã không nằm trong rổ margin
4.4 Sổ lệnh
Query param
account
Mã tiểu khoản
Resquest header
Authorization
Bearer <JWT token>
Response body
orders
Order list
Danh sách order
Order
id
integer
Số hiệu lệnh
side
string
Lệnh Mua/Bán thuộc các giá trị sau:
- NB: Mua
- NS: Bán
accountNo
string
Số tiểu khoản
investorId
string
Mã Khách hàng
symbol
string
Mã chứng khoán
price
number
Giá đặt
quantity
integer
Khối lượng đặt
orderType
string
Loại lệnh, thuộc các giá trị sau:
- LO: lệnh giới hạn
- MP/MTL: lệnh thị trường
- ATC/ATO: lệnh khớp phiên định kỳ đóng cửa/mở cửa
- PLO: lệnh khớp lệnh sau giờ
orderStatus
string
Trạng thái lệnh, thuộc các giá trị sau đây:
- pending: chờ gửi
- pendingNew: chờ gửi
- new: chờ khớp
- partiallyFilled: khớp một phần
- filled: khớp toàn bộ
- rejected: bị từ chối
- expired: bị hết hạn trong phiên
- doneForDay: lệnh hết hiệu lực khi hết phiên
fillQuantity
integer
Khối lượng đã khớp
lastQuantity
integer
Khối lượng của lần khớp gần nhất của lệnh
lastPrice
number
Giá khớp của lần khớp gần nhất của lệnh
averagePrice
double
Giá khớp trung bình của lệnh
transDate
string
Ngày giao dịch, theo định dạng ISO UTC 8601 format date
Ví dụ: 2022-07-15
createdDate
string
Thời điểm (ngày giờ) đặt lệnh, theo định dạng ISO UTC 8601 format datetime
Ví dụ: 2022-07-15T10:00:00.111+07:00
modifiedDate
string
Thời điểm (ngày giờ) thay đổi cuối cùng của lệnh
taxRate
double
Tỷ lệ thuế lệnh chịu
feeRate
double
Tỷ lệ phí lệnh chịu
leaveQuantity
integer
Khối lượng chưa khớp của lệnh
canceledQuantity
integer
Khối lượng đã huỷ của lệnh
priceSecure
double
Giá cọc cho lệnh
custody
string
Số lưu ký của tiểu khoản đặt lệnh
channel
string
Kênh đặt lệnh
loanPackageId
integer
Id gói vay
initialRate
number
Tỷ lệ ký quỹ theo gói vay tương ứng với lệnh
error
string
Mã lỗi với trạng thái expired
0: Lệnh MP không có lệnh đối ứng
Mã lỗi đối với trạng thái lệnh rejected (bị từ chối) bao gồm các mã lỗi:
QMAX_EXCEED: Vượt quá KL có thể mua/bán
INVALID_QUANTITY_LOT: KL đặt không hợp lệ
PRICE_MUST_GREATER_THAN_OR_EQUAL_TO_FLOOR_PRICE: Giá đặt không hợp lệ
PRICE_MUST_LESS_THAN_OR_EQUAL_TO_CEILING_PRICE: Giá đặt không hợp lệ
INVALID_PRICE_LOT: Giá đặt không hợp lệ
SYMBOL_IS_NOT_IN_MARGIN_BASKET: Mã không nằm trong rổ margin
4.5 Chi tiết lệnh
Path param
id
Số hiệu lệnh
Query param
account
Mã tiểu khoản
Resquest header
Authorization
Bearer <JWT token>
Response body
id
integer
Số hiệu lệnh
side
string
Lệnh Mua/Bán thuộc các giá trị sau:
- NB: Mua
- NS: Bán
accountNo
string
Số tiểu khoản
investorId
string
Mã Khách hàng
symbol
string
Mã chứng khoán
price
number
Giá đặt
quantity
integer
Khối lượng đặt
orderType
string
Loại lệnh, thuộc các giá trị sau:
- LO: lệnh giới hạn
- MP/MTL: lệnh thị trường
- ATC/ATO: lệnh khớp phiên định kỳ đóng cửa/mở cửa
- PLO: lệnh khớp lệnh sau giờ
orderStatus
string
Trạng thái lệnh, thuộc các giá trị sau đây:
- pending: chờ gửi
- pendingNew: chờ gửi
- new: chờ khớp
- partiallyFilled: khớp một phần
- filled: khớp toàn bộ
- rejected: bị từ chối
- expired: bị hết hạn trong phiên
- doneForDay: lệnh hết hiệu lực khi hết phiên
fillQuantity
integer
Khối lượng đã khớp
lastQuantity
integer
Khối lượng của lần khớp gần nhất của lệnh
lastPrice
number
Giá khớp của lần khớp gần nhất của lệnh
averagePrice
double
Giá khớp trung bình của lệnh
transDate
string
Ngày giao dịch, theo định dạng ISO UTC 8601 format date
Ví dụ: 2022-07-15
createdDate
string
Thời điểm (ngày giờ) đặt lệnh, theo định dạng ISO UTC 8601 format datetime
Ví dụ: 2022-07-15T10:00:00.111+07:00
modifiedDate
string
Thời điểm (ngày giờ) thay đổi cuối cùng của lệnh
taxRate
double
Tỷ lệ thuế lệnh chịu
feeRate
double
Tỷ lệ phí lệnh chịu
leaveQuantity
integer
Khối lượng chưa khớp của lệnh
canceledQuantity
integer
Khối lượng đã huỷ của lệnh
priceSecure
double
Giá cọc cho lệnh
custody
string
Số lưu ký của tiểu khoản đặt lệnh
channel
string
Kênh đặt lệnh
loanPackageId
integer
Id gói vay
initialRate
number
Tỷ lệ ký quỹ theo gói vay tương ứng với lệnh
error
string
Mã lỗi với trạng thái expired
0: Lệnh MP không có lệnh đối ứng
Mã lỗi đối với trạng thái lệnh rejected (bị từ chối) bao gồm các mã lỗi:
QMAX_EXCEED: Vượt quá KL có thể mua/bán
INVALID_QUANTITY_LOT: KL đặt không hợp lệ
PRICE_MUST_GREATER_THAN_OR_EQUAL_TO_FLOOR_PRICE: Giá đặt không hợp lệ
PRICE_MUST_LESS_THAN_OR_EQUAL_TO_CEILING_PRICE: Giá đặt không hợp lệ
INVALID_PRICE_LOT: Giá đặt không hợp lệ
SYMBOL_IS_NOT_IN_MARGIN_BASKET: Mã không nằm trong rổ margin
4.6 Huỷ lệnh
Path param
id
Số hiệu lệnh
Query param
account
Mã tiểu khoản
Resquest header
Authorization
Bearer <JWT token>
Trading-Token
Trading-token lấy ở xác thực bước 2 (Mục 2.2)
Response body
id
integer
Số hiệu lệnh
side
string
Lệnh Mua/Bán thuộc các giá trị sau:
- NB: Mua
- NS: Bán
accountNo
string
Số tiểu khoản
investorId
string
Mã Khách hàng
symbol
string
Mã chứng khoán
price
number
Giá đặt
quantity
integer
Khối lượng đặt
orderType
string
Loại lệnh, thuộc các giá trị sau:
- LO: lệnh giới hạn
- MP/MTL: lệnh thị trường
- ATC/ATO: lệnh khớp phiên định kỳ đóng cửa/mở cửa
- PLO: lệnh khớp lệnh sau giờ
orderStatus
string
Trạng thái lệnh, thuộc các giá trị sau đây:
- pending: chờ gửi
- pendingNew: chờ gửi
- new: chờ khớp
- partiallyFilled: khớp một phần
- filled: khớp toàn bộ
- rejected: bị từ chối
- expired: bị hết hạn trong phiên
- doneForDay: lệnh hết hiệu lực khi hết phiên
fillQuantity
integer
Khối lượng đã khớp
lastQuantity
integer
Khối lượng của lần khớp gần nhất của lệnh
lastPrice
number
Giá khớp của lần khớp gần nhất của lệnh
averagePrice
double
Giá khớp trung bình của lệnh
transDate
string
Ngày giao dịch, theo định dạng ISO UTC 8601 format date
Ví dụ: 2022-07-15
createdDate
string
Thời điểm (ngày giờ) đặt lệnh, theo định dạng ISO UTC 8601 format datetime
Ví dụ: 2022-07-15T10:00:00.111+07:00
modifiedDate
string
Thời điểm (ngày giờ) thay đổi cuối cùng của lệnh
taxRate
double
Tỷ lệ thuế lệnh chịu
feeRate
double
Tỷ lệ phí lệnh chịu
leaveQuantity
integer
Khối lượng chưa khớp của lệnh
canceledQuantity
integer
Khối lượng đã huỷ của lệnh
priceSecure
double
Giá cọc cho lệnh
custody
string
Số lưu ký của tiểu khoản đặt lệnh
channel
string
Kênh đặt lệnh
loanPackageId
integer
Id gói vay
initialRate
number
Tỷ lệ ký quỹ theo gói vay tương ứng với lệnh
error
string
Mã lỗi với trạng thái expired
0: Lệnh MP không có lệnh đối ứng
Mã lỗi đối với trạng thái lệnh rejected (bị từ chối) bao gồm các mã lỗi:
QMAX_EXCEED: Vượt quá KL có thể mua/bán
INVALID_QUANTITY_LOT: KL đặt không hợp lệ
PRICE_MUST_GREATER_THAN_OR_EQUAL_TO_FLOOR_PRICE: Giá đặt không hợp lệ
PRICE_MUST_LESS_THAN_OR_EQUAL_TO_CEILING_PRICE: Giá đặt không hợp lệ
INVALID_PRICE_LOT: Giá đặt không hợp lệ
SYMBOL_IS_NOT_IN_MARGIN_BASKET: Mã không nằm trong rổ margin
4.7 Danh sách deal nắm giữ
Query param
account
Mã tiểu khoản
Resquest header
Authorization
Bearer <JWT token>
Resquest body
N/A
Response body
deals
Deal List
Danh sách Deal nắm giữ
Deal
id
long
Id deal
symbol
string
Mã chứng khoán
accountNo
string
Số tiểu khoản
orderIds
[]string
danh sách Order Id thuộc deal
status
string
Trạng thái của deal, thuộc các giá trị sau:
OPEN: đang mở
CLOSED: đã đóng
loanPackageId
string
mã gói vay
side
string
Bên mua/bán
NB: mua
NS: bán
secure
Double
cọc hiện tại của deal
accumulateQuantity
integer
Khối lượng mở tích lũy
tradeQuantity
integer
Khối lượng có thể giao dịch
closedQuantity
integer
khối lượng đã đóng
t0ReceivingQuantity
integer
t1ReceivingQuantity
integer
t2ReceivingQuantity
integer
costPrice
double
Giá vốn hiện tại của deal
averageCostPrice
double
Giá mở cửa trung bình của deal
marketPrice
double
Giá thị trường
realizedProfit
double
Lãi lỗ phần đã chốt, chưa bao gồm phí thuế
realizedTotalTaxAndFee
double
Phí thuế của phần đã chốt, bao gồm cả mở và đóng
collectedBuyingFee
double
Tổng phí mua
collectedBuyingTax
doulbe
Tổng thuế mua
collectedSellingFee
doulbe
tổng phí bán
collectedSellingTax
doulbe
tổng thuế bán
collectedStockTransferFee
double
tổng phí chuyển khoản chứng khoán khi bán
collectedInterestFee
double
Tổng lãi vay khi dùng margin
estimateRemainTaxAndFee
doulbe
phí thuế đóng tạm tính cho phần còn lại của deal, tính theo giá thị trường
unrealizedProfit
doulbe
lãi lỗ tạm tính cho phần còn lại của deal, tính theo giá thị trường
breakEvenPrice
double
giá hòa vốn
dividendReceivingQuantity
integer
dividendQuantity
integer
cashReceiving
double
rightReceivingCash
double
t0ReceivingCash
double
t1RecevingCash
double
t2RecevingCash
double
createdDate
string
ISO UTC 8601, format datetime
modifiedDate
string
datetime
currentDebt
double
nợ của phần đang mở
currentInterest
double
lãi của phần đang mở
unrealizedOpenTaxAndFee
double
phí thuế mua của phần đang mở
currentDebtExcludeToCollect
double
nợ chưa trả của deal
accumulateSecure
double
accumulateDebt
double
averageClosePrice
double
currentInterestExcludeToCollect
double
lãi chưa trả của deal
5. Giao dịch phái sinh
5.1 Danh sách gói vay
Path param
account
Mã tiểu khoản
Resquest header
Authorization
Bearer <JWT token>
Response body
loanPackages
Loan Package List
Danh sách các gói vay
Loan Package
id
Integer
Mã gói vay
name
String
Tên gói vay
source
String
Tên gói vay
initialRate
Double
Tỷ lệ ký quỹ ban đầu
maintenanceRate
Double
Tỷ lệ duy trì (call margin)
liquidRate
Double
Tỷ lệ xử lý (bán xử lý)
cosponsorInitialRate
Double
Tỉ lệ an toàn
cosponsorMaintenanceRate
Double
Tỉ lệ cảnh báo
cosponsorLiquidRate
Double
Tỉ lệ xử lý
description
String
Mô tả thêm
Model: tradingFee
id
Integer
Mã biểu phí
name
String
Tên biểu phí
scope
String
Tính chất biểu phí là 1 trong 2 giá trị:
PRODUCTSản phẩmCUSTOMERKhách hàng
channel
String
Kênh áp dụng
createdDate
datetime
Ngày tạo biểu phí
modifiedDate
datetime
Ngày thay đổi biểu phí gần nhất
schemaType
String
Biểu phí là 1 trong 2 giá trị:
FIXEDCố địnhPROGRESSIVELuỹ tiến
tradingFee
Double
Mức phí GD mở/đóng
dailyCloseTradingFee
Double
Mức phí GD đóng luôn trong ngày
schemaType = FIXED Cố định
fixedTradingFee
Double
Mức phí GD mở/đóng cố định
fixedDailyCloseTradingFee
Double
Mức phí GD đóng luôn trong ngày cố định
schemaType = PROGRESSIVE Luỹ tiến
fromQuantity
Double
Từ giá trị
toQuantity
Double
Đến giá trị
fee
Double
Mức phí
Model: products
id
Integer
Mã sản phẩm
name
String
Tên sản phẩm
symbolTypes
String
Loại hợp đồng
initialRate
Double
Tỷ lệ ký quỹ ban đầu
maintenanceRate
Double
Tỷ lệ duy trì (call margin)
liquidRate
Double
Tỷ lệ xử lý (bán xử lý)
symbolTypes
Array
Danh sách các loại hợp đồng
VN30F1M: Loại mã Vn30 1 tháng
VN30F2M: Loại mã VN30 2 tháng
VN30F1Q: Loại mã VN30 1 quý
VN30F2Q: Loại mã VN30 2 quý
V100F1M: Loại mã VN100 1 tháng
V100F2M: Loại mã VN100 2 tháng
V100F1Q: Loại mã VN100 1 quý
V100F2Q: Loại mã VN100 2 quý
5.2 Sức mua, sức bán
Lấy thông tin sức mua sức bán tối đa theo tiểu khoản, mã, giá và gói vay
Path param
account
Mã tiểu khoản
Query param
loanPackageId
Mã gói vay (lấy Mã gói vay cần trong danh sách gói vay mục 5.1)
symbol
Mã, ví dụ: VN30F2306
price
Giá
Resquest header
Authorization
Bearer <JWT token>
Resquest body
N/A
Response body
investorAccountId
String
Mã tiểu khoản
ppse
Double
Sức mua
price
Double
Giá tính sức mua
qmaxLong
Double
Số lượng mua tối đa (LONG)
qmaxShort
Double
Số lượng bán tối đa (SHORT)
5.3 Đặt lệnh
Resquest header
Authorization
Bearer <JWT token>
Trading-Token
Trading-token lấy ở xác thực bước 2 (Mục 2.2)
Resquest body
symbol
String
Mã ví dụ VN30F2306
side
String
Lệnh mua: NB, Lệnh bán:NS
orderType
String
Loại lệnh: LO/ /MTL/ATO/ATC/MOK/MAK
price
Double
Giá
quantity
Double
Khối lượng đặt
loanPackageId
Double
Mã gói vay, lấy gói vay muốn đặt từ api danh sách gói vay
accountNo
String
Mã tiểu khoản
Response body
id
integer
Số hiệu lệnh
side
string
Lệnh Mua/Bán thuộc các giá trị sau:
- NB: Mua
- NS: Bán
accountNo
string
Số tiểu khoản
investorId
string
Mã Khách hàng
symbol
string
Mã
price
number
Giá đặt
quantity
integer
Khối lượng đặt
orderType
string
Loại lệnh, thuộc các giá trị sau:
- LO: lệnh giới hạn
- MTL: lệnh thị trường
- ATC/ATO: lệnh khớp phiên định kỳ đóng cửa/mở cửa
- PLO: lệnh khớp lệnh sau giờ
orderStatus
string
Trạng thái lệnh, thuộc các giá trị sau đây:
- pending: chờ gửi
- pendingNew: chờ gửi
- new: chờ khớp
- partiallyFilled: khớp một phần
- filled: khớp toàn bộ
- rejected: bị từ chối
- expired: bị hết hạn trong phiên
- doneForDay: lệnh hết hiệu lực khi hết phiên
fillQuantity
integer
Khối lượng đã khớp
lastQuantity
integer
Khối lượng của lần khớp gần nhất của lệnh
lastPrice
number
Giá khớp của lần khớp gần nhất của lệnh
averagePrice
double
Giá khớp trung bình của lệnh
transDate
string
Ngày giao dịch, theo định dạng ISO UTC 8601 format date
Ví dụ: 2022-07-15
createdDate
string
Thời điểm (ngày giờ) đặt lệnh, theo định dạng ISO UTC 8601 format datetime
Ví dụ: 2022-07-15T10:00:00.111+07:00
modifiedDate
string
Thời điểm (ngày giờ) thay đổi cuối cùng của lệnh
taxRate
double
Tỷ lệ thuế lệnh chịu
feeRate
double
Tỷ lệ phí lệnh chịu
leaveQuantity
integer
Khối lượng chưa khớp của lệnh
canceledQuantity
integer
Khối lượng đã huỷ của lệnh
priceSecure
double
Giá cọc cho lệnh
custody
string
Số lưu ký của tiểu khoản đặt lệnh
channel
string
Kênh đặt lệnh
loanPackageId
integer
Id gói vay
initialRate
number
Tỷ lệ ký quỹ theo gói vay tương ứng với lệnh
error
string
Mã lỗi
5.4 Sổ lệnh
Query param
account
Mã tiểu khoản
Resquest header
Authorization
Bearer <JWT token>
Response body
orders
Order list
Danh sách order
Order
id
integer
Số hiệu lệnh
side
string
Lệnh Mua/Bán thuộc các giá trị sau:
- NB: Mua
- NS: Bán
accountNo
string
Số tiểu khoản
investorId
string
Mã Khách hàng
symbol
string
Mã
price
number
Giá đặt
quantity
integer
Khối lượng đặt
orderType
string
Loại lệnh, thuộc các giá trị sau:
- LO: lệnh giới hạn
- MTL: lệnh thị trường
- ATC/ATO: lệnh khớp phiên định kỳ đóng cửa/mở cửa
- PLO: lệnh khớp lệnh sau giờ
orderStatus
string
Trạng thái lệnh, thuộc các giá trị sau đây:
- pending: chờ gửi
- pendingNew: chờ gửi
- new: chờ khớp
- partiallyFilled: khớp một phần
- filled: khớp toàn bộ
- rejected: bị từ chối
- expired: bị hết hạn trong phiên
- doneForDay: lệnh hết hiệu lực khi hết phiên
fillQuantity
integer
Khối lượng đã khớp
lastQuantity
integer
Khối lượng của lần khớp gần nhất của lệnh
lastPrice
number
Giá khớp của lần khớp gần nhất của lệnh
averagePrice
double
Giá khớp trung bình của lệnh
transDate
string
Ngày giao dịch, theo định dạng ISO UTC 8601 format date
Ví dụ: 2022-07-15
createdDate
string
Thời điểm (ngày giờ) đặt lệnh, theo định dạng ISO UTC 8601 format datetime
Ví dụ: 2022-07-15T10:00:00.111+07:00
modifiedDate
string
Thời điểm (ngày giờ) thay đổi cuối cùng của lệnh
taxRate
double
Tỷ lệ thuế lệnh chịu
feeRate
double
Tỷ lệ phí lệnh chịu
leaveQuantity
integer
Khối lượng chưa khớp của lệnh
canceledQuantity
integer
Khối lượng đã huỷ của lệnh
priceSecure
double
Giá cọc cho lệnh
custody
string
Số lưu ký của tiểu khoản đặt lệnh
channel
string
Kênh đặt lệnh
loanPackageId
integer
Id gói vay
initialRate
number
Tỷ lệ ký quỹ theo gói vay tương ứng với lệnh
error
string
Mã lỗi
5.5 Chi tiết lệnh
Path param
id
Số hiệu lệnh
Query param
account
Mã tiểu khoản
Resquest header
Authorization
Bearer <JWT token>
Response body
id
integer
Số hiệu lệnh
side
string
Lệnh Mua/Bán thuộc các giá trị sau:
- NB: Mua
- NS: Bán
accountNo
string
Số tiểu khoản
investorId
string
Mã Khách hàng
symbol
string
Mã
price
number
Giá đặt
quantity
integer
Khối lượng đặt
orderType
string
Loại lệnh, thuộc các giá trị sau:
- LO: lệnh giới hạn
- MTL: lệnh thị trường
- ATC/ATO: lệnh khớp phiên định kỳ đóng cửa/mở cửa
- PLO: lệnh khớp lệnh sau giờ
orderStatus
string
Trạng thái lệnh, thuộc các giá trị sau đây:
- pending: chờ gửi
- pendingNew: chờ gửi
- new: chờ khớp
- partiallyFilled: khớp một phần
- filled: khớp toàn bộ
- rejected: bị từ chối
- expired: bị hết hạn trong phiên
- doneForDay: lệnh hết hiệu lực khi hết phiên
fillQuantity
integer
Khối lượng đã khớp
lastQuantity
integer
Khối lượng của lần khớp gần nhất của lệnh
lastPrice
number
Giá khớp của lần khớp gần nhất của lệnh
averagePrice
double
Giá khớp trung bình của lệnh
transDate
string
Ngày giao dịch, theo định dạng ISO UTC 8601 format date
Ví dụ: 2022-07-15
createdDate
string
Thời điểm (ngày giờ) đặt lệnh, theo định dạng ISO UTC 8601 format datetime
Ví dụ: 2022-07-15T10:00:00.111+07:00
modifiedDate
string
Thời điểm (ngày giờ) thay đổi cuối cùng của lệnh
taxRate
double
Tỷ lệ thuế lệnh chịu
feeRate
double
Tỷ lệ phí lệnh chịu
leaveQuantity
integer
Khối lượng chưa khớp của lệnh
canceledQuantity
integer
Khối lượng đã huỷ của lệnh
priceSecure
double
Giá cọc cho lệnh
custody
string
Số lưu ký của tiểu khoản đặt lệnh
channel
string
Kênh đặt lệnh
loanPackageId
integer
Id gói vay
initialRate
number
Tỷ lệ ký quỹ theo gói vay tương ứng với lệnh
error
string
Mã lỗi
5.6 Huỷ lệnh
Path param
id
Số hiệu lệnh
Query param
account
Mã tiểu khoản
Resquest header
Authorization
Bearer <JWT token>
Trading-Token
Trading-token lấy ở xác thực bước 2 (Mục 2.2)
Resquest body
N/A
Response body
id
integer
Số hiệu lệnh
side
string
Lệnh Mua/Bán thuộc các giá trị sau:
- NB: Mua
- NS: Bán
accountNo
string
Số tiểu khoản
investorId
string
Mã Khách hàng
symbol
string
Mã
price
number
Giá đặt
quantity
integer
Khối lượng đặt
orderType
string
Loại lệnh, thuộc các giá trị sau:
- LO: lệnh giới hạn
- MTL: lệnh thị trường
- ATC/ATO: lệnh khớp phiên định kỳ đóng cửa/mở cửa
- PLO: lệnh khớp lệnh sau giờ
orderStatus
string
Trạng thái lệnh, thuộc các giá trị sau đây:
- pending: chờ gửi
- pendingNew: chờ gửi
- new: chờ khớp
- partiallyFilled: khớp một phần
- filled: khớp toàn bộ
- rejected: bị từ chối
- expired: bị hết hạn trong phiên
- doneForDay: lệnh hết hiệu lực khi hết phiên
fillQuantity
integer
Khối lượng đã khớp
lastQuantity
integer
Khối lượng của lần khớp gần nhất của lệnh
lastPrice
number
Giá khớp của lần khớp gần nhất của lệnh
averagePrice
double
Giá khớp trung bình của lệnh
transDate
string
Ngày giao dịch, theo định dạng ISO UTC 8601 format date
Ví dụ: 2022-07-15
createdDate
string
Thời điểm (ngày giờ) đặt lệnh, theo định dạng ISO UTC 8601 format datetime
Ví dụ: 2022-07-15T10:00:00.111+07:00
modifiedDate
string
Thời điểm (ngày giờ) thay đổi cuối cùng của lệnh
taxRate
double
Tỷ lệ thuế lệnh chịu
feeRate
double
Tỷ lệ phí lệnh chịu
leaveQuantity
integer
Khối lượng chưa khớp của lệnh
canceledQuantity
integer
Khối lượng đã huỷ của lệnh
priceSecure
double
Giá cọc cho lệnh
custody
string
Số lưu ký của tiểu khoản đặt lệnh
channel
string
Kênh đặt lệnh
loanPackageId
integer
Id gói vay
initialRate
number
Tỷ lệ ký quỹ theo gói vay tương ứng với lệnh
error
string
Mã lỗi
5.7 Sửa lệnh
a. Kiểm tra sức mua trước khi sửa lệnh
Path and query param
account
Số tiểu khoản
price
Giá đặt mới
id
Số hiệu lệnh của lệnh cần sửa
Resquest header
Authorization
Bearer <JWT token>
Response body
qmaxLong
integer
Nếu lệnh sửa là lệnh Mua thì đây là khối lượng tối đa lệnh được sửa ở mức Giá đặt mới
qmaxShort
integer
Nếu lệnh sửa là lệnh Bán thì đây là khối lượng tối đa lệnh được sửa ở mức Giá đặt mới
b. Sửa lệnh V2
Path param
id
Số hiệu lệnh của lệnh cần sửa
Query param
account
Số tiểu khoản
Resquest header
Authorization
Bearer <JWT token>
Trading-Token
Trading-token lấy ở xác thực bước 2 (Mục 2.2)
Resquest body
price
Giá đặt mới
quantity
Khối lượng đặt mới
Response body
id
integer
Số hiệu lệnh
side
string
Lệnh Mua/Bán thuộc các giá trị sau:
- NB: Mua
- NS: Bán
accountNo
string
Số tiểu khoản
investorId
string
Mã Khách hàng
symbol
string
Mã
price
number
Giá đặt
quantity
integer
Khối lượng đặt
orderType
string
Loại lệnh
orderStatus
string
Trạng thái lệnh
fillQuantity
integer
Khối lượng đã khớp
lastQuantity
integer
Khối lượng của lần khớp gần nhất của lệnh
lastPrice
number
Giá khớp của lần khớp gần nhất của lệnh
averagePrice
double
Giá khớp trung bình của lệnh
transDate
string
Ngày giao dịch, theo định dạng ISO UTC 8601 format date
Ví dụ: 2022-07-15
createdDate
string
Thời điểm (ngày giờ) đặt lệnh, theo định dạng ISO UTC 8601 format datetime
Ví dụ: 2022-07-
15T10:00:00.111+07:00
modifiedDate
string
Thời điểm (ngày giờ) thay đổi cuối cùng của lệnh
taxRate
double
Tỷ lệ thuế lệnh chịu
feeRate
double
Tỷ lệ phí lệnh chịu
leaveQuantity
integer
Khối lượng chưa khớp của lệnh
canceledQuantity
integer
Khối lượng đã huỷ của lệnh
priceSecure
double
Giá cọc cho lệnh
custody
string
Số lưu ký của tiểu khoản đặt lệnh
channel
string
Kênh đặt lệnh
loanPackageId
integer
Id gói vay
initialRate
number
Tỷ lệ ký quỹ theo gói vay tương ứng với lệnh
error
string
Mã lỗi
5.8 Danh sách deal nắm giữ
GET
Query param
account
Mã tiểu khoản
Resquest header
Authorization
Bearer <JWT token>
Resquest body
N/A
Response body
data
Deal List
Danh sách Deal nắm giữ
Deal
id
long
Id deal
symbol
string
Mã chứng khoán
accountNo
string
Số tiểu khoản
status
string
Trạng thái của deal, thuộc các giá trị sau:
OPEN: đang mở
CLOSED: đã đóng
loanPackageId
string
mã gói vay
side
string
Bên mua/bán
NB: mua
NS: bán
secure
Double
cọc hiện tại của deal
accumulateQuantity
integer
Khối lượng mở tích lũy
closedQuantity
integer
khối lượng đã đóng
openQuantity
integer
Khối lương mở
closedQuantity
integer
Khối lượng đóng
overNightQuantity
integer
Khối lượng giữ qua đêm
breakEvenPrice
Double
Giá hoà vốn
costPrice
Double
Giá vốn toàn bộ open quantity
costPriceVM
Double
Giá vốn VM (theo gía hàng ngày)
averageCostPrice
Double
Giá mở trung bình
averageClosePrice
Double
Giá đóng trung bình
totalUnrealizedProfit
Double
Lãi mở (chưa bao gồm phí thuế)
totalUnrealizedTaxAndFee
Double
Phí thuế phần mổ
totalRealizedProfit
Double
Lãi đã đóng (chưa bao gồm phí thuế)
totalRealizedTaxAndFee
Double
Phí thuế phần đã đóng
estimateRemainFee
Double
Phí ước tính còn lại
estimateRemainTax
Double
Thuế ước tính còn lại
totalRealizedPositionFee
Double
Phí vị thế phần đã đóng
totalUnrealizedPositionFee
Double
Phí vị thế phần mở
maturityFee
Double
Phí đáo hạn
createdDate
Date
Giờ tạo
modifiedDate
Date
Giờ cập nhật
marketPrice
Double
Giá thị trường
5.9 Cài chốt lời cắt lỗ theo Deal
https://api.dnse.com.vn/derivative-deal-risk/pnl-configs/{dealId}
POST
Path param
dealId
Mã deal
Resquest header
Authorization
string
Bearer <JWT token>
trading-token
string
Trading token lấy từ hệ thống auth
Resquest body
takeProfitEnabled
Boolean
Trạng thái bật/ tắt cài đặt Chốt lời
true: bật chốt lời
false: tắt chốt lời
stopLossEnabled
Boolean
Trạng thái bật/ tắt cài đặt Cắt lỗ
true: bật chốt lời
false: tắt chốt lời
takeProfitStrategy
String
Kiểu cấu hình chốt lời
PNL_RATE: kích hoạt chốt lời theo tỷ lệ lãi
DELTA_PRICE : kích hoạt chốt lời theo khoảng điểm
stopLossStrategy
String
Kiểu cấu hình cắt lỗ
PNL_RATE: kích hoạt cắt lỗ theo tỷ lệ lãi
DELTA_PRICE : kích hoạt cắt lỗ theo khoảng điểm
takeProfitOrderType
String
Kiểu cấu hình giá đặt lệnh chốt lời
FASTEST : đặt lệnh tp khớp ngay
DELTA_PRICE : đặt lệnh tp theo giá tuỳ chọn
stopLossOrderType
String
Kiểu cấu hình giá đặt lệnh cắt lỗ
FASTEST : đặt lệnh sl khớp ngay
DELTA_PRICE : đặt lệnh sl theo giá tuỳ chọn
takeProfitRate
Double
Tỷ lệ lãi kích hoạt chốt lời Hệ thống chỉ ghi nhận trường này nếu sử dụng takeProfitStrategy: PNL_RATE
0< x
stopLossRate
Double
Tỷ lệ lỗ kích hoạt cắt lỗ Hệ thống chỉ ghi nhận trường này nếu sử dụng stopLossStrategy: PNL_RATE
-1 <= x < 0
takeProfitDeltaPrice
Double
Khoảng điểm kích hoạt chốt lời
Hệ thống chỉ ghi nhận trường này nếu sử dụng takeProfitStrategy: DELTA_PRICE
0 < x
takeProfitDeltaPrice
Double
Khoảng điểm kích hoạt cắt lỗ
Hệ thống chỉ ghi nhận trường này nếu sử dụng
stopLossStrategy :
DELTA_PRICE
0 < x
takeProfitOrderDeltaPrice
Double
Khoảng điểm tuỳ chỉnh của gía đặt so với giá kích hoạt
x là dạng số, mang dấu âm hoặc dương
stopLossOrderDeltaPrice
Double
Khoảng điểm tuỳ chỉnh của gía đặt so với giá kích hoạt
x là dạng số, mang dấu âm hoặc dương
Response body
id
int
Mã bản ghi
dealId
int
Mã deal
accountNo
string
Tiểu khoản
status
string
Trạng thái cài đặt của cấu hình hệ thống
ACTIVE
takeProfitEnabled
Boolean
Trạng thái bật/ tắt cài đặt Chốt lời
true: bật chốt lời
false: tắt chốt lời
stopLossEnabled
Boolean
Trạng thái bật/ tắt cài đặt Cắt lỗ
true: bật chốt lời
false: tắt chốt lời
takeProfitStrategy
string
Kiểu cấu hình chốt lời
PNL_RATE: kích hoạt chốt lời theo tỷ lệ lãi
DELTA_PRICE : kích hoạt chốt lời theo khoảng điểm
stopLossStrategy
string
Kiểu cấu hình cắt lỗ
PNL_RATE: kích hoạt cắt lỗ theo tỷ lệ lãi
DELTA_PRICE : kích hoạt cắt lỗ theo khoảng điểm
takeProfitOrderType
string
Kiểu cấu hình giá đặt lệnh chốt lời
FASTEST : đặt lệnh tp khớp ngay
DELTA_PRICE : đặt lệnh tp theo giá tuỳ chọn
stopLossOrderType
string
Kiểu cấu hình giá đặt lệnh cắt lỗ
FASTEST : đặt lệnh sl khớp ngay
DELTA_PRICE : đặt lệnh sl theo giá tuỳ chọn
takeProfitRate
Double
Tỷ lệ lãi kích hoạt chốt lời
0< x
stopLossRate
Double
Tỷ lệ lỗ kích hoạt cắt lỗ
-1 <= x < 0
takeProfitDeltaPrice
Double
Khoảng điểm kích hoạt chốt lời
0 < x
takeProfitDeltaPrice
Double
Khoảng điểm kích hoạt cắt lỗ
0 < x
takeProfitOrderDeltaPrice
Double
Khoảng điểm tuỳ chỉnh của gía đặt so với giá kích hoạt
x là dạng số, mang dấu âm hoặc dương
stopLossOrderDeltaPrice
Double
Khoảng điểm tuỳ chỉnh của gía đặt so với giá kích hoạt
x là dạng số, mang dấu âm hoặc dương
autoHandleWarning
Boolean
Hiện tại chưa sử dụng tính năng này
Mặc định: true
createdDate
Date time
Thời gian cài cấu hình
Date time
modifiedDate
Date time
Thời gian lần cập nhật cấu hình cuối
Date time
5.10 Cài chốt lời cắt lỗ theo Account
https://api.dnse.com.vn/derivative-deal-risk/account-pnl-configs/{accountNo}
PATCH
Path param
accountNo
Số tiểu khoản
Resquest header
Authorization
string
Bearer <JWT token>
trading-token
string
Trading token lấy từ hệ thống auth
Resquest body
status
Trạng thái cài đặt của cấu hình hệ thống
Cần truyền giá trị ‘ACTIVE’ lên
takeProfitEnabled
Boolean
Trạng thái bật/ tắt cài đặt Chốt lời
true: bật chốt lời
false: tắt chốt lời
stopLossEnabled
Boolean
Trạng thái bật/ tắt cài đặt Cắt lỗ
true: bật chốt lời
false: tắt chốt lời
takeProfitStrategy
String
Kiểu cấu hình chốt lời
PNL_RATE: kích hoạt chốt lời theo tỷ lệ lãi
DELTA_PRICE : kích hoạt chốt lời theo khoảng điểm
stopLossStrategy
String
Kiểu cấu hình cắt lỗ
PNL_RATE: kích hoạt cắt lỗ theo tỷ lệ lãi
DELTA_PRICE : kích hoạt cắt lỗ theo khoảng điểm
takeProfitRate
Double
Tỷ lệ lãi kích hoạt chốt lời Hệ thống chỉ ghi nhận trường này nếu sử dụng takeProfitStrategy: PNL_RATE
0< x
stopLossRate
Double
Tỷ lệ lỗ kích hoạt cắt lỗ Hệ thống chỉ ghi nhận trường này nếu sử dụng stopLossStrategy: PNL_RATE
-1 <= x < 0
takeProfitDeltaPrice
Double
Khoảng điểm kích hoạt chốt lời
Hệ thống chỉ ghi nhận trường này nếu sử dụng takeProfitStrategy: DELTA_PRICE
0 < x
takeProfitDeltaPrice
Double
Khoảng điểm kích hoạt cắt lỗ
Hệ thống chỉ ghi nhận trường này nếu sử dụng
stopLossStrategy :
DELTA_PRICE
0 < x
Response body
accountNo
int
Số tiểu khoản
autoHandleWarning
int
Trạng thái bật/ tắt tính năng tự động tăng tỷ lệ deal
status
string
Trạng thái cài đặt của cấu hình hệ thống
ACTIVE
takeProfitEnabled
Boolean
Trạng thái bật/ tắt cài đặt Chốt lời
true: bật chốt lời
false: tắt chốt lời
stopLossEnabled
Boolean
Trạng thái bật/ tắt cài đặt Cắt lỗ
true: bật chốt lời
false: tắt chốt lời
takeProfitStrategy
string
Kiểu cấu hình chốt lời
PNL_RATE: kích hoạt chốt lời theo tỷ lệ lãi
DELTA_PRICE : kích hoạt chốt lời theo khoảng điểm
stopLossStrategy
string
Kiểu cấu hình cắt lỗ
PNL_RATE: kích hoạt cắt lỗ theo tỷ lệ lãi
DELTA_PRICE : kích hoạt cắt lỗ theo khoảng điểm
takeProfitOrderType
string
Kiểu cấu hình giá đặt lệnh chốt lời
FASTEST : đặt lệnh tp khớp ngay
DELTA_PRICE : đặt lệnh tp theo giá tuỳ chọn
stopLossOrderType
string
Kiểu cấu hình giá đặt lệnh cắt lỗ
FASTEST : đặt lệnh sl khớp ngay
DELTA_PRICE : đặt lệnh sl theo giá tuỳ chọn
takeProfitRate
Double
Tỷ lệ lãi kích hoạt chốt lời
0< x
stopLossRate
Double
Tỷ lệ lỗ kích hoạt cắt lỗ
-1 <= x < 0
takeProfitDeltaPrice
Double
Khoảng điểm kích hoạt chốt lời
0 < x
takeProfitDeltaPrice
Double
Khoảng điểm kích hoạt cắt lỗ
0 < x
takeProfitOrderDeltaPrice
Double
Khoảng điểm tuỳ chỉnh của gía đặt so với giá kích hoạt
x là dạng số, mang dấu âm hoặc dương
stopLossOrderDeltaPrice
Double
Khoảng điểm tuỳ chỉnh của gía đặt so với giá kích hoạt
x là dạng số, mang dấu âm hoặc dương
autoHandleWarning
Boolean
Hiện tại chưa sử dụng tính năng này
Mặc định: true
createdDate
Date time
Thời gian cài cấu hình
Date time
modifiedDate
Date time
Thời gian lần cập nhật cấu hình cuối
Date time
5.11 Đóng deal
Query parameters
adeal_id
Mã hiệu deal (lấy từ 5.7)
Request header
Authorization
Bearer <JWT Token>
Trading-Token
Token được cấp sau khi xác thực OTP
5.12 Nộp ký quỹ phái sinh
Request header
authorization
string
Bearer <JWT token>
smart-otp
string
Mã smart OTP lấy từ ứng dụng Entrade X
Request body
accountNo
String
Mã tiểu khoản
sourceAccountNo
String
Mã tiểu khoản
loanPackageId
Int
Mã gói vay, lấy gói vay muốn đặt từ api danh sách gói vay
amount
Long
Số tiền ký quỹ
via
String
Kênh thực hiện giao dịch
5.13 Rút ký quỹ phái sinh
Request header
authorization
string
Bearer <JWT token>
smart-otp
string
Mã smart OTP lấy từ ứng dụng Entrade X
Request body
accountNo
String
Mã tiểu khoản
sourceAccountNo
String
Mã tiểu khoản
loanPackageId
Int
Mã gói vay, lấy gói vay muốn đặt từ api danh sách gói vay
amount
Long
Số tiền ký quỹ
via
String
Kênh thực hiện giao dịch
5.14 Tài sản phái sinh
Khách hàng có thể xem thông tin TS ròng và Cọc còn lại phái sinh.
Hiển thị Tài sản ròng của tiểu khoản đã chọn ở Menu với thông tin như sau:
Cọc còn lại
PP0
Cọc đã sử dụng
= vsdSecure + DNSESecure - PP0 + awaitingDepositCash Là cọc để đảm bảo cho: Lệnh đang đặt, Deal, Nghĩa vụ phí thuế, Ứng nghĩa vụ PS
TT cuối ngày
= Lãi/lỗ chưa chốt + Lãi/lỗ đã chốt - Phí thuế giao dịch trong ngày - Phí vị thế trong ngày - Phí đáo hạn + Tiền lãi Vm chờ về
Trong đó:
Lãi/lỗ chưa chốt deal NB = (marketPrice - costPriceVM)*openQuantity*M
Lãi/lỗ chưa chốt deal NS = (costPriceVM - marketPrice)*openQuantity*M
Lãi/lỗ đã chốt = dailyRealizedProfit
Phí thuế giao dịch trong ngày = dailyRealizedTradingFee + dailyRealizedTradingTax
Phí vị thế trong ngày = positionFee
Phí đáo hạn = maturityFee
Tiền lãi Vm chờ về= profitVmReceiving
Phí thuế tạm giữ
holdCollateralFee + holdDailyRealizedTradingTaxAndFee
Tổng ứng chưa hoàn
totalLoanDebt
Tài sản ròng PS
Tài sản PS = Cọc còn lại + Cọc đã sử dụng + TT cuối ngày + Phí thuế tạm giữ - Tổng ứng chưa hoàn + Tiền cọc chờ nộp rút
M: 100,000
Các trường highlight xanh lấy ở cashAccount
Các trường highlight đỏ lấy ở API get pp0
Các trường highlight vàng lấy ở API GET deals: Mục 5.7 Danh sách Deal nắm giữ
5.15 Mô tả chi tiết Deal Phái sinh
Màn hình Chi tiết Deal được chia làm 4 nhóm như sau:

Thông tin chi tiết deal trong trường hợp deal Đang mở:
Nhóm 1
Thông tin mã
symbol, marketPrice, %price,…
Vị thế
side
NB: Mua
NS: Bán
Trạng thái
stauts
OPEN - Đang mở
Tỷ lệ cọc
initialRate
Tỷ lệ cọc hiện tại
dealRate = Tài sản ròng của deal/ Tài sản theo giá thị trường của deal
(Lãi chưa chốt không được tính vào tỷ lệ cọc do quy định của VSD)
= (Cọc đã nộp - Nợ gốc thấu chi - Lãi thấu chi- Phí, thuế GD đóng dự thu + Lỗ chưa chốt)/Tổng tài sản
Nếu Deal Side = NB dealRate = {secure - overDraftUnrealizedPrincipal - overDraftUnrealizedInterest - estimateRemainFee - estimateRemainTax + min[0; (marketPrice -costPriceVM)*openQuantity * M ]}/(openQuantity * marketPrice * M)
Nếu Deal Side = NS dealRate = {secure - overDraftUnrealizedPrincipal - overDraftUnrealizedInterest - estimateRemainFee - estimateRemainTax + min[0; (costPriceVM - marketPrice)*openQuantity * M ]}/(openQuantity * marketPrice * M)
Logic hiển thị màu dealRate:
dealRate >= maintenanceRate → Tỷ lệ an toàn → Màu xanh
liquidRate =< dealRate < maintenanceRate → Tỷ lệ cảnh báo → Màu vàng
dealRate < liquidRate → Tỷ lệ xử lý → Màu đỏ
Hiển thị realtime theo marketPrice
Tiểu khoản
aftypeName
Hiển thị tên tiểu khoản với tài khoản >1 tiểu khoản
Tài khoản có 1 tiểu khoản không hiển thị
Thời gian mở
createdDate
Hiển thị thời gian mở định dạng dd/mm/yyyy - hh:mi:ss
Giá hoà vốn
breakEvenPrice
tooltip: Đã được trừ phí và thuế
KL mở
openQuantity/accumulateQuantity
Hiển thị KL mở/Tổng KL
Lãi chưa chốt
= Lãi/lỗ gross - Phí, thuế GD mở - Phí, thuế GD đóng dự thu - Lãi thấu chi - Phí qua đêm (Phí thuế tính trên phần mở)
size NB
=(marketPrice - costPriceVM)*openQuantity*M - estimateRemainFee - estimateRemainTax - totalUnrealizedInterest - totalUnrealizedPositionFee - totalUnrealizedTaxAndFee
size NS
=(costPriceVM - marketPrice)*openQuantity*M - estimateRemainFee - estimateRemainTax -totalUnrealizedInterest - totalUnrealizedPositionFee - totalUnrealizedTaxAndFee
Trong đó:
Làm tròn lấy phần nguyên. VD: 10000.5 → 10001, 10000.4 → 10000
Hiển thị realtime theo marketPrice
Lãi đã chốt
= Lãi mở đã thanh toán + Lãi đóng
Tooltip: Lãi đã chốt = Lãi mở đã thanh toán + Lãi đóng
Button Nộp cọc vào deal
switch popup Thêm cọc vào deal, auto fill Mã, gói vay theo chi tiết deal đã chọn
Button Giao dịch
Giao dịch
switch màn Đặt lệnh, auto fill Mã, gói vay theo chi tiết deal đã chọn
Nhóm 2
KL mở
openQuantity
Cọc ban đầu
secure
Cọc hiện tại
= Cọc đã nộp + Lãi/lỗ chưa chốt - Phí, thuế GD mở - Phí, thuế GD đóng dự tính - Phí vị thế - Lãi thấu chi (Phí, thuế tính trên phần mở)
Size NB:
= secure + (marketPrice - costPrice)*openQuantity*M - totalUnrealizedTaxAndFee- estimateRemainFee - estimateRemainTax - totalUnrealizedInterest - totalUnrealizedPositionFee
Size NS:
= secure + (costPrice - marketPrice)*openQuantity*M - totalUnrealizedTaxAndFee - estimateRemainFee - estimateRemainTax - totalUnrealizedInterest - totalUnrealizedPositionFee
Trong đó:
Làm tròn lấy phần nguyên. VD: 10000.5 → 10001, 10000.4 → 10000
Realtime theo marketPrice
Phí, thuế GD
= Phí, thuế GD mở + Phí, thuế GD đóng dự tính
= totalUnrealizedTaxAndFee + estimateRemainFee + estimateRemainTax
Phí qua đêm
= totalUnrealizedPositionFee
Lãi mở
Lãi của phần khối lượng mở
= Lãi/lỗ gross - Phí, thuế GD mở - Phí, thuế GD đóng dự tính - Phí vị thế - Lãi thấu chi (Phí, thuế tính trên phần mở)
= Lãi chưa chốt + Lãi mở đã thanh toán
side NB
= (marketPrice - costPrice)*openQuantity*M - totalUnrealizedTaxAndFee - estimateRemainFee - estimateRemainTax - (overDraftUnrealizedInterest + paidOverDraftInterest) -totalUnrealizedPositionFee
side NS
= (costPrice - marketPrice)*openQuantity*M - totalUnrealizedTaxAndFee - estimateRemainFee - estimateRemainTax - (overDraftUnrealizedInterest + paidOverDraftInterest) - totalUnrealizedPositionFee
Tooltip: Lãi mở = Lãi chưa chốt + Lãi mở đã thanh toán
Trong đó:
Làm tròn lấy phần nguyên. VD: 10000.5 → 10001, 10000.4 → 10000
% Lãi mở
= Lãi mở/(cọc ban đầu + cọc nộp thêm phần đang mở)*100
= Lãi mở/secure*100
Trong đó:
Làm tròn số sau dấu “,” 2 số. VD: 25.555 → 25.56%, 25.554 → 25.55%
Hiển thị realtime theo marketPrice
Lãi chưa chốt
= Lãi/lỗ gross - Phí, thuế GD mở - Phí, thuế GD đóng dự thu - Lãi thấu chi - Phí qua đêm (Phí thuế tính trên phần mở)
side NB
=(marketPrice - costPriceVM)*openQuantity*M - estimateRemainFee - estimateRemainTax - (overDraftUnrealizedInterest + paidOverDraftInterest) - totalUnrealizedPositionFee - totalUnrealizedTaxAndFee
side NS
=(costPriceVM - marketPrice)*openQuantity*M - estimateRemainFee - estimateRemainTax - (overDraftUnrealizedInterest + paidOverDraftInterest) - totalUnrealizedPositionFee -totalUnrealizedTaxAndFee
Trong đó:
Làm tròn lấy phần nguyên. VD: 10000.5 → 10001, 10000.4 → 10000
Hiển thị realtime theo marketPrice
Lãi mở đã thanh toán
Lãi mở đã thanh toán các ngày trước đó
= totalUnrealizedProfitVM
Tooltip: Khoản lãi đã thanh toán của khối lượng mở
Trong đó:
Làm tròn lấy phần nguyên. VD: 10000.5 → 10001, 10000.4 → 10000
Nhóm 3
KL đóng
= closedQuantity
Giá mở TB
= averageCostPrice
Giá đóng TB
= averageClosePrice
Phí, thuế GD
= totalRealizedTaxAndFee
Phí qua đêm
= totalRealizedPositionFee
Lãi đóng
Lãi của phần đã đóng
= Lãi đóng trong ngày + Lãi đóng trước ngày hiện tại (Phải ra số giống với sổ Deal)
= Lấy công thức Lãi đóng ở sổ deal
= Tổng lãi lỗ đã chốt - Phí, thuế GD - Phí vị thế - Lãi thấu chi (Phí thuế tính trên phần đóng)
= = totalRealizedProfit - totalRealizedTaxAndFee - overDraftRealizedInterest -totalRealizedPositionFee - maturityFee
Tooltip: Lãi đóng = Lãi đóng trong ngày + Lãi đóng đã thanh toán
Trong đó:
Làm tròn lấy phần nguyên. VD: 10000.5 → 10001, 10000.4 → 10000
% Lãi đóng
= Lãi đóng/(cọc đã chốt + cọc nộp thêm đã chốt)*100
= Lãi đóng/(accumulateSecure - secure) *100
Trong đó:
Làm tròn số sau dấu “,” 2 số. VD: 25.555 → 25.56%, 25.554 → 25.55%
Lãi đã chốt trong ngày
= Lãi đã chốt trong ngày - Phí, thuế GD mở - Phí, thuế GD đóng - Phí vụ thế (Phí thuế tính trên phần đóng trong ngày)
= realizedProfitVM - dailyRealizedTaxAndFee - dailyRealizedInterest - dailyRealizedPositionFee
Trong đó:
Làm tròn lấy phần nguyên. VD: 10000.5 → 10001, 10000.4 → 10000
Lãi đóng đã thanh toán
= Lãi đã chốt các ngày hôm trước - Phí, thuế GD mở - Phí, thuế GD đóng - Phí vụ thế (Phí thuế tính trên phần đóng các ngày hôm trước)
= = (totalRealizedProfit - realizedProfitVM) - (totalRealizedTaxAndFee + overDraftRealizedInterest + totalRealizedPositionFee - dailyRealizedTaxAndFee - dailyRealizedInterest - dailyRealizedPositionFee) - maturityFee
Trong đó:
Làm tròn lấy phần nguyên. VD: 10000.5 → 10001, 10000.4 → 10000
Nhóm 4
Tổng KL
accumulateQuantity
Tổng lãi
= Lãi mở + Lãi đóng
Làm tròn lấy phần nguyên. VD: 10000.5 → 10001, 10000.4 → 10000
Hiển thị realtime theo marketPrice
% Tổng lãi
= Tổng lãi / Tổng cọc đã nộp*100
= Tổng lãi/accumulateSecure*100
Làm tròn số sau dấu “,” 2 số. VD: 25.555 → 25.56%, 25.554 → 25.55%
Hiển thị realtime theo marketPrice
Thông tin chi tiết deal trong trường hợp deal Đã đóng:
Nhóm 1
Thông tin mã
symbol, marketPrice, %price, lệch (tooltip),…
Lấy giống header mã phái sinh hiện tại
Vị thế
side
NB: Mua
NS: Bán
Trạng thái
stauts
CLOSED - Đã đóng
Tỷ lệ cọc
initialRate
Tiểu khoản
aftypeName
Hiển thị tên tiểu khoản với tài khoản >1 tiểu khoản
Tài khoản có 1 tiểu khoản không hiển thị
Thời gian mở
createdDate
Hiển thị thời gian mở định dạng hh:mi - dd/mm/yyyy
Button Giao dịch
Giao dịch
switch màn Đặt lệnh, auto fill Mã, gói vay theo chi tiết deal đã chọn
Nhóm 2
Tổng KL
accumulateQuantity
Giá mở TB
= averageCostPrice
Giá đóng TB
= averageClosePrice
Phí, thuế GD
= totalRealizedTaxAndFee
Phí qua đêm
= totalRealizedPositionFee
Lãi đóng
Lãi của phần đã đóng
= Lãi đóng trong ngày + Lãi đóng trước ngày hiện tại (Phải ra số giống với sổ Deal)
= Lấy công thức Lãi đóng ở sổ deal
= Tổng lãi lỗ đã chốt - Phí, thuế GD - Phí vị thế - Lãi thấu chi (Phí thuế tính trên phần đóng)
= totalRealizedProfit - totalRealizedTaxAndFee - overDraftRealizedInterest -totalRealizedPositionFee - maturityFee
Tooltip: Lãi đóng = Lãi đóng trong ngày + Lãi đóng đã thanh toán
Trong đó:
Làm tròn lấy phần nguyên. VD: 10000.5 → 10001, 10000.4 → 10000
% Lãi đóng
= Lãi đóng/(cọc đã chốt + cọc nộp thêm đã chốt)*100
= Lãi đóng/(accumulateSecure - secure) *100
Trong đó:
Làm tròn số sau dấu “,” 2 số. VD: 25.555 → 25.56%, 25.554 → 25.55%
Lãi đã chốt trong ngày
= Lãi đã chốt trong ngày - Phí, thuế GD mở - Phí, thuế GD đóng - Phí vụ thế (Phí thuế tính trên phần đóng trong ngày)
= realizedProfitVM - dailyRealizedTaxAndFee - dailyRealizedInterest - dailyRealizedPositionFee
Trong đó:
Làm tròn lấy phần nguyên. VD: 10000.5 → 10001, 10000.4 → 10000
Lãi đóng đã thanh toán
= Lãi đã chốt các ngày hôm trước - Phí, thuế GD mở - Phí, thuế GD đóng - Phí vụ thế (Phí thuế tính trên phần đóng các ngày hôm trước)
= (totalRealizedProfit - realizedProfitVM) - (totalRealizedTaxAndFee + overDraftRealizedInterest + totalRealizedPositionFee - dailyRealizedTaxAndFee - dailyRealizedInterest - dailyRealizedPositionFee) - maturityFee
Trong đó:
Làm tròn lấy phần nguyên. VD: 10000.5 → 10001, 10000.4 → 10000
+ M = 100,000
+ Lãi đã chốt, % lãi đã chốt, Lãi chưa chốt, %Lãi chưa chốt: nếu dương → hiện giá trị màu xanh, nếu âm hiện giá trị màu đỏ
+ Các trường highlight xanh lấy ở Mục 5.1 Danh sách gói vay
+ Các trường highlight đỏ lấy ở Mục 5.7 Danh sách Deal nắm giữ
6. Lệnh điều kiện
6.1 Đặt lệnh điều kiện
method
POST
header
Authorization: Bearer <token>
param
request body
{
"condition": "price <= 26650",
"targetOrder": {
"quantity": 100,
"side": "NB",
"price": 26600,
"loanPackageId": 1531,
"orderType": "LO"
},
"symbol": "HPG",
"props": {
"stopPrice": 26650,
"marketId": "UNDERLYING"
},
"accountNo": "0001000006",
"category": "STOP",
"timeInForce": {
"expireTime": "2024-10-23T07:30:00.000Z",
"kind": "GTD"
}
}
success response body
{
"id": "csc7iqa45sbpqutqm81g"
}
error response body
{
"message":
"Invalid signature"
}
Request body
condition
String
Điều kiện đặt price >= stopPrice price <= stopPrice
targetOrder
Object
targetOrder.quantity
Double
Khối lượng đặt
targetOrder.side
String
Lệnh mua: NB, Lệnh bán:NS
targetOrder.price
Doble
Giá đặt, đơn vị đồng
targetOrder.loanPackageId
Integer
Mã gói vay, lấy gói vay muốn đặt từ api danh sách gói vay
targetOrder.orderType
String
Loại lệnh, thuộc các giá trị sau:
LO: lệnh giới hạn
MP/MTL: lệnh thị trường
symbol
String
Mã
props
Object
props.stopPrice
Double
Giá trigger lệnh điều kiện
props.marketId
String
lệnh cơ sở: UNDERLYING Lệnh phái sinh: DERIVATIVES
accountNo
String
Mã tiểu khoản
category
String
STOP
timeInForce
Object
timeInForce.expireTime
String
Thời gian hết hạn lệnh
timeInForce.kind
String
Loại : GTD
Response body
id
String
id của lệnh điều kiện
6.2 Sổ lệnh điều kiện
method
GET
header
Authorization: Bearer <token>
param
accountNo:(String) Mã tiểu khoản daily: (Boolean) Lấy lệnh trong ngày(true/false) - default là false from: (String) ngày bắt đầu yyyy-MM-dd to: (String) ngày kết thúc yyyy-MM-dd page (Integer): số thứ tự trang size (Interger): số lượng item trong trang status (Array): trạng thái của lệnh (NEW/ACTIVATED/REJECTED/CANCELLED/EXPIRED/FAILED/CANCELLED_BY_RIGHTS_EVENT) symbol (String): Mã marketId: UNDERLYING (nếu lấy sổ lệnh điều kiện cơ sở) hoặc DERIVATIVES (phái sinh)
request body
success response body
{
"content": [
{
"accountNo": "0001000006",
"category": "STOP",
"condition": "price >= 26650",
"createdAt": "2024-10-23T04:19:53.94801Z",
"createdBy": "064C000006",
"id": "csc7iqa45sbpqutqm81g",
"investorId": "0001000006",
"metadata": {
"errorMessage": "",
"externalOrderId": 112,
"status": "OK"
},
"props": {
"marketId": "UNDERLYING",
"stopPrice": 26650,
"trailingAmount": 0,
"trailingPercent": 0
},
"status": "ACTIVATED",
"symbol": "HPG",
"targetOrder": {
"loanPackageId": 1531,
"orderType": "LO",
"price": 26600,
"quantity": 100,
"side": "NB"
},
"timeInForce": {
"expireTime": "2024-10-23T07:30:00Z",
"kind": "GTD"
},
"updatedAt": "2024-10-23T04:19:59.299943Z",
"updatedBy": "064C000006"
},
{
"accountNo": "0001000006",
"category": "STOP",
"condition": "price \u003c= 26650",
"createdAt": "2024-10-23T04:18:18.971188Z",
"createdBy": "064C000006",
"id": "csc7i2i45sbpqutqm80g",
"investorId": "0001000006",
"metadata": {
"errorMessage": "",
"externalOrderId": 102,
"status": "OK"
},
"props": {
"marketId": "UNDERLYING",
"stopPrice": 26650,
"trailingAmount": 0,
"trailingPercent": 0
},
"status": "ACTIVATED",
"symbol": "HPG",
"targetOrder": {
"loanPackageId": 1531,
"orderType": "LO",
"price": 26600,
"quantity": 100,
"side": "NB"
},
"timeInForce": {
"expireTime": "2024-10-23T07:30:00Z",
"kind": "GTD"
},
"updatedAt": "2024-10-23T04:18:26.831862Z",
"updatedBy": "064C000006"
}
],
"page": 1,
"size": 10000,
"numberOfElements": 2,
"totalElements": 2,
"totalPages": 1
}
error response body
{
"message": "Invalid signature"
}
Response body
createdAt
String
Thời gian tạo lệnh
createdBy
String
Người tạo lệnh
id
String
id của lệnh
updatedAt
String
Thời gian cập nhật lệnh
updatedBy
String
Người cập nhật lệnh
status
String
Trạng thái của lệnh
condition
String
Điều kiện đặt price >= stopPrice price <= stopPrice
targetOrder
Object
targetOrder.quantity
Double
Khối lượng đặt
targetOrder.side
String
Lệnh mua: NB, Lệnh bán:NS
targetOrder.price
Doble
Giá đặt, đơn vị đồng
targetOrder.loanPackageId
Integer
Mã gói vay, lấy gói vay muốn đặt từ api danh sách gói vay
targetOrder.orderType
String
Loại lệnh, thuộc các giá trị sau:
LO: lệnh giới hạn
MP/MTL: lệnh thị trường
symbol
String
Mã
props
Object
props.stopPrice
Double
Giá trigger lệnh điều kiện
props.marketId
String
lệnh cơ sở: UNDERLYING Lệnh phái sinh: DERIVATIVES
accountNo
String
Mã tiểu khoản
category
String
STOP
timeInForce
Object
timeInForce.expireTime
String
Thời gian hết hạn lệnh
timeInForce.kind
String
Loại : GTD
page
Integer
Trang đã yêu cầu
size
Integer
Số lượng bản ghi trong trang đã yêu cầu
numberOfElements
Integer
Số lượng lệnh trong trang
totalElements
Integer
Tổng số lượng lệnh có trong hệ thống
totalPages
Integer
Tổng số lượng trang có trong hệ thống
6.3 Chi tiết 1 lệnh điều kiện
url
https://api.dnse.dnse.com.vn/conditional-order-api/v1/orders/{id}
method
GET
header
Authorization: Bearer <token>
path
id : id của lệnh điều kiện
request body
success response body
{
"accountNo": "0001000006",
"category": "STOP",
"condition": "price <= 26650",
"createdAt": "2024-10-23T04:21:30.508841Z", "createdBy": "064C000006",
"id": "csc7jii45sbpqutqm820",
"investorId": "0001000006",
"metadata": {
"errorMessage": "",
"externalOrderId": 122,
"status": "OK"
},
"productGroupId": 0,
"props": {
"marketId": "UNDERLYING",
"stopPrice": 26650,
"trailingAmount": 0,
"trailingPercent": 0
},
"status": "ACTIVATED",
"symbol": "HPG",
"targetOrder": {
"loanPackageId": 1531,
"orderType": "LO",
"price": 26600,
"quantity": 100,
"side": "NB"
},
"timeInForce": {
"expireTime": "2024-10-23T07:30:00Z",
"kind": "GTD"
},
"updatedAt": "2024-10-23T04:21:33.640466Z", "updatedBy": "064C000006" }
error response body
{
"message": "Invalid signature"
}
6.4 Huỷ lệnh điều kiện
url
https://api.dnse.com.vn/conditional-order-api/v1/orders/{id}/cancel
method
PATCH
header
Authorization: Bearer <token>
path
id: id của lệnh điều kiện
success response body
{
"id": "csc7iqa45sbpqutqm81g"
}
error response body
{
"message": "Invalid signature" }
Response body
id
String
id của lệnh điều kiện
II. Market Data
1. Giới thiệu chung
1.1 Mục đích của tài liệu
Tài liệu mô tả thông tin giá thị trường được DNSE publish. Cấu trúc message và các thông tin đặc tả kèm theo.
1.2 Phạm vi của tài liệu
Tài liệu được sử dụng dưới sự trao đổi hợp pháp giữa Đối tác và DNSE. Mọi thông tin được mô tả trong tài liệu này cần được Đối tác cam kết bảo mật theo quy định yêu cầu bảo mật do DNSE ban hành.
DNSE đảm bảo về sự đúng đắn và không có sai lệch về thông tin được mô tả.
2. Đặc tả thông tin các message
Hệ thống DNSE đẩy event real-time ra MQTT. Đối tác tích hợp qua WSS protocol. Cấu trúc message đẩy ra dưới dạng json
2.1. Môi trường
Với các topic public không cần authentication:
Host
datafeed-lts-krx.dnse.com.vn
Port
443
Path
/wss
ClientID
<dnse-price-json-mqtt-ws-sub>-<username>-<random_sequence>
Username
Lấy từ trường investorId trong phần 2.1.b
Password
Lấy từ trường token trong phần 2.1.a
a. Đăng nhập
Resquest Header
N/A
Resquest Body
username
String
ID đăng nhập: Email hoặc Số điện thoại hoặc Số lưu ký
password
String
Mật khẩu
Response Body
token
String
JWT token (có hiệu lực trong 8 tiếng
b. Thông tin tài khoản
Request Header
Authorization
Bearer Bearer <JWT token>
Bearer <JWT token> -> lấy JWT token từ mục 2.1.a
Request Body
N/A
OK
Response Body
investorId
String
Mã khách hàng
name
String
Họ và tên
custodyCode
String
Số lưu ký
mobile
String
Số điện thoại
String
<others>
2.2 Market_Data Topics
Stock Info
plaintext/quotes/krx/mdds/stockinfo/v1/roundlot/symbol/{symbol}
Top Price
plaintext/quotes/krx/mdds/topprice/v1/roundlot/symbol/{symbol}
Board Event
plaintext/quotes/krx/mdds/boardevent/v1/roundlot/market/{market}/product/{tsczProductGrpId}
Market Index
plaintext/quotes/krx/mdds/index/{indexName}
Stock OHLC
plaintext/quotes/krx/mdds/v2/ohlc/stock/{resolution}/{symbol}
Derivative OHLC
plaintext/quotes/krx/mdds/v2/ohlc/derivative/{resolution}/{symbol}
Index OHLC
plaintext/quotes/krx/mdds/v2/ohlc/index/{resolution}/{indexName}
Tick
plaintext/quotes/krx/mdds/tick/v1/roundlot/symbol/{symbol}
symbol
String
Mã chứng khoán
indexName
String
Mã Index:
VN30
VNINDEX
HNX30
HNX
UPCOM
resolution
String
Resolution của OHLC:
1: Phút
1H: Giờ
1D: Ngày
W: Tuần
marketId
String
Ký hiệu sàn:
STO: HoSE Stock Market
STX: HNX Listed Stock Market
BDX: HNX Government Bond Market
DVX: HNX Derivative Market
UPX: HNX UpCoM Stock Market
HCX: HNX Corporate Bond Market
tscProductGrpId
String
Loại chứng khoán/nhóm sản phẩm trên sàn:
STO : HoSE Stock
BDX : Government Bond
FIO : HoSE Index Futures (thuộc marketId DVX)
FBX : HNX Bond Futures (thuộc marketId DVX)
STX : HNX Stock
UPX : HNX UpCom
HCX : HNX Corporate Bond
Cấu trúc message được nhận qua WebSocket. Định dạng JSON
MARKET_INDEX
MarketIndex
Chứa thông tin chỉ số
Market Index
STOCK_INFO
StockInfo
Chứa thông tin giá của mã
Stock Info
TOP_PRICE
TopPrice
Chứa thông tin Bid/Offer
Top Price
BOARD_EVENT
BoardEvent
Chứa thông tin thay đổi phiên
Board Event
OHLC
OHLC
Thông tin nến
OHLC
TICK
Tick
Thông tin khớp lệnh
Tick
Chi tiết message xem tại file 1. DNSE MDDS System - KRX v1.4.xlsx đính kèm.
(MQTT X client dùng để test kết nối: https://www.emqx.com/en/try?product=MQTTX)
DNSE Python Example: theo file file đính kèm. Version gợi ý:
python 3.13
paho-mqtt: 2.1.0
Last updated