Submit Common Order

Submit a new Common order for execution.

This operation uses the same OpenAPI endpoint as Smart Balance. Set portfolioType to COMMON and omit all strategy-specific trade blocks.

Endpoint

POST /tt/themis-broker/openapi/portfolios/submit

Authentication: HMAC apiKey signature via REST headers. See Authentication.

Parameters

Top-level fields โ€” the request body is flat, with no envelope.

Parameter Type Required Description
accountId long true Reality account ID
portfolioType string true Must be COMMON
strategy string false Free-text strategy label
legs array true Array of Leg objects; at least 1 leg. One leg creates a common single order; multiple legs create a common combo. All legs must have the same forCcy
customizedNote string false Maximum 100 characters
sendToDummyAccountIds array false Array of long account IDs to mirror the order to

COMMON does not use balanceTrade, twapTrade, or icebergTrade.

legs[].Leg โ€” each leg of the order.

Parameter Type Required Description
instrument string true Exchange symbol
instrumentType string true OPTION / PERPETUAL / DELIVERY_FUTURES / SPOT
side int true 1 BUY / 2 SELL
quantity decimal true Order quantity
priceOptions object true Price configuration (see below)
priceSnapshot array false Reference prices captured at submit time for audit
timeInForce int false 1 GTC / 2 IOC / 3 FOK / 4 GTD
postOnly boolean false Default false
reduceOnly boolean false Default false
hidden boolean false Default false
tradeMode int false 1 CASH / 2 CROSS / 3 ISOLATED
positionSide int false 1 LONG / 2 SHORT / 3 NET
hedge boolean false Hedge flag; default false

priceOptions โ€” nested under each leg.

Parameter Type Required Description
priceType string true LIMIT / MARKET / DYNAMIC
price decimal when priceType=LIMIT or DYNAMIC Order price
priceIn string when priceType=LIMIT or DYNAMIC Price currency or IV, as supported by the instrument and exchange
dynamicPriceStrategy string when priceType=DYNAMIC MID / MARK / MODEL / BID / ASK
dynamicPriceOffset decimal false Offset applied to the dynamic reference; may be negative
dynamicMs long when dynamicPriceStrategy is provided Reprice interval in milliseconds

Request Example

POST /tt/themis-broker/openapi/portfolios/submit HTTP/1.1
Authorization: Bearer <api-key>
Signalplus-API-Timestamp: 1776665215780
Signalplus-API-Nonce: e43b0618-6965-4b0b-a62d-a3a4f78eed52
Signalplus-API-Signature: <base64 hmac>
Content-Type: application/json

{
  "accountId": 10003443,
  "portfolioType": "COMMON",
  "strategy": "Custom",
  "customizedNote": "single-leg common order",
  "legs": [
    {
      "instrument": "BTC-25DEC26-40000-P",
      "instrumentType": "OPTION",
      "side": 1,
      "quantity": 1.5,
      "priceOptions": {
        "priceType": "LIMIT",
        "price": 0.031,
        "priceIn": "BTC",
        "dynamicPriceStrategy": null,
        "dynamicPriceOffset": null,
        "dynamicMs": null
      },
      "priceSnapshot": [],
      "timeInForce": 1,
      "postOnly": false,
      "reduceOnly": false,
      "tradeMode": 2,
      "positionSide": 3
    }
  ]
}

Response Example

{
  "succ": true,
  "code": 0,
  "message": "",
  "value": {
    "portfolioId": 144115188955249274
  }
}

Response

Name Type Description
portfolioId long Newly created portfolio ID; use this for /info, /cancel, and WebSocket correlation

results matching ""

    No results matching ""