developers:websocket:orders

This is an old revision of the document!


The WebSocket API provides real-time order routing, allowing clients to submit, revise, and pull orders. All order-related operations are sent within a **ClientMessage** envelope and responses are received within a **ServerMessage** envelope.

Submitting an Order

To submit an order, clients send an OrderSubmit message.

Note: You must subscribe to the Account before submitting an order into it. Orders will be rejected if the account is not subscribed.

Example OrderSubmit message:

OrderSubmit {
   UserId = "efda0709-af12-4b65-8971-5089edb4aaf0",
   AccountId = "448c9ddd-6a50-4852-85ea-aad3b6d60620",
   MarketId = "XCME_C ZC (H25)",
   Orders = [
      {
         BuySell = BuySell.Buy,
         PriceType = PriceType.Limit,
         TimeType = TimeType.Normal,
         Volume = 5,
         LimitPrice = "4200.50"
      }
   ]
}

Note: The OrderSubmit message allows submitting multiple orders at once.

Revising an Order

To revise an existing order, clients send an OrderRevise message.

Example OrderRevise message:

OrderRevise {
   UserId = "efda0709-af12-4b65-8971-5089edb4aaf0",
   AccountId = "448c9ddd-6a50-4852-85ea-aad3b6d60620",
   MarketId = "XCME_C ZC (H25)",
   Revisions = [
      {
         UniqueId = "a3b1c5f2-7d43-4f9b-88e2-1e2f75c6d9a1",
         Volume = 10,
         LimitPrice = "4250.00"
      }
   ]
}

Note: The OrderRevise message allows revising multiple orders at once.

Pulling (Cancelling) an Order

To cancel an order, clients must send an OrderPull message with the order ID.

Example OrderPull message:

OrderPull {
   UserId = "efda0709-af12-4b65-8971-5089edb4aaf0",
   AccountId = "448c9ddd-6a50-4852-85ea-aad3b6d60620",
   MarketId = "XCME_C ZC (H25)",
   Pulls = [
      {
         UniqueId = "a3b1c5f2-7d43-4f9b-88e2-1e2f75c6d9a1"
      }
   ]
}

Note: The OrderPull message allows pulling multiple orders at once.

  • developers/websocket/orders.1741987938.txt.gz
  • Last modified: 2025/03/14 21:32
  • by chad