FastConnect Trading hỗ trợ API về Đặt/ Hủy/ Sửa lệnh, Chuyển tiền nội bộ, Nộp/ Rút ký quỹ, Chuyển chứng khoán, Ứng trước tiền bán, Đăng ký quyền mua và Tra cứu thông tin tài khoản.
Danh sách API
Các API liên quan đến Token và xác thực 2FA
Các API tra cứu thông tin tài khoản cơ sở và phái sinh
Các API đặt lệnh cơ sở/ phái sinh
Các API liên quan đến Chuyển tiền nội bộ, Nộp/ Rút ký quỹ và Ứng trước tiền bán
Các API liên quan đến Chuyển chứng khoán
Các API liên quan đến Đăng ký quyền mua
Yêu cầu Config
API Details
POST AccessToken
Copy https://fc-tradeapi.ssi.com.vn/api/v2/Trading/AccessToken
Dùng để tạo access token truy cập vào các api của FC Trading.
Thông tin chi tiết
Ví dụ
Copy Input:
{
consumerID : "38f5fdfa56b44d5ab8b95895eb588e99" ,
consumerSecret : "6d61bffefc6540fc837c71afd2ca4bcf" ,
twoFactorType : 1 ,
code : "123456789" ,
isSave : false
}
Output:
{
message : "Success" ,
status : 200 ,
data : {
"accessToken" : "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ”
}
Copy Input:
{
consumerID : "38f5fdfa56b44d5ab8b95895eb588e99" ,
consumerSecret : "6d61bffefc6540fc837c71afd2ca4bcf" ,
twoFactorType : 0 ,
code : "123456789" ,
isSave : true
}
Output:
{
message : "Key does not exist." ,
status : 400 ,
data : null
}
POST GetOTP
Copy https://fc-tradeapi.ssi.com.vn/api/v2/Trading/GetOTP
Dùng để lấy mã OTP nếu tài khoản đã đăng ký sử dụng SMS OTP và Email OTP.
Nếu lấy OTP quá 5 lần mà không xác thực thì dịch vụ OTP sẽ bị tạm khóa.
Thông tin chi tiết
Ví dụ
Copy Input:
{
"consumerID" : "968d7b5940f5437583021aea2b038f35" ,
"consumerSecret" : "11ab3fc6af954c59ba646fac016f30cb"
}
Output:
{
message : "Success" ,
status : 200
}
Copy Input:
{
"consumerID" : "968d7b5940f5437583021aea2b038f351" ,
"consumerSecret" : "11ab3fc6af954c59ba646fac016f30cb"
}
Output:
{
"message" : "ConsumerID is invalid" ,
"status" : 400
}
GET auditOrderBook
Copy https://fc-tradeapi.ssi.com.vn/api/v2/Trading/auditOrderBook
Trả ra lịch sử cập nhật của lệnh.
Thông tin chi tiết
Ví dụ
Copy Input:
{
account : "1184418"
}
Output:
{
"message" : "Success" ,
"status" : 200 ,
"data" : {
"account" : "1184418" ,
"orders" : [
{
"uniqueID" : "73885549" ,
"orderID" : "T202306146w273885549" ,
"buySell" : "B" ,
"price" : 1000 ,
"quantity" : 100 ,
"filledQty" : 0 ,
"orderStatus" : "RJ" ,
"marketID" : "VNFE" ,
"inputTime" : "1686730747945" ,
"modifiedTime" : "1686730747945" ,
"instrumentID" : "VN30F2306" ,
"orderType" : "LO" ,
"cancelQty" : 0 ,
"avgPrice" : 0 ,
"isForcesell" : "F" ,
"isShortsell" : "F" ,
"rejectReason" : "Invalid market status" ,
"lastErrorEvent" : null
}
]
}
}
GET OrderBook
Copy https://fc-tradeapi.ssi.com.vn/api/v2/Trading/OrderBook
Tra cứu lệnh đặt trong ngày của cả tài khoản cơ sở và phái sinh.
Thông tin chi tiết
Ví dụ
Copy Input:
{
account : "1184418"
}
Output:
{
"message" : "Success" ,
"status" : 200 ,
"data" : {
"account" : "1184418" ,
"orders" : [
{
"uniqueID" : "73885549" ,
"orderID" : "T202306146w273885549" ,
"buySell" : "B" ,
"price" : 1000 ,
"quantity" : 100 ,
"filledQty" : 0 ,
"orderStatus" : "RJ" ,
"marketID" : "VNFE" ,
"inputTime" : "1686730747945" ,
"modifiedTime" : "1686730747945" ,
"instrumentID" : "VN30F2306" ,
"orderType" : "LO" ,
"cancelQty" : 0 ,
"avgPrice" : 0 ,
"isForcesell" : "F" ,
"isShortsell" : "F" ,
"rejectReason" : "Invalid market status"
}
]
}
}
GET orderHistory
Copy https://fc-tradeapi.ssi.com.vn/api/v2/Trading/orderHistory
Truy vấn lịch sử lệnh
Thông tin chi tiết
Ví dụ
Copy Input:
{
account : "0901358" ,
startDate : “ 18 / 11 / 2020 ” ,
endDate : “ 18 / 11 / 2020 ”
}
Output:
{
message : "Success" ,
status : 200 ,
data : {
orderHistories : [
{
uniqueID : null ,
orderID : "12626539" ,
buySell : "B" ,
price : 800.0 ,
quantity : 10 ,
filledQty : 0 ,
orderStatus : "RJ" ,
marketID : "VNFE" ,
inputTime : "1603157594668" ,
modifiedTime : "1603157594668" ,
instrumentID : "VN30F2012" ,
orderType : "LO" ,
cancelQty : 0 ,
avgPrice : 0.0 ,
isForcesell : null ,
isShortsell : null
}
] ,
account : "0901358"
}
}
GET cashAccountBalance
Copy https://fc-tradeapi.ssi.com.vn/api/v2/Trading/cashAcctBal
Truy vấn thông tin tiền của tài khoản cơ sở.
Thông tin chi tiết
Ví dụ
Copy Input:
{
account : "0901351" ,
}
Output:
{
message : "Success" ,
status : 200 ,
data : {
account : "0901351" ,
cashBal : 7459369481 ,
cashOnHold : 0 ,
secureAmount : 0 ,
withdrawable : 7459367581 ,
receivingCashT1 : 0 ,
receivingCashT2 : 0 ,
matchedBuyVolume : 0 ,
matchedSellVolume : 0 ,
debt : 1900 ,
unMatchedBuyVolume : 0 ,
unMatchedSellVolume : 864619337 ,
paidCashT1 : 0 ,
paidCashT2 : 0 ,
cia : 0 ,
purchasingPower : 7459367581 ,
totalAssets : 9726161481
}
}
GET stockPosition
Copy https://fc-tradeapi.ssi.com.vn/api/v2/Trading/stockPosition
Truy vấn danh mục của tài khoản cơ sở.
Thông tin chi tiết
Ví dụ
Copy Input:
{
account : "0901351" ,
}
}
Output:
{
"message" : "Success" ,
"status" : 200 ,
"data" : {
"account" : "0001011" ,
"totalMarketValue" : 0 ,
"stockPositions" : [
{
"marketID" : "VN" ,
"instrumentID" : "AMC" ,
"onHand" : 300 ,
"block" : 0 ,
"bonus" : 3819 ,
"buyT0" : 0 ,
"buyT1" : 0 ,
"buyT2" : 0 ,
"sellT0" : 0 ,
"sellT1" : 0 ,
"sellT2" : 0 ,
"avgPrice" : 1529 ,
"mortgage" : 0 ,
"sellableQty" : 300 ,
"holdForTrade" : 0 ,
"marketPrice" : 0
}
]
}
}
GET derivativeAccountBalance
Copy https://fc-tradeapi.ssi.com.vn/api/v2/Trading/derivAcctBal
Kiểm tra số dư tiền tài khoản phái sinh.
Thông tin chi tiết
Ví dụ
Copy Input:
{
account : "0901358" ,
}
Output:
{
message : "Success" ,
status : 200 ,
data : {
account : "0901358" ,
accountBalance : 11166309263 ,
fee : 0 ,
commission : 0 ,
interest : 1514965 ,
loan : 0 ,
deliveryAmount : 0 ,
floatingPL : 0 ,
totalPL : 0 ,
marginable : 0 ,
depositable : 1148597520 ,
rcCall : 0 ,
withdrawable : 10912447363 ,
nonCashDrawableRCCall : 0 ,
internalAssets : {
cash : 1165730020 ,
validNonCash : 0 ,
totalValue : 11166309263 ,
maxValidNonCash : 0 ,
cashWithdrawable : 1148597520 ,
ee : 8197059272
} ,
exchangeAssets : {
cash : 10000579243 ,
validNonCash : 0 ,
totalValue : 10000579243 ,
maxValidNonCash : 0 ,
cashWithdrawable : 9763849843 ,
ee : 7322887382
} ,
internalMargin : {
initialMargin : 172660800 ,
deliveryMargin : 0 ,
marginReq : 172660800 ,
accountRatio : 1.5462656096416592 ,
usedLimitWarningLevel1 : 75 ,
usedLimitWarningLevel2 : 85 ,
usedLimitWarningLevel3 : 90 ,
marginCall : 0
} ,
exchangeMargin : {
marginReq : 172660800 ,
accountRatio : 1.7265079932330476 ,
usedLimitWarningLevel1 : 75 ,
usedLimitWarningLevel2 : 85 ,
usedLimitWarningLevel3 : 90 ,
marginCall : 0
}
}
}
GET derivativePosition
Copy https://fc-tradeapi.ssi.com.vn/api/v2/Trading/derivPosition
Truy vấn vị thế của tài khoản phái sinh.
Thông tin chi tiết
Ví dụ
Copy Input:
{
account : "0901358" ,
querySummary : true
}
Output:
{
message : "Success" ,
status : 200 ,
data : {
account : "0901358" ,
openPosition : [
{
marketID : "VNFE" ,
instrumentID : "VN30F2106" ,
longQty : 8 ,
shortQty : 0 ,
net : 8 ,
bidAvgPrice : 0 ,
askAvgPrice : 0 ,
tradePrice : 1452.7 ,
marketPrice : 1452.7 ,
floatingPL : 0 ,
tradingPL : 0
} ] ,
closePosition : [ ]
}
}
GET maxBuyQty
Copy https://fc-tradeapi.ssi.com.vn/api/v2/Trading/maxBuyQty
Truy vấn số lượng mua tối đa, sử dụng cho cả tài khoản cơ sở và phái sinh.
Thông tin chi tiết
Ví dụ
Copy Input:
{
account : "0041691" ,
instrumentD : “SSI” ,
price : 17
}
Output:
{
message : "Success" ,
status : 200 ,
data : {
account : "0041691" ,
maxBuyQty : 8241440 ,
marginRatio : "50%" ,
purchasingPower : 99292902171
}
}
GET maxSellQty
Copy https://fc-tradeapi.ssi.com.vn/api/v2/Trading/maxSellQty
Truy vấn số lượng bán tối đa, sử dụng cho cả tài khoản cơ sở và phái sinh.
Thông tin chi tiết
Ví dụ
Copy Input:
{
account : "0041691" ,
intrumentID : “SSI”
}
Output:
{
"message" : "Success" ,
"status" : 200 ,
"data" : {
"account" : "0041691" ,
"maxSellQty" : 2000
}
}
POST NewOrder
Copy https://fc-tradeapi.ssi.com.vn/api/v2/Trading/NewOrder
Dùng để đặt lệnh, sử dụng cho cả tài khoản cơ sở và phái sinh. Khi gửi thông tin lệnh thành công, api trả 200. Để xem lệnh có đẩy lên sàn thành công hay không cần kết nối streaming để nhận kết quả (hoặc call api oderBook)
Thông tin chi tiết
Ví dụ
Copy Input:
{
instrumentID : "SSI" ,
market : "VN" ,
buySell : "B" ,
orderType : "LO" ,
channelID : "IW" ,
price : 21000 ,
quantity : 300 ,
account : "0901351" ,
stopOrder : false ,
stopPrice : 0 ,
stopType : "string" ,
stopStep : 0 ,
lossStep : 0 ,
profitStep : 0
requestID: "1678195" ,
code : “ 123456789 ” ,
deviceId : "8C-EC-4B-D3-0B-96" ,
userAgent : “FCTrading”
}
Output:
{
message : "Success" ,
status : 200 ,
data : {
requestID : "1678195" ,
requestData :
{
instrumentID : "SSI" ,
market : "VN" ,
buySell : "B" ,
orderType : "LO" ,
channelID : "IW" ,
price : 21000 ,
quantity : 300 ,
account : "0901351" ,
stopOrder : false ,
stopPrice : 0 ,
stopType : "string" ,
stopStep : 0 ,
lossStep : 0 ,
profitStep : 0
}
}
}
Copy Input:
{
instrumentID : "SSI" ,
market : "VN" ,
buySell : "B" ,
orderType : "ATO" ,
channelID : "IW" ,
price : 21000 ,
quantity : 300 ,
account : "0901351" ,
stopOrder : false ,
stopPrice : 0 ,
stopType : "string" ,
stopStep : 0 ,
lossStep : 0 ,
profitStep : 0
requestID: "1678195" ,
code : “ 123456789 ” ,
deviceId : "8C-EC-4B-D3-0B-96" ,
userAgent : “FCTrading”
}
Output:
{
message : "Price is null or equal zero when order is market order" ,
status : 400 ,
data : null
}
POST ModifyOrder
Copy https://fc-tradeapi.ssi.com.vn/api/v2/Trading/ModifyOrder
Dùng để sửa lệnh, sử dụng cho cả tài khoản cơ sở và phái sinh.
Thông tin chi tiết
Ví dụ
Copy Input:
{
requestID : "93235974" ,
orderID : "12658867" ,
price : 1410 ,
quantity : 2 ,
account : "0901358" ,
instrumentID : "VN30F2106" ,
marketID : "VNFE" ,
buySell : "B" ,
orderType : "LO"
code:” 123456789 ” ,
deviceId : "8C-EC-4B-D3-0B-96" ,
userAgent : “FCTrading”
}
Output:
{
message : "Success" ,
status : 200 ,
data : {
requestID : "93235974" ,
requestData : {
orderID : "12658867" ,
price : 1410 ,
quantity : 2 ,
account : "0901358" ,
instrumentID : "VN30F2106" ,
marketID : "VNFE" ,
buySell : "B" ,
orderType : "LO"
}
}
}
Copy Input:
{
requestID : "93235971" ,
orderID : "" ,
price : 1410 ,
quantity : 2 ,
account : "0901358" ,
instrumentID : "VN30F2106" ,
marketID : "VNFE" ,
buySell : "B" ,
orderType : "LO"
code:” 123456789 ” ,
deviceId : "8C-EC-4B-D3-0B-96" ,
userAgent : “FCTrading”
}
Output:
{
data : null ,
message : "’Order ID’ must not be empty " ,
status : 400
}
POST CancelOrder
Copy https://fc-tradeapi.ssi.com.vn/api/v2/Trading/CancelOrder
Sử dụng để hủy lệnh, sử dụng cho cả tài khoản cơ sở và phái sinh.
Thông tin chi tiết
Ví dụ
Copy Input:
{
requestID : "93235974" ,
orderID : "12658867" ,
price : 1410 ,
quantity : 2 ,
account : "0901358" ,
instrumentID : "VN30F2106" ,
marketID : "VNFE" ,
buySell : "B" ,
orderType : "LO"
code:” 123456789 ” ,
deviceId : "8C-EC-4B-D3-0B-96" ,
userAgent : “FCTrading”
}
Output:
{
message : "Success" ,
status : 200 ,
data : {
requestID : "93235974" ,
requestData : {
orderID : "12658867" ,
price : 1410 ,
quantity : 2 ,
account : "0901358" ,
instrumentID : "VN30F2106" ,
marketID : "VNFE" ,
buySell : "B" ,
orderType : "LO"
}
}
}
Copy Input:
{
requestID : "93235971" ,
orderID : "" ,
price : 1410 ,
quantity : 2 ,
account : "0901358" ,
instrumentID : "VN30F2106" ,
marketID : "VNFE" ,
buySell : "B" ,
orderType : "LO"
code:” 123456789 ” ,
deviceId : "8C-EC-4B-D3-0B-96" ,
userAgent : “FCTrading”
}
Output:
{
data : null ,
message : "’Order ID’ must not be empty " ,
status : 400
}
POST derNewOrder
Copy https://fc-tradeapi.ssi.com.vn/api/v2/Trading/derNewOrder
Dùng để đặt lệnh phái sinh.
Thông tin chi tiết
Ví dụ
Copy Input:
{
instrumentID : "VN30F2306" ,
market : "VNFE" ,
buySell : "B" ,
orderType : "LO" ,
channelID : "TA" ,
price : 1200 ,
quantity : 10 ,
account : "1184418" ,
stopOrder : false ,
stopPrice : 0 ,
stopType : "string" ,
stopStep : 0 ,
lossStep : 0 ,
profitStep : 0
requestID: "1678198" ,
code : “ 123456789 ” ,
deviceId : "8C-EC-4B-D3-0B-96" ,