| Both sides previous revision Previous revision Next revision | Previous revision |
| developers:websocket:orders [2025/03/14 22:10] – chad | developers:websocket:orders [Unknown date] (current) – external edit (Unknown date) 127.0.0.1 |
|---|
| |
| |
| | ==== Flatten Position ==== |
| | |
| | A Flatten Position Order closes the entire position in the specified market by submitting an offsetting order at market price. |
| | |
| | Example **Flatten Position Order** message: |
| | |
| | <code> |
| | OrderSubmit { |
| | UserId = "efda0709-af12-4b65-8971-5089edb4aaf0", |
| | AccountId = "448c9ddd-6a50-4852-85ea-aad3b6d60620", |
| | MarketId = "XCME_C ZC (H25)", |
| | Orders = [ |
| | { |
| | PriceType = PriceType.Flatten |
| | } |
| | ] |
| | } |
| | </code> |
| | |
| | <bootnote> |
| | The Flatten Position order automatically determines the correct side (Buy/Sell) and volume based on the current position. Clip size limits are ignored to ensure the entire position is closed. |
| | </bootnote> |
| | |
| | |
| | ===== Order Status Summary Messages Reference ===== |
| | |
| | When displaying order status to end users, combining the ''OrderStatus'' and <del>OrderChange</del> fields provides more meaningful feedback than either field alone. The following table maps these field combinations to user-friendly status messages. |
| | |
| | ^ Order Status ^ Order Change ^ Status Summary Message ^ Notes ^ |
| | | **Finished States** |||| |
| | | Finished | ''PullFailed'', ''PullRejected'', ''PullRiskFailed'' | "Cancel Failed" | Includes StatusDetail | |
| | | Finished | ''PullSuccess'', ''PullSent'', ''PullRiskSuccess'' //(with fills)// | "Completed, Partial Fill" | When TotalFillVolume ≠ 0 | |
| | | Finished | ''PullSuccess'', ''PullSent'', ''PullRiskSuccess'' //(no fills)// | "Canceled" | When TotalFillVolume = 0 | |
| | | Finished | ''TradeCompleted'' //(partial)// | "Completed, Partial Fill" | When TotalFillVolume < CurrentVolume | |
| | | Finished | ''TradeCompleted'' //(full)// | "Completed, Filled" | When TotalFillVolume = CurrentVolume | |
| | | Finished | ''StatusRequestFailed'', ''StatusRequestRejected'', ''StatusRequestRiskFailed'', ''StatusRequestRiskSuccess'', ''StatusRequestSent'', ''StatusRequestSuccess'', ''TagFailed'', ''TagSuccess'' //(partial)// | "Completed, Partial Fill, {OrderChange}" | When TotalFillVolume < CurrentVolume | |
| | | Finished | ''StatusRequestFailed'', ''StatusRequestRejected'', ''StatusRequestRiskFailed'', ''StatusRequestRiskSuccess'', ''StatusRequestSent'', ''StatusRequestSuccess'', ''TagFailed'', ''TagSuccess'' //(full)// | "Completed, Filled, {OrderChange}" | When TotalFillVolume = CurrentVolume | |
| | | Finished | ''RevisionRiskFailed'' //(filled)// | "Completed, Filled, {OrderChange}" | When TotalFillVolume = CurrentVolume | |
| | | Finished | ''TradeBusted'' | "Completed, {OrderChange}" | | |
| | | Finished | ''SubmissionSuccess'' //(RFQ only)// | "Completed" | Only for PriceType.RFQ | |
| | | **Rejected States** |||| |
| | | Rejected | ''StatusRequestFailed'', ''StatusRequestRejected'', ''StatusRequestRiskFailed'', ''StatusRequestRiskSuccess'', ''StatusRequestSent'', ''StatusRequestSuccess'' | "Rejected, {OrderChange}" | Includes StatusDetail | |
| | | Rejected | //(Other changes)// | "Rejected" | Includes StatusDetail | |
| | | **Working States** |||| |
| | | Working | ''PullRiskSuccess'', ''PullSent'', ''PullSuccess'' | "Canceling..." | | |
| | | Working | ''RevisionSent'', ''RevisionRiskSuccess'' | "Revising..." | | |
| | | Working | ''RevisionSuccess'' | "Working, Revised" | | |
| | | Working | ''RevisionFailed'', ''RevisionRejected'', ''RevisionRiskFailed'' | "Working, Revision Failed" | Includes StatusDetail | |
| | | Working | ''PullFailed'', ''PullRejected'', ''PullRiskFailed'' | "Working, Cancel Failed" | Includes StatusDetail | |
| | | Working | ''Trade'', ''SubmissionSent'', ''SubmissionSuccess'', ''SubmissionRiskSuccess'' | "Working..." | | |
| | | Working | ''Handover'' | "Working, Handover" | | |
| | | Working | ''Rollover'' | "Working, Rollover" | | |
| | | Working | ''StatusRequestFailed'', ''StatusRequestRejected'', ''StatusRequestRiskFailed'', ''StatusRequestRiskSuccess'', ''StatusRequestSent'', ''StatusRequestSuccess'', ''TagFailed'', ''TagSuccess'' | "Working, {OrderChange}" | | |
| | | Working | //(Any change with fills)// | "{Base Message}, Partial Fill" | Appended when TotalFillVolume > 0 | |
| | | **None (Pre-Submission) States** |||| |
| | | None | None | "Submitting..." | | |
| | | None | ''SubmissionRiskSuccess'' | "Submitting to Exchange" | | |
| | | None | ''SubmissionRejected'', ''SubmissionRiskRejected'' | "Submission Rejected" | | |
| | | None | ''SubmissionFailed'' | "Submission Failed" | | |
| | | None | ''SubmissionSent'', ''SubmissionSuccess'' | "Submission Sent" | | |
| | | **Held States** |||| |
| | | Held | //(Any)// | "Held on Server..." (Real Market) \\ "Held on Client..." (Non-Real Market) | | |