ATS Open API API Reference
ATS provides a simple and powerful API consisting of REST endpoints for transactional operations like market, order, pricing, trading and balance updates.
API Endpoint
https://demo-trader.ayson.us/api/v1
Schemes: https
Version: v1
Authentication
We use X_API_TOKEN
to authenticate our Open API. In your client side, you can set the request header
like following when you get the X_API_TOKEN
via login. Request header example:
X_API_TOKEN: xxxxxxxxxxxxxxxxxxxxx
Getting Started
- Login
1.1. Login
curl -X POST "https://demo-trader.ayson.us/api/v1/apiLogin"
-H "accept: application/json"
-H "Content-Type: application/json"
-d "{\"loginId\": \"B0000010\", \"password\": \"12345\"}"
1.2. Login response
{
"data": {
"result": "SUCCESS",
"token": "advapi100@69rtbsyhwcx0.1kebunxvk7gmz.1lvnw917rnh5t",
}
}
1.3. Login response header
access-control-allow-origin: *
cache-control: no-store, must-revalidate
content-type: application/json
date: Thu, 31 Jan 2019 03:42:24 GMT
server: CoreFX/8.8
status: 200
vary: Origin, Access-Control-Request-Method, Access-Control-Request-Headers
x-ratelimit-limit: 64
x-ratelimit-remaining: 63
x-ratelimit-reset: 1548906204778
Pagination
In our Open API. we have some APIs that can fetch data limit by page. these APIs are all with following suffix /path/to/iterator
.
For example:
https://demo-trader.ayson.us/api/v1/pricing/quote/iterator
We can use following method to fetch the first page of quotes.
curl -X GET "https://demo-trader.ayson.us/api/v1/pricing/quote/iterator?contract_id=1&limit=32"
-H "accept: application/json"
-H "X-API-TOKEN: xxxxxxxxxxxxxxxxxxxxx"
First page response
{
"data": {
"next": "816620987440566785",
"quotes": [
{
"count": 1,
"delta01h": "-4248.330000000000",
"delta24h": "-2828.470000000000",
"id": "816626133582741505",
"price": "370542.770000000000",
"contract_id": 1,
"volume": "0.000010000000"
},
{
"count": 1,
"delta01h": "-3589.740000000000",
"delta24h": "-1888.900000000000",
"id": "816623588152364545",
"price": "371317.300000000000",
"contract_id": 1,
"volume": "0.000010000000"
},
...
]
}
}
If contains data.next
then we can fetch second page use above data.next
until data.next
not exist.
curl -X GET "https://demo-trader.ayson.us/api/v1/pricing/quote/iterator?contract_id=1&id=816620987440566785&limit=32"
-H "accept: application/json"
-H "X_API_TOKEN: xxxxxxxxxxxxxxxxxxxxx"
Second page response
{
"data": {
"next": "816618302884631041",
"quotes": [
{
"count": 1,
"delta01h": "-2693.030000000000",
"delta24h": "-1115.710000000000",
"id": "816620987440566785",
"price": "372090.490000000000",
"contract_id": 1,
"volume": "0.000002680000"
},
{
"count": 1,
"delta01h": "-2834.940000000000",
"delta24h": "-1228.750000000000",
"id": "816620903445433345",
"price": "371977.450000000000",
"contract_id": 1,
"volume": "0.000002680000"
},
...
]
}
}
Rate Limit
Response Header | Example Value | Description |
---|---|---|
X-RateLimit-Limit | 100 | total limit per minute |
X-RateLimit-Remaining | 20 | remaining rate limit |
X-RateLimit-Reset | 1548842569094 | reset rate limit at this unix timestamp |
Keepalive
API | Description |
---|---|
Http | sent https://demo-trader.ayson.us/api/v1/ping every 30 seconds to keep http session alive. |
Websocket | send {"id":"{id}", "action":"PING"} every 10 seconds to keep websocket alive. |
Errors
1. Http error
http status: 400
response body
{"message" : "INVALID_DATA"}
Notice that if return json
data that contains message
field, means the request was failed. if does not contain message
field that not means request was success, need to check data.result
field further.
Http Code | Message |
---|---|
400 | REJECTED |
400 | RESTRICTED |
400 | INVALID_DATA |
400 | STALE_VERSION |
401 | UNAUTHORIZED |
404 | NOT_FOUND |
405 | REJECTED |
415 | REJECTED |
408 | TIMEOUT |
429 | REJECTED |
500 | INTERNAL_ERROR |
503 | TIMEOUT |
503 | REJECTED |
503 | RESTRICTED |
503 | MAINTENANCE |
2. Websocket error
Push result:
{"id":"892131999384389819", "result":"RESTRICTED"}
Result | Description |
---|---|
OVERLOAD | Websocket request too fast |
REJECTED | Reserved |
RESTRICTED | Reserved |
BAD_REQUEST | Invalid websocket request format |
INTERNAL_ERROR | Internal server error |
Link To
You can refer to Try it out to do online test.
utility
login
Request Url Example
https://demo-trader.ayson.us/api/v1/apiLogin
Request Content-Types: application/json
Request Body Example
{
"loginId": "string",
"password": "string",
"captcha": "string",
"id": "string",
"clientIts": [
"integer (int32)"
]
}
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"result": "string",
"token": "string",
"accountId": "string (int64)"
},
"message": "string"
}
logout
Request Url Example
https://demo-trader.ayson.us/api/v1/logout
Request Content-Types: application/json
Request Body Example
"object"
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"result": "string"
},
"message": "string"
}
password
change password
Request Url Example
https://demo-trader.ayson.us/api/v1/password
Request Content-Types: application/json
Request Body Example
{
"password": "string",
"oldPassword": "string"
}
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"result": "string",
"validations": "object"
},
"message": "string"
}
skip password warning
skip password warning
Request Url Example
https://demo-trader.ayson.us/api/v1/password/skip
Request Content-Types: application/json
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"result": "string"
},
"message": "string"
}
ping
send ping request to test if necessary
Request Url Example
https://demo-trader.ayson.us/api/v1/ping
Request Content-Types: application/json
Request Body Example
{
"id": "string (int64)",
"cookie": "string (int64)",
"action": "PING"
}
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"id": "string (int64)",
"result": "string",
"cookie": "string (int64)"
},
"message": "string"
}
query app release
IOS, ANDROID, WINDOWS_X64, MAC_X64, MAC_ARM64, IOS_TF
(no description)
Request Url Example
https://demo-trader.ayson.us/api/v1/release
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"url1": "string",
"url2": "string",
"releaseTime": "string (int64)",
"postponable": "boolean",
"appType": "integer (int32)",
"appVersion": "string (string)",
"releaseStatus": "integer (int32)"
},
"message": "string"
}
verify
verify password
Request Url Example
https://demo-trader.ayson.us/api/v1/verify
Request Content-Types: application/json
Request Body Example
{
"password": "string",
"oldPassword": "string"
}
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"result": "string",
"validations": "object"
},
"message": "string"
}
customer
iterate access
(no description)
number format : "81829012300"
number format : "81829012300"
number format : "81829012300"
Request Url Example
https://demo-trader.ayson.us/api/v1/customer/access/iterator
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"next": "string (int64)",
"accesses": [
{
"id": "string (int64)",
"loginTime": "string (int64)",
"logoutTime": "string (int64)",
"onlineTime": "string (int64)",
"offlineTime": "string (int64)",
"online": "boolean",
"clientOs": "string",
"clientDevice": "string",
"clientAddress": "string",
"clientDeviceId": "string"
}
]
},
"message": "string"
}
download report
number format : "81829012300"
Request Url Example
https://demo-trader.ayson.us/api/v1/customer/report/download
successful operation
Response Example (200 OK)
{
"file": "file",
"fileName": "string"
}
iterate report
(no description)
number format : "81829012300"
(no description)
(no description)
Request Url Example
https://demo-trader.ayson.us/api/v1/customer/report/iterator
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"next": "string (int64)",
"reports": [
{
"id": "string (int64)",
"reportType": "integer (int32)",
"issueDate": "string (date)",
"issueTime": "string (int64)",
"issueStatus": "integer (int32)",
"stageTime": "string (int64)",
"stageStatus": "integer (int32)",
"receiptTime": "string (int64)",
"receiptStatus": "integer (int32)"
}
]
},
"message": "string"
}
subscribe
Request Url Example
https://demo-trader.ayson.us/api/v1/customer/subscribe
Request Body Example
{
"device": {
"id": "string",
"type": "integer (int32)"
},
"messageTypes": "integer (int32)",
"messageToken": "string"
}
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"result": "string",
"detail": "string"
},
"message": "string"
}
unsubscribe
Request Url Example
https://demo-trader.ayson.us/api/v1/customer/unsubscribe
Request Body Example
{
"device": {
"id": "string",
"type": "integer (int32)"
}
}
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"result": "string",
"detail": "string"
},
"message": "string"
}
market
query currency
Request Url Example
https://demo-trader.ayson.us/api/v1/market/baseCurrency
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"id": "integer (int32)",
"name": "string",
"scale": "integer (int32)",
"version": "integer (int32)"
},
"message": "string"
}
query contract
Request Url Example
https://demo-trader.ayson.us/api/v1/market/contract
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": [
{
"id": "integer (int32)",
"relatedId": "integer (int32)",
"code": "string",
"status": "integer (int32)",
"instrumentId": "integer (int32)",
"expirationDate": "string (date)",
"lastTradeDate": "string (date)",
"deliveryMonth": "integer (int32)",
"version": "integer (int32)"
}
],
"message": "string"
}
query currency
Request Url Example
https://demo-trader.ayson.us/api/v1/market/currency
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": [
{
"id": "integer (int32)",
"name": "string",
"scale": "integer (int32)",
"version": "integer (int32)"
}
],
"message": "string"
}
query currency pair
Request Url Example
https://demo-trader.ayson.us/api/v1/market/currencyPair
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": [
{
"id": "integer (int32)",
"name": "string",
"baseCurrency": "integer (int32)",
"quoteCurrency": "integer (int32)",
"scale": "integer (int32)",
"version": "integer (int32)"
}
],
"message": "string"
}
query instrument daily slot
(no description)
(no description)
Request Url Example
https://demo-trader.ayson.us/api/v1/market/dailySlot
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": [
{
"instrumentDate": "string (date)",
"currentTimeMillis": "string (int64)",
"slots": [
"string (int64)"
]
}
],
"message": "string"
}
query institution
Request Url Example
https://demo-trader.ayson.us/api/v1/market/institution
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"id": "integer (int32)",
"name": "string",
"abbreviation": "string",
"phone": "string",
"mail": "string",
"website": "string",
"depositUrl": "string",
"withdrawalUrl": "string",
"theme": "integer (int32)",
"address": "string",
"quotationType": "integer (int32)",
"positionMode": "integer (int32)",
"orderType": "integer (int32)",
"colorPreference": "integer (int32)",
"refreshEffect": "boolean",
"quickOrder": "boolean",
"multiCurrency": "boolean",
"version": "integer (int32)"
},
"message": "string"
}
query instrument
Request Url Example
https://demo-trader.ayson.us/api/v1/market/instrument
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": [
{
"id": "integer (int32)",
"exchange": "integer (int32)",
"majorContract": "integer (int32)",
"displayOrder": "integer (int32)",
"tradingCurrency": "integer (int32)",
"contractSize": "string (decimal)",
"tickSize": "string (decimal)",
"version": "integer (int32)",
"zoneId": "string",
"slots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
],
"dstSlots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
]
}
],
"message": "string"
}
query instrument code
Request Url Example
https://demo-trader.ayson.us/api/v1/market/instrumentCode
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": [
{
"id": "integer (int32)",
"code": "string",
"en": "string",
"cn": "string",
"tw": "string",
"version": "integer (int32)"
}
],
"message": "string"
}
query instrument contract
(no description)
Request Url Example
https://demo-trader.ayson.us/api/v1/market/instrumentContract
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": [
{
"id": "integer (int32)",
"relatedId": "integer (int32)",
"code": "string",
"status": "integer (int32)",
"instrumentId": "integer (int32)",
"expirationDate": "string (date)",
"lastTradeDate": "string (date)",
"deliveryMonth": "integer (int32)",
"version": "integer (int32)"
}
],
"message": "string"
}
query it instrument
Request Url Example
https://demo-trader.ayson.us/api/v1/market/itInstrument
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": [
{
"id": "integer (int32)",
"itId": "integer (int32)",
"instrumentId": "integer (int32)",
"groupId": "integer (int32)",
"displayOrder": "integer (int32)",
"version": "integer (int32)"
}
],
"message": "string"
}
query main contract
Request Url Example
https://demo-trader.ayson.us/api/v1/market/mainContract
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": [
{
"id": "integer (int32)",
"relatedId": "integer (int32)",
"code": "string",
"status": "integer (int32)",
"instrumentId": "integer (int32)",
"expirationDate": "string (date)",
"lastTradeDate": "string (date)",
"deliveryMonth": "integer (int32)",
"version": "integer (int32)"
}
],
"message": "string"
}
query major contract
Request Url Example
https://demo-trader.ayson.us/api/v1/market/majorContract
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": [
{
"id": "integer (int32)",
"relatedId": "integer (int32)",
"code": "string",
"status": "integer (int32)",
"instrumentId": "integer (int32)",
"expirationDate": "string (date)",
"lastTradeDate": "string (date)",
"deliveryMonth": "integer (int32)",
"version": "integer (int32)"
}
],
"message": "string"
}
query subscription fee
Request Url Example
https://demo-trader.ayson.us/api/v1/market/subscriptionFee
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": [
{
"exchange": "integer (int32)",
"currency": "integer (int32)",
"l1Fee": "string (decimal)",
"l2Fee": "string (decimal)",
"m3Discount": "string (decimal)",
"m6Discount": "string (decimal)",
"y1Discount": "string (decimal)",
"version": "integer (int32)"
}
],
"message": "string"
}
query theme server
Request Url Example
https://demo-trader.ayson.us/api/v1/market/themeServer
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": "string",
"message": "string"
}
pricing
iterate chart
(no description)
M1, M5, M10, M15, M30, H1, H2, H4, D1, W1, M3, S15, MN1, S1, S3, S5, S10, S30
number format : "81829012300"
(no description)
Request Url Example
https://demo-trader.ayson.us/api/v1/pricing/chart/iterator
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"type": "integer (int32)",
"next": "string (int64)",
"charts": [
{
"id": "string (int64)",
"low": "string (decimal)",
"high": "string (decimal)",
"open": "string (decimal)",
"close": "string (decimal)",
"vwap": "string (decimal)",
"qty": "integer (int32)",
"instrumentDate": "string (date)",
"openTime": "string (int64)",
"closeTime": "string (int64)",
"version": "integer (int32)"
}
]
},
"message": "string"
}
iterate tick
(no description)
number format : "81829012300"
(no description)
Request Url Example
https://demo-trader.ayson.us/api/v1/pricing/tick/iterator
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"next": "string (int64)",
"ticks": [
{
"id": "string (int64)",
"lowPrice": "string (decimal)",
"highPrice": "string (decimal)",
"openingPrice": "string (decimal)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)",
"lastPrice": "string (decimal)",
"lastQty": "integer (int32)",
"totalQty": "integer (int32)",
"positionQty": "integer (int32)",
"preClosingPrice": "string (decimal)",
"preSettlePrice": "string (decimal)",
"instrumentDate": "string (date)",
"tickTime": "string (int64)"
}
]
},
"message": "string"
}
get last tick
(no description)
Request Url Example
https://demo-trader.ayson.us/api/v1/pricing/tick/last
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"bestBid": "string (decimal)",
"bestOffer": "string (decimal)",
"worstBid": "string (decimal)",
"worstOffer": "string (decimal)",
"lastPrice": "string (decimal)"
},
"message": "string"
}
trading
iterate cashflow
(no description)
number format : "81829012300"
FEE, PL, BALANCE, FINANCED, CASHBACK, SUBSCRIPTION, SWAP, COMMISSION, ADJUSTMENT
IN, OUT
number format : "81829012300"
number format : "81829012300"
number format : "81829012300"
number format : "81829012300"
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/cashflow/iterator
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"next": "string (int64)",
"cashflows": [
{
"id": "string (int64)",
"version": "integer (int32)",
"accountId": "string (int64)",
"clusterId": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"sourceId": "string (int64)",
"sourceId2": "string (int64)",
"realizeCurrency": "integer (int32)",
"currency": "integer (int32)",
"sourceCurrency": "integer (int32)",
"convertRate": "string (decimal)",
"side": "integer (int32)",
"type": "integer (int32)",
"amount": "string (decimal)",
"sourceAmount": "string (decimal)",
"settleDate": "string (date)",
"occurDate": "string (date)",
"occurTime": "string (int64)"
}
]
},
"message": "string"
}
iterate execution
(no description)
number format : "81829012300"
BUY, SELL
(no description)
OPEN, CLOSE
number format : "81829012300"
number format : "81829012300"
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/execution/iterator
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"next": "string (int64)",
"executions": [
{
"id": "string (int64)",
"orderId": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderType": "integer (int32)",
"placeType": "integer (int32)",
"executeType": "integer (int32)",
"executeTime": "string (int64)",
"executeDate": "string (date)",
"executePrice": "string (decimal)",
"executeLot": "integer (int32)",
"executeAmount": "string (decimal)",
"commission": "string (decimal)",
"pl": "string (decimal)",
"baseCommission": "string (decimal)",
"basePl": "string (decimal)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeExecutionId": "string"
}
]
},
"message": "string"
}
today execution
(no description)
number format : "81829012300"
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/execution/today
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"next": "string (int64)",
"executions": [
{
"id": "string (int64)",
"orderId": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderType": "integer (int32)",
"placeType": "integer (int32)",
"executeType": "integer (int32)",
"executeTime": "string (int64)",
"executeDate": "string (date)",
"executePrice": "string (decimal)",
"executeLot": "integer (int32)",
"executeAmount": "string (decimal)",
"commission": "string (decimal)",
"pl": "string (decimal)",
"baseCommission": "string (decimal)",
"basePl": "string (decimal)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeExecutionId": "string"
}
]
},
"message": "string"
}
place order
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/order
Request Content-Types: application/json
Request Body Example
{
"contractId": "integer (int32)",
"orderType": "integer (int32)",
"positionDetailId": "string (int64)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"side": "integer (int32)",
"clientAccountId": "string (int64)",
"clientOrderId": "string"
}
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"tradingResult": "integer (int32)",
"order": {
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
},
"validations": "object",
"result": "string"
},
"message": "string"
}
clear order
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/order/clear
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"tradingResult": "integer (int32)",
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
],
"validations": "object",
"result": "string"
},
"message": "string"
}
iterate order
(no description)
number format : "81829012300"
BUY, SELL
(no description)
bitwise enum, mask: [OPEN(00000001), CLOSE(00000010), NET(00000100)]
number format : "81829012300"
number format : "81829012300"
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/order/iterator
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"next": "string (int64)",
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
]
},
"message": "string"
}
query order
number format : "81829012300"
(no description)
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/order/query
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"tradingResult": "integer (int32)",
"order": {
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
},
"executions": [
{
"id": "string (int64)",
"orderId": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderType": "integer (int32)",
"placeType": "integer (int32)",
"executeType": "integer (int32)",
"executeTime": "string (int64)",
"executeDate": "string (date)",
"executePrice": "string (decimal)",
"executeLot": "integer (int32)",
"executeAmount": "string (decimal)",
"commission": "string (decimal)",
"pl": "string (decimal)",
"baseCommission": "string (decimal)",
"basePl": "string (decimal)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeExecutionId": "string"
}
],
"result": "string"
},
"message": "string"
}
today order
(no description)
number format : "81829012300"
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/order/today
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"next": "string (int64)",
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
]
},
"message": "string"
}
today posted order
(no description)
number format : "81829012300"
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/order/today/posted
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"next": "string (int64)",
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
]
},
"message": "string"
}
today tpsl close order
(no description)
number format : "81829012300"
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/order/today/tpsl/close
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"next": "string (int64)",
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
]
},
"message": "string"
}
today tpsl open order
(no description)
number format : "81829012300"
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/order/today/tpsl/open
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"next": "string (int64)",
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
]
},
"message": "string"
}
modify order
number format : "81829012300"
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/order/{orderId}
Request Content-Types: application/json
Request Body Example
{
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"expireType": "integer (int32)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)"
}
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"tradingResult": "integer (int32)",
"order": {
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
},
"validations": "object",
"result": "string"
},
"message": "string"
}
cancel order
number format : "81829012300"
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/order/{orderId}
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"tradingResult": "integer (int32)",
"order": {
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
},
"validations": "object",
"result": "string"
},
"message": "string"
}
query position
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/position
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"accountId": "string (int64)",
"account": {
"id": "string (int64)",
"version": "integer (int32)",
"loginId": "string",
"name": "string",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"status": "integer (int32)",
"marginStatus": "integer (int32)"
},
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
],
"positionDetails": [
{
"id": "string (int64)",
"accountId": "string (int64)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currency": "integer (int32)",
"orderId": "string (int64)",
"side": "integer (int32)",
"status": "integer (int32)",
"openDate": "string (date)",
"openTime": "string (int64)",
"openPrice": "string (decimal)",
"openLot": "integer (int32)",
"closedLot": "integer (int32)",
"pl": "string (decimal)"
}
]
},
"message": "string"
}
liquidate position
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/position/liquidate
Request Content-Types: application/json
Request Body Example
[
{
"side": "integer (int32)",
"contractId": "integer (int32)"
}
]
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"tradingResult": "integer (int32)",
"validations": "object",
"result": "string"
},
"message": "string"
}
iterate position detail
(no description)
number format : "81829012300"
BUY, SELL
(no description)
number format : "81829012300"
number format : "81829012300"
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/positionDetail/iterator
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"next": "string (int64)",
"positionDetails": [
{
"id": "string (int64)",
"accountId": "string (int64)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currency": "integer (int32)",
"orderId": "string (int64)",
"side": "integer (int32)",
"status": "integer (int32)",
"openDate": "string (date)",
"openTime": "string (int64)",
"openPrice": "string (decimal)",
"openLot": "integer (int32)",
"closedLot": "integer (int32)",
"pl": "string (decimal)"
}
]
},
"message": "string"
}
quote levels
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/quoteLevels
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"accountId": "string (int64)",
"quotationType": "integer (int32)",
"levels": [
{
"exchange": "integer (int32)",
"level": "integer (int32)",
"l1Days": "integer (int32)",
"l2Days": "integer (int32)"
}
]
},
"message": "string"
}
iterate subscription
HKFE, SGX, CME, COMEX, NYMEX, CBOT, EUREX
(no description)
number format : "81829012300"
number format : "81829012300"
number format : "81829012300"
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/subscription/iterator
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"next": "string (int64)",
"subscriptions": [
{
"id": "string (int64)",
"exchange": "integer (int32)",
"currency": "integer (int32)",
"subscriptionTime": "string (int64)",
"months": "integer (int32)",
"level": "integer (int32)",
"monthFee": "string (decimal)",
"totalFee": "string (decimal)",
"discount": "string (decimal)"
}
]
},
"message": "string"
}
subscribe
Request Url Example
https://demo-trader.ayson.us/api/v1/trading/subscription/subscribe
Request Content-Types: application/json
Request Body Example
[
{
"exchange": "integer (int32)",
"level": "integer (int32)",
"months": "integer (int32)"
}
]
successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"tradingResult": "integer (int32)",
"validations": "object",
"result": "string"
},
"message": "string"
}
trading
subscribe perfromance event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"interval": "integer (int32)",
"event": "PERFORMANCE",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"performance": {
"accountId": "string (int64)",
"equity": "string (decimal)",
"floatingPl": "string (decimal)",
"riskRatio": "string (decimal)",
"safetyRatio": "string (decimal)",
"lastTradeTime": "string (int64)",
"pl": "string (decimal)",
"roi": "string (decimal)",
"mdd": "string (decimal)",
"maxRiskRatio": "string (decimal)",
"winRatio": "string (decimal)",
"plRatio": "string (decimal)",
"tradeDays": "integer (int32)",
"tradeLots": "integer (int32)",
"avgProfit": "string (decimal)",
"avgLoss": "string (decimal)",
"avgHoldingPeriod": "string (int64)",
"avgTradingTimes": "string (decimal)",
"avgTradingLots": "string (decimal)",
"performanceTime": "string (int64)"
},
"roimdds": [
{
"date": "string (date)",
"roi": "string (decimal)",
"mdd": "string (decimal)"
}
],
"risks": [
{
"v1": "string (date)",
"v2": "string (decimal)"
}
],
"instrumentStatistics": [
{
"instrumentId": "integer (int32)",
"lots": "integer (int32)",
"pl": "string (decimal)"
}
]
},
"event": "PERFORMANCE",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Push Example
{
"data": {
"snapshot": "boolean",
"performance": {
"accountId": "string (int64)",
"equity": "string (decimal)",
"floatingPl": "string (decimal)",
"riskRatio": "string (decimal)",
"safetyRatio": "string (decimal)",
"lastTradeTime": "string (int64)",
"pl": "string (decimal)",
"roi": "string (decimal)",
"mdd": "string (decimal)",
"maxRiskRatio": "string (decimal)",
"winRatio": "string (decimal)",
"plRatio": "string (decimal)",
"tradeDays": "integer (int32)",
"tradeLots": "integer (int32)",
"avgProfit": "string (decimal)",
"avgLoss": "string (decimal)",
"avgHoldingPeriod": "string (int64)",
"avgTradingTimes": "string (decimal)",
"avgTradingLots": "string (decimal)",
"performanceTime": "string (int64)"
},
"roimdds": [
{
"date": "string (date)",
"roi": "string (decimal)",
"mdd": "string (decimal)"
}
],
"risks": [
{
"v1": "string (date)",
"v2": "string (decimal)"
}
],
"instrumentStatistics": [
{
"instrumentId": "integer (int32)",
"lots": "integer (int32)",
"pl": "string (decimal)"
}
]
},
"event": "Performance"
}
unsubscribe perfromance event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"interval": "integer (int32)",
"event": "PERFORMANCE",
"action": "UNSUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "PERFORMANCE",
"action": "UNSUBSCRIBE"
}
subscribe statement event
Request Url Example
wss://demo-trader.ayson.us/realtime
Request Example
{
"id": "string (int64)",
"event": "STATEMENT",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "STATEMENT",
"action": "SUBSCRIBE",
"data": {
"snapshot": "boolean",
"statement": {
"accountId": "string (int64)",
"equity": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"asset": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"balance": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"financed": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"posterior": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"floatingPl": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"frozenCommission": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"withdrawable": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayWithdrawal": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayDeposit": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayCommission": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayPl": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"freeMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"occupiedMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"positionMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"riskRatio": "string (decimal)",
"safetyRatio": "string (decimal)",
"marginStatus": "integer (int32)"
}
},
"snapshot": "string"
}
Push Example
{
"data": {
"accountId": "string (int64)",
"equity": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"asset": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"balance": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"financed": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"posterior": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"floatingPl": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"frozenCommission": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"withdrawable": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayWithdrawal": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayDeposit": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayCommission": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayPl": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"freeMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"occupiedMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"positionMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"riskRatio": "string (decimal)",
"safetyRatio": "string (decimal)",
"marginStatus": "integer (int32)"
},
"event": "STATEMENT"
}
unsubscribe statement event
Request Url Example
wss://demo-trader.ayson.us/realtime
Request Example
{
"id": "string (int64)",
"event": "STATEMENT",
"action": "UNSUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "STATEMENT",
"action": "UNSUBSCRIBE"
}
subscribe execution event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "EXECUTION",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"executions": [
{
"id": "string (int64)",
"orderId": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderType": "integer (int32)",
"placeType": "integer (int32)",
"executeType": "integer (int32)",
"executeTime": "string (int64)",
"executeDate": "string (date)",
"executePrice": "string (decimal)",
"executeLot": "integer (int32)",
"executeAmount": "string (decimal)",
"commission": "string (decimal)",
"pl": "string (decimal)",
"baseCommission": "string (decimal)",
"basePl": "string (decimal)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeExecutionId": "string"
}
]
},
"event": "EXECUTION",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Push Example
{
"data": {
"snapshot": "boolean",
"executions": [
{
"id": "string (int64)",
"orderId": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderType": "integer (int32)",
"placeType": "integer (int32)",
"executeType": "integer (int32)",
"executeTime": "string (int64)",
"executeDate": "string (date)",
"executePrice": "string (decimal)",
"executeLot": "integer (int32)",
"executeAmount": "string (decimal)",
"commission": "string (decimal)",
"pl": "string (decimal)",
"baseCommission": "string (decimal)",
"basePl": "string (decimal)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeExecutionId": "string"
}
]
},
"event": "EXECUTION"
}
unsubscribe execution event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "EXECUTION",
"action": "UNSUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "EXECUTION",
"action": "UNSUBSCRIBE"
}
subscribe order event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "ORDER",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
]
},
"event": "ORDER",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Push Example
{
"data": {
"snapshot": "boolean",
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
]
},
"event": "ORDER"
}
unsubscribe order event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "ORDER",
"action": "UNSUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "ORDER",
"action": "UNSUBSCRIBE"
}
subscribe position event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "POSITION",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"account": {
"id": "string (int64)",
"version": "integer (int32)",
"loginId": "string",
"name": "string",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"status": "integer (int32)",
"marginStatus": "integer (int32)"
},
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
],
"positionDetails": [
{
"id": "string (int64)",
"accountId": "string (int64)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currency": "integer (int32)",
"orderId": "string (int64)",
"side": "integer (int32)",
"status": "integer (int32)",
"openDate": "string (date)",
"openTime": "string (int64)",
"openPrice": "string (decimal)",
"openLot": "integer (int32)",
"closedLot": "integer (int32)",
"pl": "string (decimal)"
}
]
},
"event": "POSITION",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Push Example
{
"data": {
"snapshot": "boolean",
"account": {
"id": "string (int64)",
"version": "integer (int32)",
"loginId": "string",
"name": "string",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"status": "integer (int32)",
"marginStatus": "integer (int32)"
},
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
],
"positionDetails": [
{
"id": "string (int64)",
"accountId": "string (int64)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currency": "integer (int32)",
"orderId": "string (int64)",
"side": "integer (int32)",
"status": "integer (int32)",
"openDate": "string (date)",
"openTime": "string (int64)",
"openPrice": "string (decimal)",
"openLot": "integer (int32)",
"closedLot": "integer (int32)",
"pl": "string (decimal)"
}
]
},
"event": "POSITION"
}
unsubscribe position event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "POSITION",
"action": "UNSUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "POSITION",
"action": "UNSUBSCRIBE"
}
subscribe quote level event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "QUOTE_LEVEL",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"levels": [
{
"exchange": "integer (int32)",
"level": "integer (int32)",
"l1Days": "integer (int32)",
"l2Days": "integer (int32)"
}
],
"quotationType": "integer (int32)"
},
"event": "QUOTE_LEVEL",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Push Example
{
"data": {
"snapshot": "boolean",
"levels": [
{
"exchange": "integer (int32)",
"level": "integer (int32)",
"l1Days": "integer (int32)",
"l2Days": "integer (int32)"
}
],
"quotationType": "integer (int32)"
},
"event": "QUOTE_LEVEL"
}
unsubscribe quote level event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "QUOTE_LEVEL",
"action": "UNSUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "QUOTE_LEVEL",
"action": "UNSUBSCRIBE"
}
pricing
subscribe quote event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"contractIds": [
"integer (int32)"
],
"event": "QUOTE",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"quotes": [
{
"id": "string (int64)",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"lowPrice": "string (decimal)",
"highPrice": "string (decimal)",
"openingPrice": "string (decimal)",
"preClosingPrice": "string (decimal)",
"preSettlePrice": "string (decimal)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)",
"limitDownPrice": "string (decimal)",
"limitUpPrice": "string (decimal)",
"lastPrice": "string (decimal)",
"lastQty": "integer (int32)",
"totalQty": "integer (int32)",
"changeRate": "string (decimal)",
"changeValue": "string (decimal)",
"positionQty": "integer (int32)",
"instrumentDate": "string (date)",
"tickTime": "string (int64)"
}
]
},
"event": "QUOTE",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Push Example
{
"data": {
"snapshot": "boolean",
"quotes": [
{
"id": "string (int64)",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"lowPrice": "string (decimal)",
"highPrice": "string (decimal)",
"openingPrice": "string (decimal)",
"preClosingPrice": "string (decimal)",
"preSettlePrice": "string (decimal)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)",
"limitDownPrice": "string (decimal)",
"limitUpPrice": "string (decimal)",
"lastPrice": "string (decimal)",
"lastQty": "integer (int32)",
"totalQty": "integer (int32)",
"changeRate": "string (decimal)",
"changeValue": "string (decimal)",
"positionQty": "integer (int32)",
"instrumentDate": "string (date)",
"tickTime": "string (int64)"
}
]
},
"event": "QUOTE"
}
unsubscribe quote event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"contractIds": [
"integer (int32)"
],
"event": "QUOTE",
"action": "UNSUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "QUOTE",
"action": "UNSUBSCRIBE"
}
subscribe depth event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"contractId": "integer (int32)",
"event": "DEPTH",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"depth": {
"id": "string (int64)",
"instrumentDate": "string (date)",
"quoteTime": "string (int64)",
"bids": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
],
"asks": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
]
}
},
"event": "DEPTH",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Push Example
{
"data": {
"snapshot": "boolean",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"depth": {
"id": "string (int64)",
"instrumentDate": "string (date)",
"quoteTime": "string (int64)",
"bids": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
],
"asks": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
]
}
},
"event": "DEPTH"
}
unsubscribe depth event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"contractId": "integer (int32)",
"event": "DEPTH",
"action": "UNSUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "DEPTH",
"action": "UNSUBSCRIBE"
}
subscribe depths event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"contractIds": [
"integer (int32)"
],
"event": "DEPTHS",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"depths": [
{
"id": "string (int64)",
"instrumentDate": "string (date)",
"quoteTime": "string (int64)",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"bids": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
],
"asks": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
]
}
]
},
"event": "DEPTHS",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Push Example
{
"data": {
"snapshot": "boolean",
"depths": [
{
"id": "string (int64)",
"instrumentDate": "string (date)",
"quoteTime": "string (int64)",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"bids": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
],
"asks": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
]
}
]
},
"event": "DEPTHS"
}
unsubscribe depths event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"contractIds": [
"integer (int32)"
],
"event": "DEPTHS",
"action": "UNSUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "DEPTHS",
"action": "UNSUBSCRIBE"
}
subscribe evaluation event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "EVALUATION",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"evaluations": [
{
"contractId": "integer (int32)",
"price": "string (decimal)"
}
]
},
"event": "EVALUATION",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Push Example
{
"data": {
"snapshot": "boolean",
"evaluations": [
{
"contractId": "integer (int32)",
"price": "string (decimal)"
}
]
},
"event": "EVALUATION"
}
unsubscribe evaluation event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "EVALUATION",
"action": "UNSUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "EVALUATION",
"action": "UNSUBSCRIBE"
}
subscribe chart event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"contractId": "integer (int32)",
"chartType": "integer (int32)",
"event": "CHART",
"action": "SUBSCRIBE",
"limit": "integer (int32)",
"snapshot": "string"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"chartType": "integer (int32)",
"charts": [
{
"id": "string (int64)",
"low": "string (decimal)",
"high": "string (decimal)",
"open": "string (decimal)",
"close": "string (decimal)",
"vwap": "string (decimal)",
"qty": "integer (int32)",
"instrumentDate": "string (date)",
"openTime": "string (int64)",
"closeTime": "string (int64)",
"version": "integer (int32)"
}
]
},
"event": "CHART",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Push Example
{
"data": {
"snapshot": "boolean",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"chartType": "integer (int32)",
"charts": [
{
"id": "string (int64)",
"low": "string (decimal)",
"high": "string (decimal)",
"open": "string (decimal)",
"close": "string (decimal)",
"vwap": "string (decimal)",
"qty": "integer (int32)",
"instrumentDate": "string (date)",
"openTime": "string (int64)",
"closeTime": "string (int64)",
"version": "integer (int32)"
}
]
},
"event": "CHART"
}
unsubscribe chart event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"contractId": "integer (int32)",
"chartType": "integer (int32)",
"event": "CHART",
"action": "UNSUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "CHART",
"action": "UNSUBSCRIBE"
}
subscribe tick event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"contractId": "integer (int32)",
"event": "TICK",
"action": "SUBSCRIBE",
"limit": "integer (int32)",
"snapshot": "string"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"purchased": "boolean",
"ticks": [
{
"id": "string (int64)",
"lowPrice": "string (decimal)",
"highPrice": "string (decimal)",
"openingPrice": "string (decimal)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)",
"lastPrice": "string (decimal)",
"lastQty": "integer (int32)",
"totalQty": "integer (int32)",
"positionQty": "integer (int32)",
"preClosingPrice": "string (decimal)",
"preSettlePrice": "string (decimal)",
"instrumentDate": "string (date)",
"tickTime": "string (int64)"
}
]
},
"event": "TICK",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Push Example
{
"data": {
"snapshot": "boolean",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"purchased": "boolean",
"ticks": [
{
"id": "string (int64)",
"lowPrice": "string (decimal)",
"highPrice": "string (decimal)",
"openingPrice": "string (decimal)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)",
"lastPrice": "string (decimal)",
"lastQty": "integer (int32)",
"totalQty": "integer (int32)",
"positionQty": "integer (int32)",
"preClosingPrice": "string (decimal)",
"preSettlePrice": "string (decimal)",
"instrumentDate": "string (date)",
"tickTime": "string (int64)"
}
]
},
"event": "TICK"
}
unsubscribe tick event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"contractId": "integer (int32)",
"event": "TICK",
"action": "UNSUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "TICK",
"action": "UNSUBSCRIBE"
}
subscribe rate event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "RATE",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"rates": [
{
"currencyPairId": "integer (int32)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)"
}
]
},
"event": "RATE",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Push Example
{
"data": {
"snapshot": "boolean",
"rates": [
{
"currencyPairId": "integer (int32)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)"
}
]
},
"event": "RATE"
}
unsubscribe rate event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "RATE",
"action": "UNSUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "RATE",
"action": "UNSUBSCRIBE"
}
market
subscribe market event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "MARKET",
"action": "SUBSCRIBE",
"snapshot": "string"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"baseCurrencyId": "integer (int32)",
"themeServer": "string",
"institution": {
"id": "integer (int32)",
"name": "string",
"abbreviation": "string",
"phone": "string",
"mail": "string",
"website": "string",
"depositUrl": "string",
"withdrawalUrl": "string",
"theme": "integer (int32)",
"address": "string",
"quotationType": "integer (int32)",
"positionMode": "integer (int32)",
"orderType": "integer (int32)",
"colorPreference": "integer (int32)",
"refreshEffect": "boolean",
"quickOrder": "boolean",
"multiCurrency": "boolean",
"version": "integer (int32)"
},
"currencies": [
{
"id": "integer (int32)",
"name": "string",
"scale": "integer (int32)",
"version": "integer (int32)"
}
],
"currencyPairs": [
{
"id": "integer (int32)",
"name": "string",
"baseCurrency": "integer (int32)",
"quoteCurrency": "integer (int32)",
"scale": "integer (int32)",
"version": "integer (int32)"
}
],
"contracts": [
{
"id": "integer (int32)",
"relatedId": "integer (int32)",
"code": "string",
"status": "integer (int32)",
"instrumentId": "integer (int32)",
"expirationDate": "string (date)",
"lastTradeDate": "string (date)",
"deliveryMonth": "integer (int32)",
"version": "integer (int32)"
}
],
"instruments": [
{
"id": "integer (int32)",
"exchange": "integer (int32)",
"majorContract": "integer (int32)",
"displayOrder": "integer (int32)",
"tradingCurrency": "integer (int32)",
"contractSize": "string (decimal)",
"tickSize": "string (decimal)",
"version": "integer (int32)",
"zoneId": "string",
"slots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
],
"dstSlots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
]
}
],
"instrumentCodes": [
{
"id": "integer (int32)",
"code": "string",
"en": "string",
"cn": "string",
"tw": "string",
"version": "integer (int32)"
}
],
"rateTemplates": [
{
"id": "integer (int32)",
"currencyPairId": "integer (int32)",
"rateType": "integer (int32)",
"rate": "string (decimal)",
"askAdjustValue": "integer (int32)"
}
]
}
}
Push Example
{
"data": {
"snapshot": "boolean",
"baseCurrencyId": "integer (int32)",
"themeServer": "string",
"institution": {
"id": "integer (int32)",
"name": "string",
"abbreviation": "string",
"phone": "string",
"mail": "string",
"website": "string",
"depositUrl": "string",
"withdrawalUrl": "string",
"theme": "integer (int32)",
"address": "string",
"quotationType": "integer (int32)",
"positionMode": "integer (int32)",
"orderType": "integer (int32)",
"colorPreference": "integer (int32)",
"refreshEffect": "boolean",
"quickOrder": "boolean",
"multiCurrency": "boolean",
"version": "integer (int32)"
},
"currencies": [
{
"id": "integer (int32)",
"name": "string",
"scale": "integer (int32)",
"version": "integer (int32)"
}
],
"currencyPairs": [
{
"id": "integer (int32)",
"name": "string",
"baseCurrency": "integer (int32)",
"quoteCurrency": "integer (int32)",
"scale": "integer (int32)",
"version": "integer (int32)"
}
],
"contracts": [
{
"id": "integer (int32)",
"relatedId": "integer (int32)",
"code": "string",
"status": "integer (int32)",
"instrumentId": "integer (int32)",
"expirationDate": "string (date)",
"lastTradeDate": "string (date)",
"deliveryMonth": "integer (int32)",
"version": "integer (int32)"
}
],
"instruments": [
{
"id": "integer (int32)",
"exchange": "integer (int32)",
"majorContract": "integer (int32)",
"displayOrder": "integer (int32)",
"tradingCurrency": "integer (int32)",
"contractSize": "string (decimal)",
"tickSize": "string (decimal)",
"version": "integer (int32)",
"zoneId": "string",
"slots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
],
"dstSlots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
]
}
],
"instrumentCodes": [
{
"id": "integer (int32)",
"code": "string",
"en": "string",
"cn": "string",
"tw": "string",
"version": "integer (int32)"
}
],
"rateTemplates": [
{
"id": "integer (int32)",
"currencyPairId": "integer (int32)",
"rateType": "integer (int32)",
"rate": "string (decimal)",
"askAdjustValue": "integer (int32)",
"bidAdjustValue": "integer (int32)",
"version": "integer (int32)"
}
]
}
}
unsubscribe market event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "MARKET",
"action": "UNSUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "MARKET",
"action": "UNSUBSCRIBE"
}
utility
ping
send ping request every 10 seconds to keep connection alive
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"cookie": "string (int64)",
"action": "PING"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"cookie": "string (int64)"
}
subscribe session event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "SESSION",
"action": "SUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "SESSION",
"action": "SUBSCRIBE"
}
Push Example
{
"data": {
"snapshot": "boolean",
"operatorId": "integer (int32)",
"loginId": "string",
"clientOs": "string",
"clientDevice": "string",
"clientAddress": "string"
},
"event": "SESSION"
}
unsubscribe session event
Request Url Example
wss://demo-trader.ayson.us/api/v1/realtime
Request Example
{
"id": "string (int64)",
"event": "SESSION",
"action": "UNSUBSCRIBE"
}
Response Example
{
"id": "string (int64)",
"result": "string",
"event": "SESSION",
"action": "UNSUBSCRIBE"
}
Schema Definitions
AccessV1
- id: string (int64)
-
number format : "81829012300"
- loginTime: string (int64)
-
number format : "81829012300"
- logoutTime: string (int64)
-
number format : "81829012300"
- onlineTime: string (int64)
-
number format : "81829012300"
- offlineTime: string (int64)
-
number format : "81829012300"
- online: boolean
- clientOs: string
- clientDevice: string
- clientAddress: string
- clientDeviceId: string
Example
{
"id": "string (int64)",
"loginTime": "string (int64)",
"logoutTime": "string (int64)",
"onlineTime": "string (int64)",
"offlineTime": "string (int64)",
"online": "boolean",
"clientOs": "string",
"clientDevice": "string",
"clientAddress": "string",
"clientDeviceId": "string"
}
ApiMessageAppReleaseV1
- data: AppReleaseV1
- message: string
Example
{
"data": {
"url1": "string",
"url2": "string",
"releaseTime": "string (int64)",
"postponable": "boolean",
"appType": "integer (int32)",
"appVersion": "string (string)",
"releaseStatus": "integer (int32)"
},
"message": "string"
}
ApiMessageClearOrderV1Response
- data: ClearOrderV1Response
- message: string
Example
{
"data": {
"tradingResult": "integer (int32)",
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
],
"validations": "object",
"result": "string"
},
"message": "string"
}
ApiMessageCurrencyV1
- data: CurrencyV1
- message: string
Example
{
"data": {
"id": "integer (int32)",
"name": "string",
"scale": "integer (int32)",
"version": "integer (int32)"
},
"message": "string"
}
ApiMessageGetMarketQuotationV1Response
- data: GetMarketQuotationV1Response
- message: string
Example
{
"data": {
"bestBid": "string (decimal)",
"bestOffer": "string (decimal)",
"worstBid": "string (decimal)",
"worstOffer": "string (decimal)",
"lastPrice": "string (decimal)"
},
"message": "string"
}
ApiMessageItV1
- data: ItV1
- message: string
Example
{
"data": {
"id": "integer (int32)",
"name": "string",
"abbreviation": "string",
"phone": "string",
"mail": "string",
"website": "string",
"depositUrl": "string",
"withdrawalUrl": "string",
"theme": "integer (int32)",
"address": "string",
"quotationType": "integer (int32)",
"positionMode": "integer (int32)",
"orderType": "integer (int32)",
"colorPreference": "integer (int32)",
"refreshEffect": "boolean",
"quickOrder": "boolean",
"multiCurrency": "boolean",
"version": "integer (int32)"
},
"message": "string"
}
ApiMessageIterateAccessV1Response
- data: IterateAccessV1Response
- message: string
Example
{
"data": {
"next": "string (int64)",
"accesses": [
{
"id": "string (int64)",
"loginTime": "string (int64)",
"logoutTime": "string (int64)",
"onlineTime": "string (int64)",
"offlineTime": "string (int64)",
"online": "boolean",
"clientOs": "string",
"clientDevice": "string",
"clientAddress": "string",
"clientDeviceId": "string"
}
]
},
"message": "string"
}
ApiMessageIterateChartV1Response
- data: IterateChartV1Response
- message: string
Example
{
"data": {
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"type": "integer (int32)",
"next": "string (int64)",
"charts": [
{
"id": "string (int64)",
"low": "string (decimal)",
"high": "string (decimal)",
"open": "string (decimal)",
"close": "string (decimal)",
"vwap": "string (decimal)",
"qty": "integer (int32)",
"instrumentDate": "string (date)",
"openTime": "string (int64)",
"closeTime": "string (int64)",
"version": "integer (int32)"
}
]
},
"message": "string"
}
ApiMessageIterateReportV1Response
- data: IterateReportV1Response
- message: string
Example
{
"data": {
"next": "string (int64)",
"reports": [
{
"id": "string (int64)",
"reportType": "integer (int32)",
"issueDate": "string (date)",
"issueTime": "string (int64)",
"issueStatus": "integer (int32)",
"stageTime": "string (int64)",
"stageStatus": "integer (int32)",
"receiptTime": "string (int64)",
"receiptStatus": "integer (int32)"
}
]
},
"message": "string"
}
ApiMessageIterateTickV1Response
- data: IterateTickV1Response
- message: string
Example
{
"data": {
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"next": "string (int64)",
"ticks": [
{
"id": "string (int64)",
"lowPrice": "string (decimal)",
"highPrice": "string (decimal)",
"openingPrice": "string (decimal)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)",
"lastPrice": "string (decimal)",
"lastQty": "integer (int32)",
"totalQty": "integer (int32)",
"positionQty": "integer (int32)",
"preClosingPrice": "string (decimal)",
"preSettlePrice": "string (decimal)",
"instrumentDate": "string (date)",
"tickTime": "string (int64)"
}
]
},
"message": "string"
}
ApiMessageIterateTradingCashflowV1Response
- data: IterateTradingCashflowV1Response
- message: string
Example
{
"data": {
"next": "string (int64)",
"cashflows": [
{
"id": "string (int64)",
"version": "integer (int32)",
"accountId": "string (int64)",
"clusterId": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"sourceId": "string (int64)",
"sourceId2": "string (int64)",
"realizeCurrency": "integer (int32)",
"currency": "integer (int32)",
"sourceCurrency": "integer (int32)",
"convertRate": "string (decimal)",
"side": "integer (int32)",
"type": "integer (int32)",
"amount": "string (decimal)",
"sourceAmount": "string (decimal)",
"settleDate": "string (date)",
"occurDate": "string (date)",
"occurTime": "string (int64)"
}
]
},
"message": "string"
}
ApiMessageIterateTradingExecutionV1Response
- data: IterateTradingExecutionV1Response
- message: string
Example
{
"data": {
"next": "string (int64)",
"executions": [
{
"id": "string (int64)",
"orderId": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderType": "integer (int32)",
"placeType": "integer (int32)",
"executeType": "integer (int32)",
"executeTime": "string (int64)",
"executeDate": "string (date)",
"executePrice": "string (decimal)",
"executeLot": "integer (int32)",
"executeAmount": "string (decimal)",
"commission": "string (decimal)",
"pl": "string (decimal)",
"baseCommission": "string (decimal)",
"basePl": "string (decimal)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeExecutionId": "string"
}
]
},
"message": "string"
}
ApiMessageIterateTradingOrderV1Response
- data: IterateTradingOrderV1Response
- message: string
Example
{
"data": {
"next": "string (int64)",
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
]
},
"message": "string"
}
ApiMessageIterateTradingPositionDetailV1Response
- data: IterateTradingPositionDetailV1Response
- message: string
Example
{
"data": {
"next": "string (int64)",
"positionDetails": [
{
"id": "string (int64)",
"accountId": "string (int64)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currency": "integer (int32)",
"orderId": "string (int64)",
"side": "integer (int32)",
"status": "integer (int32)",
"openDate": "string (date)",
"openTime": "string (int64)",
"openPrice": "string (decimal)",
"openLot": "integer (int32)",
"closedLot": "integer (int32)",
"pl": "string (decimal)"
}
]
},
"message": "string"
}
ApiMessageIterateTradingSubscriptionV1Response
- data: IterateTradingSubscriptionV1Response
- message: string
Example
{
"data": {
"next": "string (int64)",
"subscriptions": [
{
"id": "string (int64)",
"exchange": "integer (int32)",
"currency": "integer (int32)",
"subscriptionTime": "string (int64)",
"months": "integer (int32)",
"level": "integer (int32)",
"monthFee": "string (decimal)",
"totalFee": "string (decimal)",
"discount": "string (decimal)"
}
]
},
"message": "string"
}
ApiMessageLiquidatePositionV1Response
- data: LiquidatePositionV1Response
- message: string
Example
{
"data": {
"tradingResult": "integer (int32)",
"validations": "object",
"result": "string"
},
"message": "string"
}
ApiMessageListContractV1
- data: ContractV1
-
ContractV1 - message: string
Example
{
"data": [
{
"id": "integer (int32)",
"relatedId": "integer (int32)",
"code": "string",
"status": "integer (int32)",
"instrumentId": "integer (int32)",
"expirationDate": "string (date)",
"lastTradeDate": "string (date)",
"deliveryMonth": "integer (int32)",
"version": "integer (int32)"
}
],
"message": "string"
}
ApiMessageListCurrencyPairV1
- data: CurrencyPairV1
-
CurrencyPairV1 - message: string
Example
{
"data": [
{
"id": "integer (int32)",
"name": "string",
"baseCurrency": "integer (int32)",
"quoteCurrency": "integer (int32)",
"scale": "integer (int32)",
"version": "integer (int32)"
}
],
"message": "string"
}
ApiMessageListCurrencyV1
- data: CurrencyV1
-
CurrencyV1 - message: string
Example
{
"data": [
{
"id": "integer (int32)",
"name": "string",
"scale": "integer (int32)",
"version": "integer (int32)"
}
],
"message": "string"
}
ApiMessageListInstrumentCodeV1
- data: InstrumentCodeV1
-
InstrumentCodeV1 - message: string
Example
{
"data": [
{
"id": "integer (int32)",
"code": "string",
"en": "string",
"cn": "string",
"tw": "string",
"version": "integer (int32)"
}
],
"message": "string"
}
ApiMessageListInstrumentV1
- data: InstrumentV1
-
InstrumentV1 - message: string
Example
{
"data": [
{
"id": "integer (int32)",
"exchange": "integer (int32)",
"majorContract": "integer (int32)",
"displayOrder": "integer (int32)",
"tradingCurrency": "integer (int32)",
"contractSize": "string (decimal)",
"tickSize": "string (decimal)",
"version": "integer (int32)",
"zoneId": "string",
"slots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
],
"dstSlots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
]
}
],
"message": "string"
}
ApiMessageListItInstrumentV1
- data: ItInstrumentV1
-
ItInstrumentV1 - message: string
Example
{
"data": [
{
"id": "integer (int32)",
"itId": "integer (int32)",
"instrumentId": "integer (int32)",
"groupId": "integer (int32)",
"displayOrder": "integer (int32)",
"version": "integer (int32)"
}
],
"message": "string"
}
ApiMessageListSubscriptionFeeV1
- data: SubscriptionFeeV1
-
SubscriptionFeeV1 - message: string
Example
{
"data": [
{
"exchange": "integer (int32)",
"currency": "integer (int32)",
"l1Fee": "string (decimal)",
"l2Fee": "string (decimal)",
"m3Discount": "string (decimal)",
"m6Discount": "string (decimal)",
"y1Discount": "string (decimal)",
"version": "integer (int32)"
}
],
"message": "string"
}
ApiMessageLoginV1Response
- data: LoginV1Response
- message: string
Example
{
"data": {
"result": "string",
"token": "string",
"accountId": "string (int64)"
},
"message": "string"
}
ApiMessageLogoutV1Response
- data: LogoutV1Response
- message: string
Example
{
"data": {
"result": "string"
},
"message": "string"
}
ApiMessageOrderV1Response
- data: OrderV1Response
- message: string
Example
{
"data": {
"tradingResult": "integer (int32)",
"order": {
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
},
"validations": "object",
"result": "string"
},
"message": "string"
}
ApiMessagePasswordV1Response
- data: PasswordV1Response
- message: string
Example
{
"data": {
"result": "string",
"validations": "object"
},
"message": "string"
}
ApiMessagePingV1Response
- data: PingV1Response
- message: string
Example
{
"data": {
"id": "string (int64)",
"result": "string",
"cookie": "string (int64)"
},
"message": "string"
}
ApiMessagePositionV1
- data: PositionV1
- message: string
Example
{
"data": {
"accountId": "string (int64)",
"account": {
"id": "string (int64)",
"version": "integer (int32)",
"loginId": "string",
"name": "string",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"status": "integer (int32)",
"marginStatus": "integer (int32)"
},
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
],
"positionDetails": [
{
"id": "string (int64)",
"accountId": "string (int64)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currency": "integer (int32)",
"orderId": "string (int64)",
"side": "integer (int32)",
"status": "integer (int32)",
"openDate": "string (date)",
"openTime": "string (int64)",
"openPrice": "string (decimal)",
"openLot": "integer (int32)",
"closedLot": "integer (int32)",
"pl": "string (decimal)"
}
]
},
"message": "string"
}
ApiMessageQueryOrderV1Response
- data: QueryOrderV1Response
- message: string
Example
{
"data": {
"tradingResult": "integer (int32)",
"order": {
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
},
"executions": [
{
"id": "string (int64)",
"orderId": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderType": "integer (int32)",
"placeType": "integer (int32)",
"executeType": "integer (int32)",
"executeTime": "string (int64)",
"executeDate": "string (date)",
"executePrice": "string (decimal)",
"executeLot": "integer (int32)",
"executeAmount": "string (decimal)",
"commission": "string (decimal)",
"pl": "string (decimal)",
"baseCommission": "string (decimal)",
"basePl": "string (decimal)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeExecutionId": "string"
}
],
"result": "string"
},
"message": "string"
}
ApiMessageQuoteLevelV1Response
- data: QuoteLevelV1Response
- message: string
Example
{
"data": {
"accountId": "string (int64)",
"quotationType": "integer (int32)",
"levels": [
{
"exchange": "integer (int32)",
"level": "integer (int32)",
"l1Days": "integer (int32)",
"l2Days": "integer (int32)"
}
]
},
"message": "string"
}
ApiMessageSkipWarningV1Response
- data: SkipWarningV1Response
- message: string
Example
{
"data": {
"result": "string"
},
"message": "string"
}
ApiMessageSubscribeV1Response
- data: SubscribeV1Response
- message: string
Example
{
"data": {
"result": "string",
"detail": "string"
},
"message": "string"
}
ApiMessageSubscriptionV1Response
- data: SubscriptionV1Response
- message: string
Example
{
"data": {
"tradingResult": "integer (int32)",
"validations": "object",
"result": "string"
},
"message": "string"
}
ApiMessageUnSubscribeV1Response
- data: UnSubscribeV1Response
- message: string
Example
{
"data": {
"result": "string",
"detail": "string"
},
"message": "string"
}
AppReleaseV1
- url1: string
- url2: string
- releaseTime: string (int64)
-
number format : "81829012300"
- postponable: boolean
- appType: integer (int32) 1, 2, 3, 4, 5, 6
-
IOS, ANDROID, WINDOWS_X64, MAC_X64, MAC_ARM64, IOS_TF
- appVersion: string (string)
- releaseStatus: integer (int32) 1, 2, 9
-
ACTIVE, PENDING, DISABLED
Example
{
"url1": "string",
"url2": "string",
"releaseTime": "string (int64)",
"postponable": "boolean",
"appType": "integer (int32)",
"appVersion": "string (string)",
"releaseStatus": "integer (int32)"
}
BandV1
- price: string (decimal)
-
number format : "0.00001353123"
- qty: integer (int32)
Example
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
ChartV1
- id: string (int64)
-
number format : "81829012300"
- low: string (decimal)
-
number format : "0.00001353123"
- high: string (decimal)
-
number format : "0.00001353123"
- open: string (decimal)
-
number format : "0.00001353123"
- close: string (decimal)
-
number format : "0.00001353123"
- vwap: string (decimal)
-
number format : "0.00001353123"
- qty: integer (int32)
- instrumentDate: string (date)
- openTime: string (int64)
-
number format : "81829012300"
- closeTime: string (int64)
-
number format : "81829012300"
- version: integer (int32)
Example
{
"id": "string (int64)",
"low": "string (decimal)",
"high": "string (decimal)",
"open": "string (decimal)",
"close": "string (decimal)",
"vwap": "string (decimal)",
"qty": "integer (int32)",
"instrumentDate": "string (date)",
"openTime": "string (int64)",
"closeTime": "string (int64)",
"version": "integer (int32)"
}
ChartV1Event
Example
{
"snapshot": "boolean",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"chartType": "integer (int32)",
"charts": [
{
"id": "string (int64)",
"low": "string (decimal)",
"high": "string (decimal)",
"open": "string (decimal)",
"close": "string (decimal)",
"vwap": "string (decimal)",
"qty": "integer (int32)",
"instrumentDate": "string (date)",
"openTime": "string (int64)",
"closeTime": "string (int64)",
"version": "integer (int32)"
}
]
}
ChartV1EventMessage
- data: ChartV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
Example
{
"data": {
"snapshot": "boolean",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"chartType": "integer (int32)",
"charts": [
{
"id": "string (int64)",
"low": "string (decimal)",
"high": "string (decimal)",
"open": "string (decimal)",
"close": "string (decimal)",
"vwap": "string (decimal)",
"qty": "integer (int32)",
"instrumentDate": "string (date)",
"openTime": "string (int64)",
"closeTime": "string (int64)",
"version": "integer (int32)"
}
]
},
"event": "CHART"
}
ClearOrderV1Response
- tradingResult: integer (int32) 0, 1, 2, 3, 4, 5, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 51, 52, 54, 55, 56, 57, 99, -1
-
SUCCESS, TIMEOUT, REJECTED, RESTRICTED, STALE_VERSION, INTER_MISSION, LIQUIDATING, UNCLOSABLE_ACCOUNT, ACCOUNT_RESTRICTED, INSTRUMENT_RESTRICTED, CONTRACT_UNTRADABLE, OUT_OF_TRADING_HOURS, RISK_CONTROL_RESTRICTED, QUOTATION_NOT_EXIST, NO_FEASIBLE_PLAN, NO_LIVE_ORDER, NOT_EMPTY, INVALID_REQUEST, INVALID_VOLUME, INVALID_AMOUNT, INVALID_PRICE, INVALID_CURRENCY, INVALID_IT, INVALID_AGENT, INVALID_ACCOUNT, INVALID_INSTRUMENT, INVALID_CONTRACT, INVALID_IT_INSTRUMENT, INVALID_IT_ALLOCATOR, INVALID_LP_ACCOUNT, INVALID_INSTRUMENT_TEMPORAL, INVALID_TICK, INVALID_ORDER, INVALID_EXECUTION, INVALID_POSITION_DETAIL, INVALID_TRADE_TYPE, INVALID_LP_ORDER_ID, INVALID_CASHFLOW_TYPE, INVALID_MARGIN_STATUS, INVALID_LP_INSTRUMENT, INVALID_LP, ILLEGAL_REQUEST, ORDER_NOT_CHANGE, INVALID_ACCOUNT_STATUS, INVALID_SUBSCRIPTION, INSUFFICIENT_FUNDS, INSUFFICIENT_MARGIN, DUPLICATE_LOGIN_ID, INVALID_MARGIN_TEMPLATE, INVALID_FEE_TEMPLATE, INVALID_RATE_TEMPLATE, INTERNAL_ERROR, IGNORE
- orders: TradingOrderV1
-
TradingOrderV1 - validations: object
- result: string
Example
{
"tradingResult": "integer (int32)",
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
],
"validations": "object",
"result": "string"
}
ContractV1
- id: integer (int32)
- relatedId: integer (int32)
- code: string
- status: integer (int32) 1, 2, 3, 4, 9
-
PENDING, ACTIVE, INACTIVE, SUSPENDING, DELETED
- instrumentId: integer (int32)
- expirationDate: string (date)
- lastTradeDate: string (date)
- deliveryMonth: integer (int32)
- version: integer (int32)
Example
{
"id": "integer (int32)",
"relatedId": "integer (int32)",
"code": "string",
"status": "integer (int32)",
"instrumentId": "integer (int32)",
"expirationDate": "string (date)",
"lastTradeDate": "string (date)",
"deliveryMonth": "integer (int32)",
"version": "integer (int32)"
}
CurrencyAmount
- type: integer (int32) 1, 2, 3, 4, 5, 6, 7, 8, 9
-
MARGING, COMMISSION, PL, TURNOVER, SUBSCRIPTION, ASSET, DEPOSIT, WITHDRAWAL, FEE
- baseAmount: string (decimal)
-
number format : "0.00001353123"
- amounts: object (map{...})
Example
{
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
}
CurrencyPairV1
- id: integer (int32)
- name: string
- baseCurrency: integer (int32)
- quoteCurrency: integer (int32)
- scale: integer (int32)
- version: integer (int32)
Example
{
"id": "integer (int32)",
"name": "string",
"baseCurrency": "integer (int32)",
"quoteCurrency": "integer (int32)",
"scale": "integer (int32)",
"version": "integer (int32)"
}
CurrencyV1
- id: integer (int32)
- name: string
- scale: integer (int32)
- version: integer (int32)
Example
{
"id": "integer (int32)",
"name": "string",
"scale": "integer (int32)",
"version": "integer (int32)"
}
DepthV1
Example
{
"id": "string (int64)",
"instrumentDate": "string (date)",
"quoteTime": "string (int64)",
"bids": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
],
"asks": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
]
}
DepthV1Event
- snapshot: boolean
- instrumentId: integer (int32)
- contractId: integer (int32)
- depth: DepthV1
Example
{
"snapshot": "boolean",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"depth": {
"id": "string (int64)",
"instrumentDate": "string (date)",
"quoteTime": "string (int64)",
"bids": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
],
"asks": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
]
}
}
DepthV1EventMessage
- data: DepthV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
Example
{
"data": {
"snapshot": "boolean",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"depth": {
"id": "string (int64)",
"instrumentDate": "string (date)",
"quoteTime": "string (int64)",
"bids": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
],
"asks": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
]
}
},
"event": "DEPTH"
}
DepthsV1
Example
{
"id": "string (int64)",
"instrumentDate": "string (date)",
"quoteTime": "string (int64)",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"bids": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
],
"asks": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
]
}
DepthsV1Event
Example
{
"snapshot": "boolean",
"depths": [
{
"id": "string (int64)",
"instrumentDate": "string (date)",
"quoteTime": "string (int64)",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"bids": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
],
"asks": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
]
}
]
}
DepthsV1EventMessage
- data: DepthsV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
Example
{
"data": {
"snapshot": "boolean",
"depths": [
{
"id": "string (int64)",
"instrumentDate": "string (date)",
"quoteTime": "string (int64)",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"bids": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
],
"asks": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
]
}
]
},
"event": "DEPTHS"
}
DeviceV1
- id: string
- type: integer (int32) 1, 2, 3, 4, 5, 6
-
IOS, ANDROID, WINDOWS_X64, MAC_X64, MAC_ARM64, IOS_TF
Example
{
"id": "string",
"type": "integer (int32)"
}
EvaluationV1
- contractId: integer (int32)
- price: string (decimal)
-
number format : "0.00001353123"
Example
{
"contractId": "integer (int32)",
"price": "string (decimal)"
}
EvaluationV1Event
- snapshot: boolean
- evaluations: EvaluationV1
-
EvaluationV1
Example
{
"snapshot": "boolean",
"evaluations": [
{
"contractId": "integer (int32)",
"price": "string (decimal)"
}
]
}
EvaluationV1EventMessage
- data: EvaluationV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
Example
{
"data": {
"snapshot": "boolean",
"evaluations": [
{
"contractId": "integer (int32)",
"price": "string (decimal)"
}
]
},
"event": "EVALUATION"
}
ExecutionV1Event
- snapshot: boolean
- executions: TradingExecutionV1
-
TradingExecutionV1
Example
{
"snapshot": "boolean",
"executions": [
{
"id": "string (int64)",
"orderId": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderType": "integer (int32)",
"placeType": "integer (int32)",
"executeType": "integer (int32)",
"executeTime": "string (int64)",
"executeDate": "string (date)",
"executePrice": "string (decimal)",
"executeLot": "integer (int32)",
"executeAmount": "string (decimal)",
"commission": "string (decimal)",
"pl": "string (decimal)",
"baseCommission": "string (decimal)",
"basePl": "string (decimal)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeExecutionId": "string"
}
]
}
ExecutionV1EventMessage
- data: ExecutionV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
Example
{
"data": {
"snapshot": "boolean",
"executions": [
{
"id": "string (int64)",
"orderId": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderType": "integer (int32)",
"placeType": "integer (int32)",
"executeType": "integer (int32)",
"executeTime": "string (int64)",
"executeDate": "string (date)",
"executePrice": "string (decimal)",
"executeLot": "integer (int32)",
"executeAmount": "string (decimal)",
"commission": "string (decimal)",
"pl": "string (decimal)",
"baseCommission": "string (decimal)",
"basePl": "string (decimal)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeExecutionId": "string"
}
]
},
"event": "EXECUTION"
}
FeeTemplateV1
- id: integer (int32)
- instrumentId: integer (int32)
- feeType: integer (int32) 1, 2
-
BY_LOT, BY_RATIO
- longFee: string (decimal)
-
number format : "0.00001353123"
- longFeeRatio: string (decimal)
-
number format : "0.00001353123"
- shortFee: string (decimal)
-
number format : "0.00001353123"
- shortFeeRatio: string (decimal)
-
number format : "0.00001353123"
- minFee: string (decimal)
-
number format : "0.00001353123"
- version: integer (int32)
Example
{
"id": "integer (int32)",
"instrumentId": "integer (int32)",
"feeType": "integer (int32)",
"longFee": "string (decimal)",
"longFeeRatio": "string (decimal)",
"shortFee": "string (decimal)",
"shortFeeRatio": "string (decimal)",
"minFee": "string (decimal)",
"version": "integer (int32)"
}
GetMarketQuotationV1Response
- bestBid: string (decimal)
-
number format : "0.00001353123"
- bestOffer: string (decimal)
-
number format : "0.00001353123"
- worstBid: string (decimal)
-
number format : "0.00001353123"
- worstOffer: string (decimal)
-
number format : "0.00001353123"
- lastPrice: string (decimal)
-
number format : "0.00001353123"
Example
{
"bestBid": "string (decimal)",
"bestOffer": "string (decimal)",
"worstBid": "string (decimal)",
"worstOffer": "string (decimal)",
"lastPrice": "string (decimal)"
}
InstrumentCodeV1
- id: integer (int32)
- code: string
- en: string
- cn: string
- tw: string
- version: integer (int32)
Example
{
"id": "integer (int32)",
"code": "string",
"en": "string",
"cn": "string",
"tw": "string",
"version": "integer (int32)"
}
InstrumentStatistic
- instrumentId: integer (int32)
- lots: integer (int32)
- pl: string (decimal)
-
number format : "0.00001353123"
Example
{
"instrumentId": "integer (int32)",
"lots": "integer (int32)",
"pl": "string (decimal)"
}
InstrumentV1
- id: integer (int32)
- exchange: integer (int32) 1, 2, 3, 4, 5, 6, 7
-
HKFE, SGX, CME, COMEX, NYMEX, CBOT, EUREX
- majorContract: integer (int32)
- displayOrder: integer (int32)
- tradingCurrency: integer (int32)
- contractSize: string (decimal)
-
number format : "0.00001353123"
- tickSize: string (decimal)
-
number format : "0.00001353123"
- version: integer (int32)
- zoneId: string
- slots: LocalTime
-
LocalTime - dstSlots: LocalTime
-
LocalTime
Example
{
"id": "integer (int32)",
"exchange": "integer (int32)",
"majorContract": "integer (int32)",
"displayOrder": "integer (int32)",
"tradingCurrency": "integer (int32)",
"contractSize": "string (decimal)",
"tickSize": "string (decimal)",
"version": "integer (int32)",
"zoneId": "string",
"slots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
],
"dstSlots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
]
}
ItInstrumentV1
- id: integer (int32)
- itId: integer (int32)
- instrumentId: integer (int32)
- groupId: integer (int32)
- displayOrder: integer (int32)
- version: integer (int32)
Example
{
"id": "integer (int32)",
"itId": "integer (int32)",
"instrumentId": "integer (int32)",
"groupId": "integer (int32)",
"displayOrder": "integer (int32)",
"version": "integer (int32)"
}
ItV1
- id: integer (int32)
- name: string
- abbreviation: string
- phone: string
- mail: string
- website: string
- depositUrl: string
- withdrawalUrl: string
- theme: integer (int32)
- address: string
- quotationType: integer (int32) 1, 2, 3
-
FREE_USE, FARED_USE, LIMITED_USE
- positionMode: integer (int32) 1, 2
-
ONE_WAY, HEDGE
- orderType: integer (int32) 3, 5, 6, 7
-
LIMIT, MARKET, TRAIL, TP_SL
- colorPreference: integer (int32) 1, 2
-
REDUP_GREENDOWN, GREENUP_REDDOWN
- refreshEffect: boolean
- quickOrder: boolean
- multiCurrency: boolean
- version: integer (int32)
Example
{
"id": "integer (int32)",
"name": "string",
"abbreviation": "string",
"phone": "string",
"mail": "string",
"website": "string",
"depositUrl": "string",
"withdrawalUrl": "string",
"theme": "integer (int32)",
"address": "string",
"quotationType": "integer (int32)",
"positionMode": "integer (int32)",
"orderType": "integer (int32)",
"colorPreference": "integer (int32)",
"refreshEffect": "boolean",
"quickOrder": "boolean",
"multiCurrency": "boolean",
"version": "integer (int32)"
}
IterateAccessV1Response
Example
{
"next": "string (int64)",
"accesses": [
{
"id": "string (int64)",
"loginTime": "string (int64)",
"logoutTime": "string (int64)",
"onlineTime": "string (int64)",
"offlineTime": "string (int64)",
"online": "boolean",
"clientOs": "string",
"clientDevice": "string",
"clientAddress": "string",
"clientDeviceId": "string"
}
]
}
IterateChartV1Response
Example
{
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"type": "integer (int32)",
"next": "string (int64)",
"charts": [
{
"id": "string (int64)",
"low": "string (decimal)",
"high": "string (decimal)",
"open": "string (decimal)",
"close": "string (decimal)",
"vwap": "string (decimal)",
"qty": "integer (int32)",
"instrumentDate": "string (date)",
"openTime": "string (int64)",
"closeTime": "string (int64)",
"version": "integer (int32)"
}
]
}
IterateReportV1Response
Example
{
"next": "string (int64)",
"reports": [
{
"id": "string (int64)",
"reportType": "integer (int32)",
"issueDate": "string (date)",
"issueTime": "string (int64)",
"issueStatus": "integer (int32)",
"stageTime": "string (int64)",
"stageStatus": "integer (int32)",
"receiptTime": "string (int64)",
"receiptStatus": "integer (int32)"
}
]
}
IterateTickV1Response
Example
{
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"next": "string (int64)",
"ticks": [
{
"id": "string (int64)",
"lowPrice": "string (decimal)",
"highPrice": "string (decimal)",
"openingPrice": "string (decimal)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)",
"lastPrice": "string (decimal)",
"lastQty": "integer (int32)",
"totalQty": "integer (int32)",
"positionQty": "integer (int32)",
"preClosingPrice": "string (decimal)",
"preSettlePrice": "string (decimal)",
"instrumentDate": "string (date)",
"tickTime": "string (int64)"
}
]
}
IterateTradingCashflowV1Response
- next: string (int64)
-
number format : "81829012300"
- cashflows: TradingCashflowV1
-
TradingCashflowV1
Example
{
"next": "string (int64)",
"cashflows": [
{
"id": "string (int64)",
"version": "integer (int32)",
"accountId": "string (int64)",
"clusterId": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"sourceId": "string (int64)",
"sourceId2": "string (int64)",
"realizeCurrency": "integer (int32)",
"currency": "integer (int32)",
"sourceCurrency": "integer (int32)",
"convertRate": "string (decimal)",
"side": "integer (int32)",
"type": "integer (int32)",
"amount": "string (decimal)",
"sourceAmount": "string (decimal)",
"settleDate": "string (date)",
"occurDate": "string (date)",
"occurTime": "string (int64)"
}
]
}
IterateTradingExecutionV1Response
- next: string (int64)
-
number format : "81829012300"
- executions: TradingExecutionV1
-
TradingExecutionV1
Example
{
"next": "string (int64)",
"executions": [
{
"id": "string (int64)",
"orderId": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderType": "integer (int32)",
"placeType": "integer (int32)",
"executeType": "integer (int32)",
"executeTime": "string (int64)",
"executeDate": "string (date)",
"executePrice": "string (decimal)",
"executeLot": "integer (int32)",
"executeAmount": "string (decimal)",
"commission": "string (decimal)",
"pl": "string (decimal)",
"baseCommission": "string (decimal)",
"basePl": "string (decimal)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeExecutionId": "string"
}
]
}
IterateTradingOrderV1Response
- next: string (int64)
-
number format : "81829012300"
- orders: TradingOrderV1
-
TradingOrderV1
Example
{
"next": "string (int64)",
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
]
}
IterateTradingPositionDetailV1Response
- next: string (int64)
-
number format : "81829012300"
- positionDetails: TradingPositionDetailV1
-
TradingPositionDetailV1
Example
{
"next": "string (int64)",
"positionDetails": [
{
"id": "string (int64)",
"accountId": "string (int64)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currency": "integer (int32)",
"orderId": "string (int64)",
"side": "integer (int32)",
"status": "integer (int32)",
"openDate": "string (date)",
"openTime": "string (int64)",
"openPrice": "string (decimal)",
"openLot": "integer (int32)",
"closedLot": "integer (int32)",
"pl": "string (decimal)"
}
]
}
IterateTradingSubscriptionV1Response
- next: string (int64)
-
number format : "81829012300"
- subscriptions: TradingSubscriptionV1
-
TradingSubscriptionV1
Example
{
"next": "string (int64)",
"subscriptions": [
{
"id": "string (int64)",
"exchange": "integer (int32)",
"currency": "integer (int32)",
"subscriptionTime": "string (int64)",
"months": "integer (int32)",
"level": "integer (int32)",
"monthFee": "string (decimal)",
"totalFee": "string (decimal)",
"discount": "string (decimal)"
}
]
}
LiquidatePositionV1Response
- tradingResult: integer (int32) 0, 1, 2, 3, 4, 5, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 51, 52, 54, 55, 56, 57, 99, -1
-
SUCCESS, TIMEOUT, REJECTED, RESTRICTED, STALE_VERSION, INTER_MISSION, LIQUIDATING, UNCLOSABLE_ACCOUNT, ACCOUNT_RESTRICTED, INSTRUMENT_RESTRICTED, CONTRACT_UNTRADABLE, OUT_OF_TRADING_HOURS, RISK_CONTROL_RESTRICTED, QUOTATION_NOT_EXIST, NO_FEASIBLE_PLAN, NO_LIVE_ORDER, NOT_EMPTY, INVALID_REQUEST, INVALID_VOLUME, INVALID_AMOUNT, INVALID_PRICE, INVALID_CURRENCY, INVALID_IT, INVALID_AGENT, INVALID_ACCOUNT, INVALID_INSTRUMENT, INVALID_CONTRACT, INVALID_IT_INSTRUMENT, INVALID_IT_ALLOCATOR, INVALID_LP_ACCOUNT, INVALID_INSTRUMENT_TEMPORAL, INVALID_TICK, INVALID_ORDER, INVALID_EXECUTION, INVALID_POSITION_DETAIL, INVALID_TRADE_TYPE, INVALID_LP_ORDER_ID, INVALID_CASHFLOW_TYPE, INVALID_MARGIN_STATUS, INVALID_LP_INSTRUMENT, INVALID_LP, ILLEGAL_REQUEST, ORDER_NOT_CHANGE, INVALID_ACCOUNT_STATUS, INVALID_SUBSCRIPTION, INSUFFICIENT_FUNDS, INSUFFICIENT_MARGIN, DUPLICATE_LOGIN_ID, INVALID_MARGIN_TEMPLATE, INVALID_FEE_TEMPLATE, INVALID_RATE_TEMPLATE, INTERNAL_ERROR, IGNORE
- validations: object
- result: string
Example
{
"tradingResult": "integer (int32)",
"validations": "object",
"result": "string"
}
LiquidateV1
- side: integer (int32) 1, -1
-
BUY, SELL
- contractId: integer (int32)
Example
{
"side": "integer (int32)",
"contractId": "integer (int32)"
}
LocalTime
- hour: integer (int32)
- minute: integer (int32)
- second: integer (int32)
- nano: integer (int32)
Example
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
LoginV1Request
- loginId: string
- password: string
- captcha: string
- id: string
- clientIts: integer[]
-
integer (int32)
Example
{
"loginId": "string",
"password": "string",
"captcha": "string",
"id": "string",
"clientIts": [
"integer (int32)"
]
}
LoginV1Response
- result: string SUCCESS, EXPIRED, TIMEOUT, REJECTED, RESTRICTED, INVALID_REQUEST, INVALID_IDENTITY, INVALID_CAPTCHA, INTERNAL_ERROR
- token: string
- accountId: string (int64)
-
number format : "81829012300"
Example
{
"result": "string",
"token": "string",
"accountId": "string (int64)"
}
MarginTemplateV1
- id: integer (int32)
- instrumentId: integer (int32)
- marginType: integer (int32) 1, 2
-
BY_LOT, BY_RATIO
- longMargin: string (decimal)
-
number format : "0.00001353123"
- shortMargin: string (decimal)
-
number format : "0.00001353123"
- longMarginRatio: string (decimal)
-
number format : "0.00001353123"
- shortMarginRatio: string (decimal)
-
number format : "0.00001353123"
- minMargin: string (decimal)
-
number format : "0.00001353123"
- longMaintenMargin: string (decimal)
-
number format : "0.00001353123"
- shortMaintenMargin: string (decimal)
-
number format : "0.00001353123"
- longMaintenMarginRatio: string (decimal)
-
number format : "0.00001353123"
- shortMaintenMarginRatio: string (decimal)
-
number format : "0.00001353123"
- minMaintenMargin: string (decimal)
-
number format : "0.00001353123"
- version: integer (int32)
Example
{
"id": "integer (int32)",
"instrumentId": "integer (int32)",
"marginType": "integer (int32)",
"longMargin": "string (decimal)",
"shortMargin": "string (decimal)",
"longMarginRatio": "string (decimal)",
"shortMarginRatio": "string (decimal)",
"minMargin": "string (decimal)",
"longMaintenMargin": "string (decimal)",
"shortMaintenMargin": "string (decimal)",
"longMaintenMarginRatio": "string (decimal)",
"shortMaintenMarginRatio": "string (decimal)",
"minMaintenMargin": "string (decimal)",
"version": "integer (int32)"
}
MarketV1Event
- snapshot: boolean
- baseCurrencyId: integer (int32)
- themeServer: string
- institution: ItV1
- currencies: CurrencyV1
-
CurrencyV1 - currencyPairs: CurrencyPairV1
-
CurrencyPairV1 - contracts: ContractV1
-
ContractV1 - instruments: InstrumentV1
-
InstrumentV1 - instrumentCodes: InstrumentCodeV1
-
InstrumentCodeV1 - rateTemplates: RateTemplateV1
-
RateTemplateV1 - feeTemplates: FeeTemplateV1
-
FeeTemplateV1 - marginTemplates: MarginTemplateV1
-
MarginTemplateV1
Example
{
"snapshot": "boolean",
"baseCurrencyId": "integer (int32)",
"themeServer": "string",
"institution": {
"id": "integer (int32)",
"name": "string",
"abbreviation": "string",
"phone": "string",
"mail": "string",
"website": "string",
"depositUrl": "string",
"withdrawalUrl": "string",
"theme": "integer (int32)",
"address": "string",
"quotationType": "integer (int32)",
"positionMode": "integer (int32)",
"orderType": "integer (int32)",
"colorPreference": "integer (int32)",
"refreshEffect": "boolean",
"quickOrder": "boolean",
"multiCurrency": "boolean",
"version": "integer (int32)"
},
"currencies": [
{
"id": "integer (int32)",
"name": "string",
"scale": "integer (int32)",
"version": "integer (int32)"
}
],
"currencyPairs": [
{
"id": "integer (int32)",
"name": "string",
"baseCurrency": "integer (int32)",
"quoteCurrency": "integer (int32)",
"scale": "integer (int32)",
"version": "integer (int32)"
}
],
"contracts": [
{
"id": "integer (int32)",
"relatedId": "integer (int32)",
"code": "string",
"status": "integer (int32)",
"instrumentId": "integer (int32)",
"expirationDate": "string (date)",
"lastTradeDate": "string (date)",
"deliveryMonth": "integer (int32)",
"version": "integer (int32)"
}
],
"instruments": [
{
"id": "integer (int32)",
"exchange": "integer (int32)",
"majorContract": "integer (int32)",
"displayOrder": "integer (int32)",
"tradingCurrency": "integer (int32)",
"contractSize": "string (decimal)",
"tickSize": "string (decimal)",
"version": "integer (int32)",
"zoneId": "string",
"slots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
],
"dstSlots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
]
}
],
"instrumentCodes": [
{
"id": "integer (int32)",
"code": "string",
"en": "string",
"cn": "string",
"tw": "string",
"version": "integer (int32)"
}
],
"rateTemplates": [
{
"id": "integer (int32)",
"currencyPairId": "integer (int32)",
"rateType": "integer (int32)",
"rate": "string (decimal)",
"askAdjustValue": "integer (int32)",
"bidAdjustValue": "integer (int32)",
"version": "integer (int32)"
}
],
"feeTemplates": [
{}
]
}
MarketV1EventMessage
- data: MarketV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
Example
{
"data": {
"snapshot": "boolean",
"baseCurrencyId": "integer (int32)",
"themeServer": "string",
"institution": {
"id": "integer (int32)",
"name": "string",
"abbreviation": "string",
"phone": "string",
"mail": "string",
"website": "string",
"depositUrl": "string",
"withdrawalUrl": "string",
"theme": "integer (int32)",
"address": "string",
"quotationType": "integer (int32)",
"positionMode": "integer (int32)",
"orderType": "integer (int32)",
"colorPreference": "integer (int32)",
"refreshEffect": "boolean",
"quickOrder": "boolean",
"multiCurrency": "boolean",
"version": "integer (int32)"
},
"currencies": [
{
"id": "integer (int32)",
"name": "string",
"scale": "integer (int32)",
"version": "integer (int32)"
}
],
"currencyPairs": [
{
"id": "integer (int32)",
"name": "string",
"baseCurrency": "integer (int32)",
"quoteCurrency": "integer (int32)",
"scale": "integer (int32)",
"version": "integer (int32)"
}
],
"contracts": [
{
"id": "integer (int32)",
"relatedId": "integer (int32)",
"code": "string",
"status": "integer (int32)",
"instrumentId": "integer (int32)",
"expirationDate": "string (date)",
"lastTradeDate": "string (date)",
"deliveryMonth": "integer (int32)",
"version": "integer (int32)"
}
],
"instruments": [
{
"id": "integer (int32)",
"exchange": "integer (int32)",
"majorContract": "integer (int32)",
"displayOrder": "integer (int32)",
"tradingCurrency": "integer (int32)",
"contractSize": "string (decimal)",
"tickSize": "string (decimal)",
"version": "integer (int32)",
"zoneId": "string",
"slots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
],
"dstSlots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
]
}
],
"instrumentCodes": [
{
"id": "integer (int32)",
"code": "string",
"en": "string",
"cn": "string",
"tw": "string",
"version": "integer (int32)"
}
],
"rateTemplates": [
{
"id": "integer (int32)",
"currencyPairId": "integer (int32)",
"rateType": "integer (int32)",
"rate": "string (decimal)",
"askAdjustValue": "integer (int32)",
"bidAdjustValue": "integer (int32)",
"version": "integer (int32)"
}
],
"feeTemplates": [
null
]
}
}
ModifyOrderV1
- orderPrice: string (decimal)
-
number format : "0.00001353123"
- orderPrice2: string (decimal)
-
number format : "0.00001353123"
- tpPrice: string (decimal)
-
number format : "0.00001353123"
- slPrice: string (decimal)
-
number format : "0.00001353123"
- expireType: integer (int32) 1, 2, 3, 4
-
FOK, IOC, GTC, DAY
- closePxType: integer (int32) 1, 2, 3
-
VALUE, OFFSET, POINT
- closeTpPx: string (decimal)
-
number format : "0.00001353123"
- closeSlPx: string (decimal)
-
number format : "0.00001353123"
- trailOffset: string (decimal)
-
number format : "0.00001353123"
- orderLot: integer (int32)
Example
{
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"expireType": "integer (int32)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)"
}
OrderV1Event
- snapshot: boolean
- orders: TradingOrderV1
-
TradingOrderV1
Example
{
"snapshot": "boolean",
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
]
}
OrderV1EventMessage
- data: OrderV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
Example
{
"data": {
"snapshot": "boolean",
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
]
},
"event": "ORDER"
}
OrderV1Response
- tradingResult: integer (int32) 0, 1, 2, 3, 4, 5, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 51, 52, 54, 55, 56, 57, 99, -1
-
SUCCESS, TIMEOUT, REJECTED, RESTRICTED, STALE_VERSION, INTER_MISSION, LIQUIDATING, UNCLOSABLE_ACCOUNT, ACCOUNT_RESTRICTED, INSTRUMENT_RESTRICTED, CONTRACT_UNTRADABLE, OUT_OF_TRADING_HOURS, RISK_CONTROL_RESTRICTED, QUOTATION_NOT_EXIST, NO_FEASIBLE_PLAN, NO_LIVE_ORDER, NOT_EMPTY, INVALID_REQUEST, INVALID_VOLUME, INVALID_AMOUNT, INVALID_PRICE, INVALID_CURRENCY, INVALID_IT, INVALID_AGENT, INVALID_ACCOUNT, INVALID_INSTRUMENT, INVALID_CONTRACT, INVALID_IT_INSTRUMENT, INVALID_IT_ALLOCATOR, INVALID_LP_ACCOUNT, INVALID_INSTRUMENT_TEMPORAL, INVALID_TICK, INVALID_ORDER, INVALID_EXECUTION, INVALID_POSITION_DETAIL, INVALID_TRADE_TYPE, INVALID_LP_ORDER_ID, INVALID_CASHFLOW_TYPE, INVALID_MARGIN_STATUS, INVALID_LP_INSTRUMENT, INVALID_LP, ILLEGAL_REQUEST, ORDER_NOT_CHANGE, INVALID_ACCOUNT_STATUS, INVALID_SUBSCRIPTION, INSUFFICIENT_FUNDS, INSUFFICIENT_MARGIN, DUPLICATE_LOGIN_ID, INVALID_MARGIN_TEMPLATE, INVALID_FEE_TEMPLATE, INVALID_RATE_TEMPLATE, INTERNAL_ERROR, IGNORE
- order: TradingOrderV1
- validations: object
- result: string
Example
{
"tradingResult": "integer (int32)",
"order": {
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
},
"validations": "object",
"result": "string"
}
PasswordV1Request
- password: string
- oldPassword: string
Example
{
"password": "string",
"oldPassword": "string"
}
PasswordV1Response
- result: string SUCCESS, EXPIRED, TIMEOUT, REJECTED, RESTRICTED, INVALID_REQUEST, INTERNAL_ERROR
- validations: object
Example
{
"result": "string",
"validations": "object"
}
PerformanceV1Event
- snapshot: boolean
- performance: TradingPerformanceV1
- roimdds: ROIMDD
-
ROIMDD - risks: TupleLocalDateBigDecimal
-
TupleLocalDateBigDecimal - instrumentStatistics: InstrumentStatistic
-
InstrumentStatistic
Example
{
"snapshot": "boolean",
"performance": {
"accountId": "string (int64)",
"equity": "string (decimal)",
"floatingPl": "string (decimal)",
"riskRatio": "string (decimal)",
"safetyRatio": "string (decimal)",
"lastTradeTime": "string (int64)",
"pl": "string (decimal)",
"roi": "string (decimal)",
"mdd": "string (decimal)",
"maxRiskRatio": "string (decimal)",
"winRatio": "string (decimal)",
"plRatio": "string (decimal)",
"tradeDays": "integer (int32)",
"tradeLots": "integer (int32)",
"avgProfit": "string (decimal)",
"avgLoss": "string (decimal)",
"avgHoldingPeriod": "string (int64)",
"avgTradingTimes": "string (decimal)",
"avgTradingLots": "string (decimal)",
"performanceTime": "string (int64)"
},
"roimdds": [
{
"date": "string (date)",
"roi": "string (decimal)",
"mdd": "string (decimal)"
}
],
"risks": [
{
"v1": "string (date)",
"v2": "string (decimal)"
}
],
"instrumentStatistics": [
{
"instrumentId": "integer (int32)",
"lots": "integer (int32)",
"pl": "string (decimal)"
}
]
}
PerformanceV1EventMessage
- data: PerformanceV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
Example
{
"data": {
"snapshot": "boolean",
"performance": {
"accountId": "string (int64)",
"equity": "string (decimal)",
"floatingPl": "string (decimal)",
"riskRatio": "string (decimal)",
"safetyRatio": "string (decimal)",
"lastTradeTime": "string (int64)",
"pl": "string (decimal)",
"roi": "string (decimal)",
"mdd": "string (decimal)",
"maxRiskRatio": "string (decimal)",
"winRatio": "string (decimal)",
"plRatio": "string (decimal)",
"tradeDays": "integer (int32)",
"tradeLots": "integer (int32)",
"avgProfit": "string (decimal)",
"avgLoss": "string (decimal)",
"avgHoldingPeriod": "string (int64)",
"avgTradingTimes": "string (decimal)",
"avgTradingLots": "string (decimal)",
"performanceTime": "string (int64)"
},
"roimdds": [
{
"date": "string (date)",
"roi": "string (decimal)",
"mdd": "string (decimal)"
}
],
"risks": [
{
"v1": "string (date)",
"v2": "string (decimal)"
}
],
"instrumentStatistics": [
{
"instrumentId": "integer (int32)",
"lots": "integer (int32)",
"pl": "string (decimal)"
}
]
},
"event": "Performance"
}
PingV1Request
- id: string (int64)
-
number format : "81829012300"
- cookie: string (int64)
-
number format : "81829012300"
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"cookie": "string (int64)",
"action": "PING"
}
PingV1Response
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- cookie: string (int64)
-
number format : "81829012300"
Example
{
"id": "string (int64)",
"result": "string",
"cookie": "string (int64)"
}
PlaceOrderV1
- contractId: integer (int32)
- orderType: integer (int32) 3, 5, 6, 7
-
LIMIT, MARKET, TRAIL, TP_SL
- positionDetailId: string (int64)
-
number format : "81829012300"
- orderPrice: string (decimal)
-
number format : "0.00001353123"
- orderPrice2: string (decimal)
-
number format : "0.00001353123"
- tpPrice: string (decimal)
-
number format : "0.00001353123"
- slPrice: string (decimal)
-
number format : "0.00001353123"
- closePxType: integer (int32) 1, 2, 3
-
VALUE, OFFSET, POINT
- closeTpPx: string (decimal)
-
number format : "0.00001353123"
- closeSlPx: string (decimal)
-
number format : "0.00001353123"
- trailOffset: string (decimal)
-
number format : "0.00001353123"
- orderLot: integer (int32)
- tradeType: integer (int32) 1, 2, 3
-
OPEN, CLOSE, AUTO
- expireType: integer (int32) 1, 2, 3, 4
-
FOK, IOC, GTC, DAY
- side: integer (int32) 1, -1
-
BUY, SELL
- clientAccountId: string (int64)
-
number format : "81829012300"
- clientOrderId: string
Example
{
"contractId": "integer (int32)",
"orderType": "integer (int32)",
"positionDetailId": "string (int64)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"side": "integer (int32)",
"clientAccountId": "string (int64)",
"clientOrderId": "string"
}
PositionV1
- accountId: string (int64)
-
number format : "81829012300"
- account: TradingAccountV1
- orders: TradingOrderV1
-
TradingOrderV1 - positionDetails: TradingPositionDetailV1
-
TradingPositionDetailV1
Example
{
"accountId": "string (int64)",
"account": {
"id": "string (int64)",
"version": "integer (int32)",
"loginId": "string",
"name": "string",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"status": "integer (int32)",
"marginStatus": "integer (int32)"
},
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
],
"positionDetails": [
{
"id": "string (int64)",
"accountId": "string (int64)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currency": "integer (int32)",
"orderId": "string (int64)",
"side": "integer (int32)",
"status": "integer (int32)",
"openDate": "string (date)",
"openTime": "string (int64)",
"openPrice": "string (decimal)",
"openLot": "integer (int32)",
"closedLot": "integer (int32)",
"pl": "string (decimal)"
}
]
}
PositionV1Event
- snapshot: boolean
- account: TradingAccountV1
- orders: TradingOrderV1
-
TradingOrderV1 - positionDetails: TradingPositionDetailV1
-
TradingPositionDetailV1
Example
{
"snapshot": "boolean",
"account": {
"id": "string (int64)",
"version": "integer (int32)",
"loginId": "string",
"name": "string",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"status": "integer (int32)",
"marginStatus": "integer (int32)"
},
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
],
"positionDetails": [
{
"id": "string (int64)",
"accountId": "string (int64)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currency": "integer (int32)",
"orderId": "string (int64)",
"side": "integer (int32)",
"status": "integer (int32)",
"openDate": "string (date)",
"openTime": "string (int64)",
"openPrice": "string (decimal)",
"openLot": "integer (int32)",
"closedLot": "integer (int32)",
"pl": "string (decimal)"
}
]
}
PositionV1EventMessage
- data: PositionV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
Example
{
"data": {
"snapshot": "boolean",
"account": {
"id": "string (int64)",
"version": "integer (int32)",
"loginId": "string",
"name": "string",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"status": "integer (int32)",
"marginStatus": "integer (int32)"
},
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
],
"positionDetails": [
{
"id": "string (int64)",
"accountId": "string (int64)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currency": "integer (int32)",
"orderId": "string (int64)",
"side": "integer (int32)",
"status": "integer (int32)",
"openDate": "string (date)",
"openTime": "string (int64)",
"openPrice": "string (decimal)",
"openLot": "integer (int32)",
"closedLot": "integer (int32)",
"pl": "string (decimal)"
}
]
},
"event": "POSITION"
}
QueryOrderV1Response
- tradingResult: integer (int32) 0, 1, 2, 3, 4, 5, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 51, 52, 54, 55, 56, 57, 99, -1
-
SUCCESS, TIMEOUT, REJECTED, RESTRICTED, STALE_VERSION, INTER_MISSION, LIQUIDATING, UNCLOSABLE_ACCOUNT, ACCOUNT_RESTRICTED, INSTRUMENT_RESTRICTED, CONTRACT_UNTRADABLE, OUT_OF_TRADING_HOURS, RISK_CONTROL_RESTRICTED, QUOTATION_NOT_EXIST, NO_FEASIBLE_PLAN, NO_LIVE_ORDER, NOT_EMPTY, INVALID_REQUEST, INVALID_VOLUME, INVALID_AMOUNT, INVALID_PRICE, INVALID_CURRENCY, INVALID_IT, INVALID_AGENT, INVALID_ACCOUNT, INVALID_INSTRUMENT, INVALID_CONTRACT, INVALID_IT_INSTRUMENT, INVALID_IT_ALLOCATOR, INVALID_LP_ACCOUNT, INVALID_INSTRUMENT_TEMPORAL, INVALID_TICK, INVALID_ORDER, INVALID_EXECUTION, INVALID_POSITION_DETAIL, INVALID_TRADE_TYPE, INVALID_LP_ORDER_ID, INVALID_CASHFLOW_TYPE, INVALID_MARGIN_STATUS, INVALID_LP_INSTRUMENT, INVALID_LP, ILLEGAL_REQUEST, ORDER_NOT_CHANGE, INVALID_ACCOUNT_STATUS, INVALID_SUBSCRIPTION, INSUFFICIENT_FUNDS, INSUFFICIENT_MARGIN, DUPLICATE_LOGIN_ID, INVALID_MARGIN_TEMPLATE, INVALID_FEE_TEMPLATE, INVALID_RATE_TEMPLATE, INTERNAL_ERROR, IGNORE
- order: TradingOrderV1
- executions: TradingExecutionV1
-
TradingExecutionV1 - result: string
Example
{
"tradingResult": "integer (int32)",
"order": {
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
},
"executions": [
{
"id": "string (int64)",
"orderId": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderType": "integer (int32)",
"placeType": "integer (int32)",
"executeType": "integer (int32)",
"executeTime": "string (int64)",
"executeDate": "string (date)",
"executePrice": "string (decimal)",
"executeLot": "integer (int32)",
"executeAmount": "string (decimal)",
"commission": "string (decimal)",
"pl": "string (decimal)",
"baseCommission": "string (decimal)",
"basePl": "string (decimal)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeExecutionId": "string"
}
],
"result": "string"
}
QuoteLevel
- exchange: integer (int32) 1, 2, 3, 4, 5, 6, 7
-
HKFE, SGX, CME, COMEX, NYMEX, CBOT, EUREX
- level: integer (int32) 1, 2
-
LEVEL1, LEVEL2
- l1Days: integer (int32)
- l2Days: integer (int32)
Example
{
"exchange": "integer (int32)",
"level": "integer (int32)",
"l1Days": "integer (int32)",
"l2Days": "integer (int32)"
}
QuoteLevelV1Event
- snapshot: boolean
- levels: QuoteLevel
-
QuoteLevel - quotationType: integer (int32) 1, 2, 3
-
FREE_USE, FARED_USE, LIMITED_USE
Example
{
"snapshot": "boolean",
"levels": [
{
"exchange": "integer (int32)",
"level": "integer (int32)",
"l1Days": "integer (int32)",
"l2Days": "integer (int32)"
}
],
"quotationType": "integer (int32)"
}
QuoteLevelV1EventMessage
- data: QuoteLevelV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
Example
{
"data": {
"snapshot": "boolean",
"levels": [
{
"exchange": "integer (int32)",
"level": "integer (int32)",
"l1Days": "integer (int32)",
"l2Days": "integer (int32)"
}
],
"quotationType": "integer (int32)"
},
"event": "QUOTE_LEVEL"
}
QuoteLevelV1Response
- accountId: string (int64)
-
number format : "81829012300"
- quotationType: integer (int32) 1, 2, 3
-
FREE_USE, FARED_USE, LIMITED_USE
- levels: QuoteLevel
-
QuoteLevel
Example
{
"accountId": "string (int64)",
"quotationType": "integer (int32)",
"levels": [
{
"exchange": "integer (int32)",
"level": "integer (int32)",
"l1Days": "integer (int32)",
"l2Days": "integer (int32)"
}
]
}
QuoteV1
- id: string (int64)
-
number format : "81829012300"
- instrumentId: integer (int32)
- contractId: integer (int32)
- lowPrice: string (decimal)
-
number format : "0.00001353123"
- highPrice: string (decimal)
-
number format : "0.00001353123"
- openingPrice: string (decimal)
-
number format : "0.00001353123"
- preClosingPrice: string (decimal)
-
number format : "0.00001353123"
- preSettlePrice: string (decimal)
-
number format : "0.00001353123"
- bidPrice: string (decimal)
-
number format : "0.00001353123"
- askPrice: string (decimal)
-
number format : "0.00001353123"
- limitDownPrice: string (decimal)
-
number format : "0.00001353123"
- limitUpPrice: string (decimal)
-
number format : "0.00001353123"
- lastPrice: string (decimal)
-
number format : "0.00001353123"
- lastQty: integer (int32)
- totalQty: integer (int32)
- changeRate: string (decimal)
-
number format : "0.00001353123"
- changeValue: string (decimal)
-
number format : "0.00001353123"
- positionQty: integer (int32)
- instrumentDate: string (date)
- tickTime: string (int64)
-
number format : "81829012300"
Example
{
"id": "string (int64)",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"lowPrice": "string (decimal)",
"highPrice": "string (decimal)",
"openingPrice": "string (decimal)",
"preClosingPrice": "string (decimal)",
"preSettlePrice": "string (decimal)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)",
"limitDownPrice": "string (decimal)",
"limitUpPrice": "string (decimal)",
"lastPrice": "string (decimal)",
"lastQty": "integer (int32)",
"totalQty": "integer (int32)",
"changeRate": "string (decimal)",
"changeValue": "string (decimal)",
"positionQty": "integer (int32)",
"instrumentDate": "string (date)",
"tickTime": "string (int64)"
}
QuoteV1Event
Example
{
"snapshot": "boolean",
"quotes": [
{
"id": "string (int64)",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"lowPrice": "string (decimal)",
"highPrice": "string (decimal)",
"openingPrice": "string (decimal)",
"preClosingPrice": "string (decimal)",
"preSettlePrice": "string (decimal)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)",
"limitDownPrice": "string (decimal)",
"limitUpPrice": "string (decimal)",
"lastPrice": "string (decimal)",
"lastQty": "integer (int32)",
"totalQty": "integer (int32)",
"changeRate": "string (decimal)",
"changeValue": "string (decimal)",
"positionQty": "integer (int32)",
"instrumentDate": "string (date)",
"tickTime": "string (int64)"
}
]
}
QuoteV1EventMessage
- data: QuoteV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
Example
{
"data": {
"snapshot": "boolean",
"quotes": [
{
"id": "string (int64)",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"lowPrice": "string (decimal)",
"highPrice": "string (decimal)",
"openingPrice": "string (decimal)",
"preClosingPrice": "string (decimal)",
"preSettlePrice": "string (decimal)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)",
"limitDownPrice": "string (decimal)",
"limitUpPrice": "string (decimal)",
"lastPrice": "string (decimal)",
"lastQty": "integer (int32)",
"totalQty": "integer (int32)",
"changeRate": "string (decimal)",
"changeValue": "string (decimal)",
"positionQty": "integer (int32)",
"instrumentDate": "string (date)",
"tickTime": "string (int64)"
}
]
},
"event": "QUOTE"
}
ROIMDD
- date: string (date)
- roi: string (decimal)
-
number format : "0.00001353123"
- mdd: string (decimal)
-
number format : "0.00001353123"
Example
{
"date": "string (date)",
"roi": "string (decimal)",
"mdd": "string (decimal)"
}
RateTemplateV1
- id: integer (int32)
- currencyPairId: integer (int32)
- rateType: integer (int32) 1, 2
-
CONSTANT, VARIABLE
- rate: string (decimal)
-
number format : "0.00001353123"
- askAdjustValue: integer (int32)
- bidAdjustValue: integer (int32)
- version: integer (int32)
Example
{
"id": "integer (int32)",
"currencyPairId": "integer (int32)",
"rateType": "integer (int32)",
"rate": "string (decimal)",
"askAdjustValue": "integer (int32)",
"bidAdjustValue": "integer (int32)",
"version": "integer (int32)"
}
RateV1
- currencyPairId: integer (int32)
- bidPrice: string (decimal)
-
number format : "0.00001353123"
- askPrice: string (decimal)
-
number format : "0.00001353123"
Example
{
"currencyPairId": "integer (int32)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)"
}
RateV1EventMessage
- data: RateV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
Example
{
"data": {
"snapshot": "boolean",
"rates": [
{
"currencyPairId": "integer (int32)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)"
}
]
},
"event": "RATE"
}
ReportV1
- id: string (int64)
-
number format : "81829012300"
- reportType: integer (int32) 1, 2, 3
-
DAILY_TRADE, MONTHLY_TRADE, ANNUAL_TRADE
- issueDate: string (date)
- issueTime: string (int64)
-
number format : "81829012300"
- issueStatus: integer (int32) 1, 2, 3, 9
-
PENDING, ISSUING, SUCCESS, FAILURE
- stageTime: string (int64)
-
number format : "81829012300"
- stageStatus: integer (int32) 1, 2, 3, 4, 5, 9
-
PENDING, STAGED, STAGING, UNSTAGED, UNSTAGING, FAILURE
- receiptTime: string (int64)
-
number format : "81829012300"
- receiptStatus: integer (int32) 1, 2, 3
-
PENDING, ACCEPTED, DECLINED
Example
{
"id": "string (int64)",
"reportType": "integer (int32)",
"issueDate": "string (date)",
"issueTime": "string (int64)",
"issueStatus": "integer (int32)",
"stageTime": "string (int64)",
"stageStatus": "integer (int32)",
"receiptTime": "string (int64)",
"receiptStatus": "integer (int32)"
}
SessionV1Event
- snapshot: boolean
- operatorId: integer (int32)
- loginId: string
- clientOs: string
- clientDevice: string
- clientAddress: string
Example
{
"snapshot": "boolean",
"operatorId": "integer (int32)",
"loginId": "string",
"clientOs": "string",
"clientDevice": "string",
"clientAddress": "string"
}
SessionV1EventMessage
- data: SessionV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
Example
{
"data": {
"snapshot": "boolean",
"operatorId": "integer (int32)",
"loginId": "string",
"clientOs": "string",
"clientDevice": "string",
"clientAddress": "string"
},
"event": "SESSION"
}
SkipWarningV1Response
- result: string SUCCESS, EXPIRED, TIMEOUT, REJECTED, RESTRICTED, INVALID_REQUEST, INTERNAL_ERROR
Example
{
"result": "string"
}
SlotV1
- instrumentDate: string (date)
- currentTimeMillis: string (int64)
-
number format : "81829012300"
- slots: string[]
-
string (int64) number format : "81829012300"
Example
{
"instrumentDate": "string (date)",
"currentTimeMillis": "string (int64)",
"slots": [
"string (int64)"
]
}
StatementV1Event
- snapshot: boolean
- statement: TradingStatementV1
Example
{
"snapshot": "boolean",
"statement": {
"accountId": "string (int64)",
"equity": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"asset": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"balance": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"financed": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"posterior": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"floatingPl": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"frozenCommission": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"withdrawable": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayWithdrawal": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayDeposit": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayCommission": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayPl": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"freeMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"occupiedMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"positionMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"riskRatio": "string (decimal)",
"safetyRatio": "string (decimal)",
"marginStatus": "integer (int32)"
}
}
StatementV1EventMessage
- data: TradingStatementV1
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
Example
{
"data": {
"accountId": "string (int64)",
"equity": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"asset": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"balance": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"financed": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"posterior": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"floatingPl": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"frozenCommission": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"withdrawable": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayWithdrawal": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayDeposit": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayCommission": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayPl": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"freeMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"occupiedMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"positionMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"riskRatio": "string (decimal)",
"safetyRatio": "string (decimal)",
"marginStatus": "integer (int32)"
},
"event": "STATEMENT"
}
SubscribeChartV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- contractId: integer (int32)
- chartType: integer (int32) 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 16, 20, 21, 22, 23, 25
-
M1, M5, M10, M15, M30, H1, H2, H4, D1, W1, M3, S15, MN1, S1, S3, S5, S10, S30
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- limit: integer (int32) 256
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"contractId": "integer (int32)",
"chartType": "integer (int32)",
"event": "CHART",
"action": "SUBSCRIBE",
"limit": "integer (int32)",
"snapshot": "string"
}
SubscribeChartV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- data: ChartV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"chartType": "integer (int32)",
"charts": [
{
"id": "string (int64)",
"low": "string (decimal)",
"high": "string (decimal)",
"open": "string (decimal)",
"close": "string (decimal)",
"vwap": "string (decimal)",
"qty": "integer (int32)",
"instrumentDate": "string (date)",
"openTime": "string (int64)",
"closeTime": "string (int64)",
"version": "integer (int32)"
}
]
},
"event": "CHART",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeDepthV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- contractId: integer (int32)
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"contractId": "integer (int32)",
"event": "DEPTH",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeDepthV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- data: DepthV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"depth": {
"id": "string (int64)",
"instrumentDate": "string (date)",
"quoteTime": "string (int64)",
"bids": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
],
"asks": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
]
}
},
"event": "DEPTH",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeDepthsV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- contractIds: integer[]
-
integer (int32) - event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"contractIds": [
"integer (int32)"
],
"event": "DEPTHS",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeDepthsV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- data: DepthsV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"depths": [
{
"id": "string (int64)",
"instrumentDate": "string (date)",
"quoteTime": "string (int64)",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"bids": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
],
"asks": [
{
"price": "string (decimal)",
"qty": "integer (int32)"
}
]
}
]
},
"event": "DEPTHS",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeEvaluationV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"event": "EVALUATION",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeEvaluationV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- data: EvaluationV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"evaluations": [
{
"contractId": "integer (int32)",
"price": "string (decimal)"
}
]
},
"event": "EVALUATION",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeExecutionV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"event": "EXECUTION",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeExecutionV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- data: ExecutionV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"executions": [
{
"id": "string (int64)",
"orderId": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderType": "integer (int32)",
"placeType": "integer (int32)",
"executeType": "integer (int32)",
"executeTime": "string (int64)",
"executeDate": "string (date)",
"executePrice": "string (decimal)",
"executeLot": "integer (int32)",
"executeAmount": "string (decimal)",
"commission": "string (decimal)",
"pl": "string (decimal)",
"baseCommission": "string (decimal)",
"basePl": "string (decimal)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeExecutionId": "string"
}
]
},
"event": "EXECUTION",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeMarketV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"event": "MARKET",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeMarketV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- data: MarketV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"baseCurrencyId": "integer (int32)",
"themeServer": "string",
"institution": {
"id": "integer (int32)",
"name": "string",
"abbreviation": "string",
"phone": "string",
"mail": "string",
"website": "string",
"depositUrl": "string",
"withdrawalUrl": "string",
"theme": "integer (int32)",
"address": "string",
"quotationType": "integer (int32)",
"positionMode": "integer (int32)",
"orderType": "integer (int32)",
"colorPreference": "integer (int32)",
"refreshEffect": "boolean",
"quickOrder": "boolean",
"multiCurrency": "boolean",
"version": "integer (int32)"
},
"currencies": [
{
"id": "integer (int32)",
"name": "string",
"scale": "integer (int32)",
"version": "integer (int32)"
}
],
"currencyPairs": [
{
"id": "integer (int32)",
"name": "string",
"baseCurrency": "integer (int32)",
"quoteCurrency": "integer (int32)",
"scale": "integer (int32)",
"version": "integer (int32)"
}
],
"contracts": [
{
"id": "integer (int32)",
"relatedId": "integer (int32)",
"code": "string",
"status": "integer (int32)",
"instrumentId": "integer (int32)",
"expirationDate": "string (date)",
"lastTradeDate": "string (date)",
"deliveryMonth": "integer (int32)",
"version": "integer (int32)"
}
],
"instruments": [
{
"id": "integer (int32)",
"exchange": "integer (int32)",
"majorContract": "integer (int32)",
"displayOrder": "integer (int32)",
"tradingCurrency": "integer (int32)",
"contractSize": "string (decimal)",
"tickSize": "string (decimal)",
"version": "integer (int32)",
"zoneId": "string",
"slots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
],
"dstSlots": [
{
"hour": "integer (int32)",
"minute": "integer (int32)",
"second": "integer (int32)",
"nano": "integer (int32)"
}
]
}
],
"instrumentCodes": [
{
"id": "integer (int32)",
"code": "string",
"en": "string",
"cn": "string",
"tw": "string",
"version": "integer (int32)"
}
],
"rateTemplates": [
{
"id": "integer (int32)",
"currencyPairId": "integer (int32)",
"rateType": "integer (int32)",
"rate": "string (decimal)",
"askAdjustValue": "integer (int32)",
"bidAdjustValue": "integer (int32)"
}
]
}
}
SubscribeOrderV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"event": "ORDER",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeOrderV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- data: OrderV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
]
},
"event": "ORDER",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribePerformanceV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- interval: integer (int32) 1, 2, 3, 4
-
D7, D30, D90, D180
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"interval": "integer (int32)",
"event": "PERFORMANCE",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribePerformanceV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- data: PerformanceV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"performance": {
"accountId": "string (int64)",
"equity": "string (decimal)",
"floatingPl": "string (decimal)",
"riskRatio": "string (decimal)",
"safetyRatio": "string (decimal)",
"lastTradeTime": "string (int64)",
"pl": "string (decimal)",
"roi": "string (decimal)",
"mdd": "string (decimal)",
"maxRiskRatio": "string (decimal)",
"winRatio": "string (decimal)",
"plRatio": "string (decimal)",
"tradeDays": "integer (int32)",
"tradeLots": "integer (int32)",
"avgProfit": "string (decimal)",
"avgLoss": "string (decimal)",
"avgHoldingPeriod": "string (int64)",
"avgTradingTimes": "string (decimal)",
"avgTradingLots": "string (decimal)",
"performanceTime": "string (int64)"
},
"roimdds": [
{
"date": "string (date)",
"roi": "string (decimal)",
"mdd": "string (decimal)"
}
],
"risks": [
{
"v1": "string (date)",
"v2": "string (decimal)"
}
],
"instrumentStatistics": [
{
"instrumentId": "integer (int32)",
"lots": "integer (int32)",
"pl": "string (decimal)"
}
]
},
"event": "PERFORMANCE",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribePositionV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"event": "POSITION",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribePositionV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- data: PositionV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"account": {
"id": "string (int64)",
"version": "integer (int32)",
"loginId": "string",
"name": "string",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"status": "integer (int32)",
"marginStatus": "integer (int32)"
},
"orders": [
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
],
"positionDetails": [
{
"id": "string (int64)",
"accountId": "string (int64)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currency": "integer (int32)",
"orderId": "string (int64)",
"side": "integer (int32)",
"status": "integer (int32)",
"openDate": "string (date)",
"openTime": "string (int64)",
"openPrice": "string (decimal)",
"openLot": "integer (int32)",
"closedLot": "integer (int32)",
"pl": "string (decimal)"
}
]
},
"event": "POSITION",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeQuoteLevelV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"event": "QUOTE_LEVEL",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeQuoteLevelV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- data: QuoteLevelV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"levels": [
{
"exchange": "integer (int32)",
"level": "integer (int32)",
"l1Days": "integer (int32)",
"l2Days": "integer (int32)"
}
],
"quotationType": "integer (int32)"
},
"event": "QUOTE_LEVEL",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeQuoteV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- contractIds: integer[]
-
integer (int32) - event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"contractIds": [
"integer (int32)"
],
"event": "QUOTE",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeQuoteV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- data: QuoteV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"quotes": [
{
"id": "string (int64)",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"lowPrice": "string (decimal)",
"highPrice": "string (decimal)",
"openingPrice": "string (decimal)",
"preClosingPrice": "string (decimal)",
"preSettlePrice": "string (decimal)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)",
"limitDownPrice": "string (decimal)",
"limitUpPrice": "string (decimal)",
"lastPrice": "string (decimal)",
"lastQty": "integer (int32)",
"totalQty": "integer (int32)",
"changeRate": "string (decimal)",
"changeValue": "string (decimal)",
"positionQty": "integer (int32)",
"instrumentDate": "string (date)",
"tickTime": "string (int64)"
}
]
},
"event": "QUOTE",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeRateV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"event": "RATE",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeRateV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- data: RateV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"rates": [
{
"currencyPairId": "integer (int32)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)"
}
]
},
"event": "RATE",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeRequestV1
- device: DeviceV1
- messageTypes: integer (int32)
-
bitwise enum, mask: [LIQUIDATION(00000001), EXECUTE_ORDER(00000100), LOGIN(00001000)]
- messageToken: string
Example
{
"device": {
"id": "string",
"type": "integer (int32)"
},
"messageTypes": "integer (int32)",
"messageToken": "string"
}
SubscribeSessionV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"event": "SESSION",
"action": "SUBSCRIBE"
}
SubscribeSessionV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "SESSION",
"action": "SUBSCRIBE"
}
SubscribeStatementV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"event": "STATEMENT",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeStatementV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- data: StatementV1Event
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"result": "string",
"event": "STATEMENT",
"action": "SUBSCRIBE",
"data": {
"snapshot": "boolean",
"statement": {
"accountId": "string (int64)",
"equity": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"asset": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"balance": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"financed": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"posterior": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"floatingPl": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"frozenCommission": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"withdrawable": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayWithdrawal": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayDeposit": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayCommission": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayPl": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"freeMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"occupiedMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"positionMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"riskRatio": "string (decimal)",
"safetyRatio": "string (decimal)",
"marginStatus": "integer (int32)"
}
},
"snapshot": "string"
}
SubscribeTickV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- contractId: integer (int32)
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- limit: integer (int32) 256
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"contractId": "integer (int32)",
"event": "TICK",
"action": "SUBSCRIBE",
"limit": "integer (int32)",
"snapshot": "string"
}
SubscribeTickV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- data: TickV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
- snapshot: string NOP, EVENT, REPLY NOP
Example
{
"id": "string (int64)",
"result": "string",
"data": {
"snapshot": "boolean",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"purchased": "boolean",
"ticks": [
{
"id": "string (int64)",
"lowPrice": "string (decimal)",
"highPrice": "string (decimal)",
"openingPrice": "string (decimal)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)",
"lastPrice": "string (decimal)",
"lastQty": "integer (int32)",
"totalQty": "integer (int32)",
"positionQty": "integer (int32)",
"preClosingPrice": "string (decimal)",
"preSettlePrice": "string (decimal)",
"instrumentDate": "string (date)",
"tickTime": "string (int64)"
}
]
},
"event": "TICK",
"action": "SUBSCRIBE",
"snapshot": "string"
}
SubscribeV1
- exchange: integer (int32) 1, 2, 3, 4, 5, 6, 7
-
HKFE, SGX, CME, COMEX, NYMEX, CBOT, EUREX
- level: integer (int32) 1, 2
-
LEVEL1, LEVEL2
- months: integer (int32)
Example
{
"exchange": "integer (int32)",
"level": "integer (int32)",
"months": "integer (int32)"
}
SubscribeV1Response
- result: string SUCCESS, REJECTED, RESTRICTED, INTERNAL_ERROR
- detail: string
Example
{
"result": "string",
"detail": "string"
}
SubscriptionFeeV1
- exchange: integer (int32) 1, 2, 3, 4, 5, 6, 7
-
HKFE, SGX, CME, COMEX, NYMEX, CBOT, EUREX
- currency: integer (int32)
- l1Fee: string (decimal)
-
number format : "0.00001353123"
- l2Fee: string (decimal)
-
number format : "0.00001353123"
- m3Discount: string (decimal)
-
number format : "0.00001353123"
- m6Discount: string (decimal)
-
number format : "0.00001353123"
- y1Discount: string (decimal)
-
number format : "0.00001353123"
- version: integer (int32)
Example
{
"exchange": "integer (int32)",
"currency": "integer (int32)",
"l1Fee": "string (decimal)",
"l2Fee": "string (decimal)",
"m3Discount": "string (decimal)",
"m6Discount": "string (decimal)",
"y1Discount": "string (decimal)",
"version": "integer (int32)"
}
SubscriptionV1Response
- tradingResult: integer (int32) 0, 1, 2, 3, 4, 5, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 51, 52, 54, 55, 56, 57, 99, -1
-
SUCCESS, TIMEOUT, REJECTED, RESTRICTED, STALE_VERSION, INTER_MISSION, LIQUIDATING, UNCLOSABLE_ACCOUNT, ACCOUNT_RESTRICTED, INSTRUMENT_RESTRICTED, CONTRACT_UNTRADABLE, OUT_OF_TRADING_HOURS, RISK_CONTROL_RESTRICTED, QUOTATION_NOT_EXIST, NO_FEASIBLE_PLAN, NO_LIVE_ORDER, NOT_EMPTY, INVALID_REQUEST, INVALID_VOLUME, INVALID_AMOUNT, INVALID_PRICE, INVALID_CURRENCY, INVALID_IT, INVALID_AGENT, INVALID_ACCOUNT, INVALID_INSTRUMENT, INVALID_CONTRACT, INVALID_IT_INSTRUMENT, INVALID_IT_ALLOCATOR, INVALID_LP_ACCOUNT, INVALID_INSTRUMENT_TEMPORAL, INVALID_TICK, INVALID_ORDER, INVALID_EXECUTION, INVALID_POSITION_DETAIL, INVALID_TRADE_TYPE, INVALID_LP_ORDER_ID, INVALID_CASHFLOW_TYPE, INVALID_MARGIN_STATUS, INVALID_LP_INSTRUMENT, INVALID_LP, ILLEGAL_REQUEST, ORDER_NOT_CHANGE, INVALID_ACCOUNT_STATUS, INVALID_SUBSCRIPTION, INSUFFICIENT_FUNDS, INSUFFICIENT_MARGIN, DUPLICATE_LOGIN_ID, INVALID_MARGIN_TEMPLATE, INVALID_FEE_TEMPLATE, INVALID_RATE_TEMPLATE, INTERNAL_ERROR, IGNORE
- validations: object
- result: string
Example
{
"tradingResult": "integer (int32)",
"validations": "object",
"result": "string"
}
TickV1
- id: string (int64)
-
number format : "81829012300"
- lowPrice: string (decimal)
-
number format : "0.00001353123"
- highPrice: string (decimal)
-
number format : "0.00001353123"
- openingPrice: string (decimal)
-
number format : "0.00001353123"
- bidPrice: string (decimal)
-
number format : "0.00001353123"
- askPrice: string (decimal)
-
number format : "0.00001353123"
- lastPrice: string (decimal)
-
number format : "0.00001353123"
- lastQty: integer (int32)
- totalQty: integer (int32)
- positionQty: integer (int32)
- preClosingPrice: string (decimal)
-
number format : "0.00001353123"
- preSettlePrice: string (decimal)
-
number format : "0.00001353123"
- instrumentDate: string (date)
- tickTime: string (int64)
-
number format : "81829012300"
Example
{
"id": "string (int64)",
"lowPrice": "string (decimal)",
"highPrice": "string (decimal)",
"openingPrice": "string (decimal)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)",
"lastPrice": "string (decimal)",
"lastQty": "integer (int32)",
"totalQty": "integer (int32)",
"positionQty": "integer (int32)",
"preClosingPrice": "string (decimal)",
"preSettlePrice": "string (decimal)",
"instrumentDate": "string (date)",
"tickTime": "string (int64)"
}
TickV1Event
Example
{
"snapshot": "boolean",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"purchased": "boolean",
"ticks": [
{
"id": "string (int64)",
"lowPrice": "string (decimal)",
"highPrice": "string (decimal)",
"openingPrice": "string (decimal)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)",
"lastPrice": "string (decimal)",
"lastQty": "integer (int32)",
"totalQty": "integer (int32)",
"positionQty": "integer (int32)",
"preClosingPrice": "string (decimal)",
"preSettlePrice": "string (decimal)",
"instrumentDate": "string (date)",
"tickTime": "string (int64)"
}
]
}
TickV1EventMessage
- data: TickV1Event
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
Example
{
"data": {
"snapshot": "boolean",
"instrumentId": "integer (int32)",
"contractId": "integer (int32)",
"purchased": "boolean",
"ticks": [
{
"id": "string (int64)",
"lowPrice": "string (decimal)",
"highPrice": "string (decimal)",
"openingPrice": "string (decimal)",
"bidPrice": "string (decimal)",
"askPrice": "string (decimal)",
"lastPrice": "string (decimal)",
"lastQty": "integer (int32)",
"totalQty": "integer (int32)",
"positionQty": "integer (int32)",
"preClosingPrice": "string (decimal)",
"preSettlePrice": "string (decimal)",
"instrumentDate": "string (date)",
"tickTime": "string (int64)"
}
]
},
"event": "TICK"
}
TradingAccountV1
- id: string (int64)
-
number format : "81829012300"
- version: integer (int32)
- loginId: string
- name: string
- itId: integer (int32)
- agentId: integer (int32)
- status: integer (int32) 1, 2, 3
-
ACTIVATED, CLOSED, SUBMITTED
- marginStatus: integer (int32) 1, 3, 5
-
NORMAL, LIQUIDATING, LIQUIDATION_FAILED
Example
{
"id": "string (int64)",
"version": "integer (int32)",
"loginId": "string",
"name": "string",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"status": "integer (int32)",
"marginStatus": "integer (int32)"
}
TradingCashflowV1
- id: string (int64)
-
number format : "81829012300"
- version: integer (int32)
- accountId: string (int64)
-
number format : "81829012300"
- clusterId: integer (int32)
- itId: integer (int32)
- agentId: integer (int32)
- sourceId: string (int64)
-
number format : "81829012300"
- sourceId2: string (int64)
-
number format : "81829012300"
- realizeCurrency: integer (int32)
- currency: integer (int32)
- sourceCurrency: integer (int32)
- convertRate: string (decimal)
-
number format : "0.00001353123"
- side: integer (int32) 1, -1
-
IN, OUT
- type: integer (int32) 1, 2, 3, 4, 5, 6, 7, 8, 9
-
FEE, PL, BALANCE, FINANCED, CASHBACK, SUBSCRIPTION, SWAP, COMMISSION, ADJUSTMENT
- amount: string (decimal)
-
number format : "0.00001353123"
- sourceAmount: string (decimal)
-
number format : "0.00001353123"
- settleDate: string (date)
- occurDate: string (date)
- occurTime: string (int64)
-
number format : "81829012300"
Example
{
"id": "string (int64)",
"version": "integer (int32)",
"accountId": "string (int64)",
"clusterId": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"sourceId": "string (int64)",
"sourceId2": "string (int64)",
"realizeCurrency": "integer (int32)",
"currency": "integer (int32)",
"sourceCurrency": "integer (int32)",
"convertRate": "string (decimal)",
"side": "integer (int32)",
"type": "integer (int32)",
"amount": "string (decimal)",
"sourceAmount": "string (decimal)",
"settleDate": "string (date)",
"occurDate": "string (date)",
"occurTime": "string (int64)"
}
TradingExecutionV1
- id: string (int64)
-
number format : "81829012300"
- orderId: string (int64)
-
number format : "81829012300"
- version: integer (int32)
- itId: integer (int32)
- agentId: integer (int32)
- accountId: string (int64)
-
number format : "81829012300"
- contractId: integer (int32)
- contractCode: string
- instrumentId: integer (int32)
- currencyId: integer (int32)
- side: integer (int32) 1, -1
-
BUY, SELL
- orderType: integer (int32) 3, 5, 6, 7
-
LIMIT, MARKET, TRAIL, TP_SL
- placeType: integer (int32) 1, 2, 3, 4, 5, 6, 7
-
REGULAR, LIQUIDATE, ADD_EXECUTION, CONTRACT_CLOSE, EMERGENCY_CLOSE, MANUAL_CLOSE, AUTO_CLOSE
- executeType: integer (int32) 1, 2
-
OPEN, CLOSE
- executeTime: string (int64)
-
number format : "81829012300"
- executeDate: string (date)
- executePrice: string (decimal)
-
number format : "0.00001353123"
- executeLot: integer (int32)
- executeAmount: string (decimal)
-
number format : "0.00001353123"
- commission: string (decimal)
-
number format : "0.00001353123"
- pl: string (decimal)
-
number format : "0.00001353123"
- baseCommission: string (decimal)
-
number format : "0.00001353123"
- basePl: string (decimal)
-
number format : "0.00001353123"
- clientAccountId: string (int64)
-
number format : "81829012300"
- clientOrderId: string
- exchangeExecutionId: string
Example
{
"id": "string (int64)",
"orderId": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderType": "integer (int32)",
"placeType": "integer (int32)",
"executeType": "integer (int32)",
"executeTime": "string (int64)",
"executeDate": "string (date)",
"executePrice": "string (decimal)",
"executeLot": "integer (int32)",
"executeAmount": "string (decimal)",
"commission": "string (decimal)",
"pl": "string (decimal)",
"baseCommission": "string (decimal)",
"basePl": "string (decimal)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeExecutionId": "string"
}
TradingOrderV1
- id: string (int64)
-
number format : "81829012300"
- version: integer (int32)
- itId: integer (int32)
- agentId: integer (int32)
- accountId: string (int64)
-
number format : "81829012300"
- contractId: integer (int32)
- contractCode: string
- instrumentId: integer (int32)
- currencyId: integer (int32)
- side: integer (int32) 1, -1
-
BUY, SELL
- orderStatus: integer (int32) 2, 3, 4, 5, 6, 22, 8, 10, 12, 14
-
PLACING, ACCEPTED, PLACED, FAILED, CANCELLING, TRIGGERING, CANCELLED, MODIFYING, EXPIRED, EXECUTED
- fillStatus: integer (int32) 2, 4, 6
-
NONE, PARTIAL, FILLED
- modifyType: integer (int32) 32, 1, 33, 2, 34, 98, 3, 35, 99, 4, 36, 5, 6, 7, 8, 9, 10, 11, 12, 21, 22, 31
-
TRAIL, PLACE, EXPIRE, PLACE_ACCEPT, EXECUTE, DUPLICATE, PLACED, EXECUTION_REPORT, UNKNOWN, PLACE_FAILED, ORDER_NOTICE, CANCEL, CANCEL_ACCEPT, CANCELLED, CANCEL_FAILED, MODIFY, MODIFY_ACCEPT, MODIFY_FAILED, MODIFIED, SYNC, SYNCED, TRIGGER
- orderTime: string (int64)
-
number format : "81829012300"
- orderDate: string (date)
- orderType: integer (int32) 3, 5, 6, 7
-
LIMIT, MARKET, TRAIL, TP_SL
- orderPrice: string (decimal)
-
number format : "0.00001353123"
- orderPrice2: string (decimal)
-
number format : "0.00001353123"
- tpPrice: string (decimal)
-
number format : "0.00001353123"
- slPrice: string (decimal)
-
number format : "0.00001353123"
- closePxType: integer (int32) 1, 2, 3
-
VALUE, OFFSET, POINT
- closeTpPx: string (decimal)
-
number format : "0.00001353123"
- closeSlPx: string (decimal)
-
number format : "0.00001353123"
- trailOffset: string (decimal)
-
number format : "0.00001353123"
- orderLot: integer (int32)
- executeLot: integer (int32)
- cancelLot: integer (int32)
- executePrice: string (decimal)
-
number format : "0.00001353123"
- triggerTime: string (int64)
-
number format : "81829012300"
- placeType: integer (int32) 1, 2, 3, 4, 5, 6, 7
-
REGULAR, LIQUIDATE, ADD_EXECUTION, CONTRACT_CLOSE, EMERGENCY_CLOSE, MANUAL_CLOSE, AUTO_CLOSE
- tradeType: integer (int32) 1, 2, 3
-
OPEN, CLOSE, AUTO
- expireType: integer (int32) 1, 2, 3, 4
-
FOK, IOC, GTC, DAY
- triggerType: integer (int32) 1, 2
-
TP, SL
- positionDetailId: string (int64)
-
number format : "81829012300"
- clientAccountId: string (int64)
-
number format : "81829012300"
- clientOrderId: string
- exchangeOrderId: string
- errorMessage: string
- lpOrderStatus: integer (int32) 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13
-
QUEUED, FILLED, FAILED, ACCEPTED, CANCELED, SUBMITED, SUPPENDED, PENDING_CANCEL, PENDING_MODIFY, PARTIAL_FILLED, DELETEDFOREXPIRE, PARTIAL_CANCELED, PENDING_SUBMIT
- lpExecutePrice: string (decimal)
-
number format : "0.00001353123"
- lpExecuteQty: integer (int32)
Example
{
"id": "string (int64)",
"version": "integer (int32)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"accountId": "string (int64)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currencyId": "integer (int32)",
"side": "integer (int32)",
"orderStatus": "integer (int32)",
"fillStatus": "integer (int32)",
"modifyType": "integer (int32)",
"orderTime": "string (int64)",
"orderDate": "string (date)",
"orderType": "integer (int32)",
"orderPrice": "string (decimal)",
"orderPrice2": "string (decimal)",
"tpPrice": "string (decimal)",
"slPrice": "string (decimal)",
"closePxType": "integer (int32)",
"closeTpPx": "string (decimal)",
"closeSlPx": "string (decimal)",
"trailOffset": "string (decimal)",
"orderLot": "integer (int32)",
"executeLot": "integer (int32)",
"cancelLot": "integer (int32)",
"executePrice": "string (decimal)",
"triggerTime": "string (int64)",
"placeType": "integer (int32)",
"tradeType": "integer (int32)",
"expireType": "integer (int32)",
"triggerType": "integer (int32)",
"positionDetailId": "string (int64)",
"clientAccountId": "string (int64)",
"clientOrderId": "string",
"exchangeOrderId": "string",
"errorMessage": "string",
"lpOrderStatus": "integer (int32)",
"lpExecutePrice": "string (decimal)",
"lpExecuteQty": "integer (int32)"
}
TradingPerformanceV1
- accountId: string (int64)
-
number format : "81829012300"
- equity: string (decimal)
-
number format : "0.00001353123"
- floatingPl: string (decimal)
-
number format : "0.00001353123"
- riskRatio: string (decimal)
-
number format : "0.00001353123"
- safetyRatio: string (decimal)
-
number format : "0.00001353123"
- lastTradeTime: string (int64)
-
number format : "81829012300"
- pl: string (decimal)
-
number format : "0.00001353123"
- roi: string (decimal)
-
number format : "0.00001353123"
- mdd: string (decimal)
-
number format : "0.00001353123"
- maxRiskRatio: string (decimal)
-
number format : "0.00001353123"
- winRatio: string (decimal)
-
number format : "0.00001353123"
- plRatio: string (decimal)
-
number format : "0.00001353123"
- tradeDays: integer (int32)
- tradeLots: integer (int32)
- avgProfit: string (decimal)
-
number format : "0.00001353123"
- avgLoss: string (decimal)
-
number format : "0.00001353123"
- avgHoldingPeriod: string (int64)
-
number format : "81829012300"
- avgTradingTimes: string (decimal)
-
number format : "0.00001353123"
- avgTradingLots: string (decimal)
-
number format : "0.00001353123"
- performanceTime: string (int64)
-
number format : "81829012300"
Example
{
"accountId": "string (int64)",
"equity": "string (decimal)",
"floatingPl": "string (decimal)",
"riskRatio": "string (decimal)",
"safetyRatio": "string (decimal)",
"lastTradeTime": "string (int64)",
"pl": "string (decimal)",
"roi": "string (decimal)",
"mdd": "string (decimal)",
"maxRiskRatio": "string (decimal)",
"winRatio": "string (decimal)",
"plRatio": "string (decimal)",
"tradeDays": "integer (int32)",
"tradeLots": "integer (int32)",
"avgProfit": "string (decimal)",
"avgLoss": "string (decimal)",
"avgHoldingPeriod": "string (int64)",
"avgTradingTimes": "string (decimal)",
"avgTradingLots": "string (decimal)",
"performanceTime": "string (int64)"
}
TradingPositionDetailV1
- id: string (int64)
-
number format : "81829012300"
- accountId: string (int64)
-
number format : "81829012300"
- itId: integer (int32)
- agentId: integer (int32)
- contractId: integer (int32)
- contractCode: string
- instrumentId: integer (int32)
- currency: integer (int32)
- orderId: string (int64)
-
number format : "81829012300"
- side: integer (int32) 1, -1
-
BUY, SELL
- status: integer (int32) 1, 2
-
OPENED, CLOSED
- openDate: string (date)
- openTime: string (int64)
-
number format : "81829012300"
- openPrice: string (decimal)
-
number format : "0.00001353123"
- openLot: integer (int32)
- closedLot: integer (int32)
- pl: string (decimal)
-
number format : "0.00001353123"
Example
{
"id": "string (int64)",
"accountId": "string (int64)",
"itId": "integer (int32)",
"agentId": "integer (int32)",
"contractId": "integer (int32)",
"contractCode": "string",
"instrumentId": "integer (int32)",
"currency": "integer (int32)",
"orderId": "string (int64)",
"side": "integer (int32)",
"status": "integer (int32)",
"openDate": "string (date)",
"openTime": "string (int64)",
"openPrice": "string (decimal)",
"openLot": "integer (int32)",
"closedLot": "integer (int32)",
"pl": "string (decimal)"
}
TradingStatementV1
- accountId: string (int64)
-
number format : "81829012300"
- equity: CurrencyAmount
- asset: CurrencyAmount
- balance: CurrencyAmount
- financed: CurrencyAmount
- posterior: CurrencyAmount
- floatingPl: CurrencyAmount
- frozenCommission: CurrencyAmount
- withdrawable: CurrencyAmount
- intradayWithdrawal: CurrencyAmount
- intradayDeposit: CurrencyAmount
- intradayCommission: CurrencyAmount
- intradayPl: CurrencyAmount
- freeMargin: CurrencyAmount
- occupiedMargin: CurrencyAmount
- positionMargin: CurrencyAmount
- riskRatio: string (decimal)
-
number format : "0.00001353123"
- safetyRatio: string (decimal)
-
number format : "0.00001353123"
- marginStatus: integer (int32) 1, 3, 5
-
NORMAL, LIQUIDATING, LIQUIDATION_FAILED
Example
{
"accountId": "string (int64)",
"equity": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"asset": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"balance": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"financed": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"posterior": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"floatingPl": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"frozenCommission": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"withdrawable": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayWithdrawal": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayDeposit": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayCommission": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"intradayPl": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"freeMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"occupiedMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"positionMargin": {
"type": "integer (int32)",
"baseAmount": "string (decimal)",
"amounts": "object (map{...})"
},
"riskRatio": "string (decimal)",
"safetyRatio": "string (decimal)",
"marginStatus": "integer (int32)"
}
TradingSubscriptionV1
- id: string (int64)
-
number format : "81829012300"
- exchange: integer (int32) 1, 2, 3, 4, 5, 6, 7
-
HKFE, SGX, CME, COMEX, NYMEX, CBOT, EUREX
- currency: integer (int32)
- subscriptionTime: string (int64)
-
number format : "81829012300"
- months: integer (int32)
- level: integer (int32) 1, 2
-
LEVEL1, LEVEL2
- monthFee: string (decimal)
-
number format : "0.00001353123"
- totalFee: string (decimal)
-
number format : "0.00001353123"
- discount: string (decimal)
-
number format : "0.00001353123"
Example
{
"id": "string (int64)",
"exchange": "integer (int32)",
"currency": "integer (int32)",
"subscriptionTime": "string (int64)",
"months": "integer (int32)",
"level": "integer (int32)",
"monthFee": "string (decimal)",
"totalFee": "string (decimal)",
"discount": "string (decimal)"
}
TupleLocalDateBigDecimal
- v1: string (date)
- v2: string (decimal)
-
number format : "0.00001353123"
Example
{
"v1": "string (date)",
"v2": "string (decimal)"
}
UnSubscribeRequestV1
- device: DeviceV1
Example
{
"device": {
"id": "string",
"type": "integer (int32)"
}
}
UnSubscribeV1Response
- result: string SUCCESS, REJECTED, RESTRICTED, INTERNAL_ERROR
- detail: string
Example
{
"result": "string",
"detail": "string"
}
UnsubscribeChartV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- contractId: integer (int32)
- chartType: integer (int32) 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 16, 20, 21, 22, 23, 25
-
M1, M5, M10, M15, M30, H1, H2, H4, D1, W1, M3, S15, MN1, S1, S3, S5, S10, S30
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"contractId": "integer (int32)",
"chartType": "integer (int32)",
"event": "CHART",
"action": "UNSUBSCRIBE"
}
UnsubscribeChartV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "CHART",
"action": "UNSUBSCRIBE"
}
UnsubscribeDepthV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- contractId: integer (int32)
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"contractId": "integer (int32)",
"event": "DEPTH",
"action": "UNSUBSCRIBE"
}
UnsubscribeDepthV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "DEPTH",
"action": "UNSUBSCRIBE"
}
UnsubscribeDepthsV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- contractIds: integer[]
-
integer (int32) - event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"contractIds": [
"integer (int32)"
],
"event": "DEPTHS",
"action": "UNSUBSCRIBE"
}
UnsubscribeDepthsV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "DEPTHS",
"action": "UNSUBSCRIBE"
}
UnsubscribeEvaluationV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"event": "EVALUATION",
"action": "UNSUBSCRIBE"
}
UnsubscribeEvaluationV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "EVALUATION",
"action": "UNSUBSCRIBE"
}
UnsubscribeExecutionV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"event": "EXECUTION",
"action": "UNSUBSCRIBE"
}
UnsubscribeExecutionV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "EXECUTION",
"action": "UNSUBSCRIBE"
}
UnsubscribeMarketV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"event": "MARKET",
"action": "UNSUBSCRIBE"
}
UnsubscribeMarketV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "MARKET",
"action": "UNSUBSCRIBE"
}
UnsubscribeOrderV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"event": "ORDER",
"action": "UNSUBSCRIBE"
}
UnsubscribeOrderV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "ORDER",
"action": "UNSUBSCRIBE"
}
UnsubscribePerformanceV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- interval: integer (int32) 1, 2, 3, 4
-
D7, D30, D90, D180
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"interval": "integer (int32)",
"event": "PERFORMANCE",
"action": "UNSUBSCRIBE"
}
UnsubscribePerformanceV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "PERFORMANCE",
"action": "UNSUBSCRIBE"
}
UnsubscribePositionV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"event": "POSITION",
"action": "UNSUBSCRIBE"
}
UnsubscribePositionV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "POSITION",
"action": "UNSUBSCRIBE"
}
UnsubscribeQuoteLevelV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"event": "QUOTE_LEVEL",
"action": "UNSUBSCRIBE"
}
UnsubscribeQuoteLevelV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "QUOTE_LEVEL",
"action": "UNSUBSCRIBE"
}
UnsubscribeQuoteV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- contractIds: integer[]
-
integer (int32) - event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"contractIds": [
"integer (int32)"
],
"event": "QUOTE",
"action": "UNSUBSCRIBE"
}
UnsubscribeQuoteV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "QUOTE",
"action": "UNSUBSCRIBE"
}
UnsubscribeRateV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"event": "RATE",
"action": "UNSUBSCRIBE"
}
UnsubscribeRateV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "RATE",
"action": "UNSUBSCRIBE"
}
UnsubscribeSessionV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"event": "SESSION",
"action": "UNSUBSCRIBE"
}
UnsubscribeSessionV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "SESSION",
"action": "UNSUBSCRIBE"
}
UnsubscribeStatementV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"event": "STATEMENT",
"action": "UNSUBSCRIBE"
}
UnsubscribeStatementV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "STATEMENT",
"action": "UNSUBSCRIBE"
}
UnsubscribeTickV1EventRequest
- id: string (int64)
-
number format : "81829012300"
- contractId: integer (int32)
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"contractId": "integer (int32)",
"event": "TICK",
"action": "UNSUBSCRIBE"
}
UnsubscribeTickV1EventResponse
- id: string (int64)
-
number format : "81829012300"
- result: string SUCCESS, OVERLOAD, REJECTED, RESTRICTED, BAD_REQUEST, INTERNAL_ERROR
- event: string RATE, DEPTH, DEPTHS, CHART, TICK, QUOTE, PL_QUOTE, EVALUATION, MARKET, POSITION, QUOTE_LEVEL, STATEMENT, ACCOUNT, EXECUTION, ORDER, PERFORMANCE, SESSION
- action: string PING, SUBSCRIBE, UNSUBSCRIBE
Example
{
"id": "string (int64)",
"result": "string",
"event": "TICK",
"action": "UNSUBSCRIBE"
}