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

  1. 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

POST /apiLogin
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

POST /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

POST /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

POST /password/skip

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

POST /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

GET /release
appType: integer (int32) 1, 2, 3, 4, 5, 6
in query

IOS, ANDROID, WINDOWS_X64, MAC_X64, MAC_ARM64, IOS_TF

appVersion: string (string)
in query

(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

POST /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

GET /customer/access/iterator
limit: integer (int32) 10
in query

(no description)

id: string (int64)
in query

number format : "81829012300"

timeFrom: string (int64)
in query

number format : "81829012300"

timeTo: string (int64)
in query

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

GET /customer/report/download
reportId: string (int64)
in query

number format : "81829012300"

Request Url Example
https://demo-trader.ayson.us/api/v1/customer/report/download
200 OK

successful operation

Response Example (200 OK)
{
  "file": "file",
  "fileName": "string"
}

iterate report

GET /customer/report/iterator
limit: integer (int32) 10
in query

(no description)

id: string (int64)
in query

number format : "81829012300"

dateFrom: string (date)
in query

(no description)

dateTo: string (date)
in query

(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

POST /customer/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

POST /customer/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

GET /market/baseCurrency
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

GET /market/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

GET /market/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

GET /market/currencyPair
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

GET /market/dailySlot
contractId: integer (int32)
in query

(no description)

limit: integer (int32) 5
in query

(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

GET /market/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

GET /market/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

GET /market/instrumentCode
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

GET /market/instrumentContract
instrumentId: integer (int32)
in query

(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

GET /market/itInstrument
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

GET /market/mainContract
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

GET /market/majorContract
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

GET /market/subscriptionFee
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

GET /market/themeServer
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

GET /pricing/chart/iterator
contractId: integer (int32)
in query

(no description)

chartType: integer (int32) 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 16, 20, 21, 22, 23, 25
in query

M1, M5, M10, M15, M30, H1, H2, H4, D1, W1, M3, S15, MN1, S1, S3, S5, S10, S30

id: string (int64)
in query

number format : "81829012300"

limit: integer (int32) 60
in query

(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

GET /pricing/tick/iterator
contractId: integer (int32)
in query

(no description)

id: string (int64)
in query

number format : "81829012300"

limit: integer (int32) 32
in query

(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

GET /pricing/tick/last
contractId: integer (int32)
in query

(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

GET /trading/cashflow/iterator
limit: integer (int32) 15
in query

(no description)

id: string (int64)
in query

number format : "81829012300"

type: integer (int32) 1, 2, 3, 4, 5, 6, 7, 8, 9
in query

FEE, PL, BALANCE, FINANCED, CASHBACK, SUBSCRIPTION, SWAP, COMMISSION, ADJUSTMENT

side: integer (int32) 1, -1
in query

IN, OUT

orderTimeFrom: string (int64)
in query

number format : "81829012300"

orderTimeTo: string (int64)
in query

number format : "81829012300"

occurTimeFrom: string (int64)
in query

number format : "81829012300"

occurTimeTo: string (int64)
in query

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

GET /trading/execution/iterator
limit: integer (int32) 15
in query

(no description)

id: string (int64)
in query

number format : "81829012300"

side: integer (int32) 1, -1
in query

BUY, SELL

contractId: integer (int32)
in query

(no description)

executeType: integer (int32) 1, 2
in query

OPEN, CLOSE

executeTimeFrom: string (int64)
in query

number format : "81829012300"

executeTimeTo: string (int64)
in query

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

GET /trading/execution/today
limit: integer (int32) 1000
in query

(no description)

id: string (int64)
in query

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

POST /trading/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

DELETE /trading/order/clear
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

GET /trading/order/iterator
limit: integer (int32) 15
in query

(no description)

id: string (int64)
in query

number format : "81829012300"

side: integer (int32) 1, -1
in query

BUY, SELL

contractId: integer (int32)
in query

(no description)

tradeTypes: integer (int32)
in query

bitwise enum, mask: [OPEN(00000001), CLOSE(00000010), NET(00000100)]

orderTimeFrom: string (int64)
in query

number format : "81829012300"

orderTimeTo: string (int64)
in query

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

GET /trading/order/query
orderId: string (int64)
in query

number format : "81829012300"

clientOrderId: string
in query

(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

GET /trading/order/today
limit: integer (int32) 25
in query

(no description)

id: string (int64)
in query

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

GET /trading/order/today/posted
limit: integer (int32) 30
in query

(no description)

id: string (int64)
in query

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

GET /trading/order/today/tpsl/close
limit: integer (int32) 30
in query

(no description)

id: string (int64)
in query

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

GET /trading/order/today/tpsl/open
limit: integer (int32) 30
in query

(no description)

id: string (int64)
in query

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

PUT /trading/order/{orderId}
orderId: string (int64)
in path

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

DELETE /trading/order/{orderId}
orderId: string (int64)
in path

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

GET /trading/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

POST /trading/position/liquidate
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

GET /trading/positionDetail/iterator
limit: integer (int32) 15
in query

(no description)

id: string (int64)
in query

number format : "81829012300"

side: integer (int32) 1, -1
in query

BUY, SELL

contractId: integer (int32)
in query

(no description)

timeFrom: string (int64)
in query

number format : "81829012300"

timeTo: string (int64)
in query

number format : "81829012300"

Request Url Example
https://demo-trader.ayson.us/api/v1/trading/positionDetail/iterator
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

GET /trading/quoteLevels
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

GET /trading/subscription/iterator
exchange: integer (int32) 1, 2, 3, 4, 5, 6, 7
in query

HKFE, SGX, CME, COMEX, NYMEX, CBOT, EUREX

limit: integer (int32) 15
in query

(no description)

id: string (int64)
in query

number format : "81829012300"

timeFrom: string (int64)
in query

number format : "81829012300"

timeTo: string (int64)
in query

number format : "81829012300"

Request Url Example
https://demo-trader.ayson.us/api/v1/trading/subscription/iterator
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

POST /trading/subscription/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"
}

ApiMessage

data: object
message: string
Example
{
  "data": "object",
  "message": "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

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"
}

ApiMessageListSlotV1

data: SlotV1
SlotV1
message: string
Example
{
  "data": [
    {
      "instrumentDate": "string (date)",
      "currentTimeMillis": "string (int64)",
      "slots": [
        "string (int64)"
      ]
    }
  ],
  "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"
}

ApiMessageString

data: string
message: string
Example
{
  "data": "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

snapshot: boolean
instrumentId: integer (int32)
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

charts: ChartV1
ChartV1
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

id: string (int64)

number format : "81829012300"

instrumentDate: string (date)
quoteTime: string (int64)

number format : "81829012300"

bids: BandV1
BandV1
asks: BandV1
BandV1
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

id: string (int64)

number format : "81829012300"

instrumentDate: string (date)
quoteTime: string (int64)

number format : "81829012300"

instrumentId: integer (int32)
contractId: integer (int32)
bids: BandV1
BandV1
asks: BandV1
BandV1
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

snapshot: boolean
depths: DepthsV1
DepthsV1
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

next: string (int64)

number format : "81829012300"

accesses: AccessV1
AccessV1
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

instrumentId: integer (int32)
contractId: integer (int32)
type: 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

next: string (int64)

number format : "81829012300"

charts: ChartV1
ChartV1
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

next: string (int64)

number format : "81829012300"

reports: ReportV1
ReportV1
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

instrumentId: integer (int32)
contractId: integer (int32)
next: string (int64)

number format : "81829012300"

ticks: TickV1
TickV1
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)"
}

LogoutV1Request

Example
"object"

LogoutV1Response

result: string SUCCESS
Example
{
  "result": "string"
}

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

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

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

snapshot: boolean
quotes: QuoteV1
QuoteV1
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)"
}

RateV1Event

snapshot: boolean
rates: RateV1
RateV1
Example
{
  "snapshot": "boolean",
  "rates": [
    {
      "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"
}

Report

file: file
fileName: string
Example
{
  "file": "file",
  "fileName": "string"
}

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

snapshot: boolean
instrumentId: integer (int32)
contractId: integer (int32)
purchased: boolean
ticks: TickV1
TickV1
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)"
}

Tuple

v1: object
v2: object
Example
{
  "v1": "object",
  "v2": "object"
}

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"
}