Support Board
Date/Time: Wed, 30 Apr 2025 14:59:40 +0000
Post From: Orders Not Being Processed via DTC
[2025-04-02 18:34:21] |
User483520 - Posts: 6 |
Hello, I am developing a C++ DTC client using your DTC Protocol (version 8) to submit orders to Sierra Chart in simulation mode. While the connection and logon processes work correctly, my orders (both a standard market order and a pending stop market order—with a trigger price of 20.000 for MNQ) are not being processed by the server. I have implemented extensive logging and debugging in my client, yet the only messages I receive are a MARKET_DATA_FEED_STATUS (message type 100) and a LOGOFF (message type 5). No ORDER_UPDATE messages (message type 301) or any error/alert messages (such as types 700, 701, or 702) are received. Below is a summary of my testing and configuration: Connection and Logon: My client successfully connects to the DTC server (IP: 127.0.0.1, Port: 11099) and sends a LOGON_REQUEST with ProtocolVersion = 8. I receive a LOGON_RESPONSE with a result code of 1 (success) and the expected server name. Logon round-trip latency is minimal (approximately 1–5 ms). Order Submissions: I have implemented sending a standard market order using SUBMIT_NEW_SINGLE_ORDER (message type 208). For this order, I set Price1 and Price2 to DBL_MAX (to indicate a market order) and generate a unique ClientOrderID using a high‑resolution timestamp. I have also implemented sending a pending stop market order (using OrderType = 3) for a BUY order with a trigger price of 20.000. Both orders include all required fields: symbol (“MNQM25_FUT_CME”), exchange (“CME”), trade account (“username”), OpenOrClose flag set to TRADE_OPEN, etc. My client logs confirm that the orders are sent successfully (e.g., “Market order submitted: BUY 1.000000 contracts” and “Stop market order submitted…”). Receiver Logging: The receiver thread logs all incoming messages. Aside from a MARKET_DATA_FEED_STATUS message (type 100) and a LOGOFF message (type 5), no ORDER_UPDATE messages (type 301) or any error/alert messages (types 700, 701, 702) are received. I have also added raw hexadecimal logging for unknown message types, but nothing indicates a server-side error or rejection. Given these details, I kindly request your assistance with the following: Server Configuration: Are there any specific server-side settings (such as trading session parameters, instrument configuration, or trade account restrictions) that might cause orders to be silently ignored even when logon succeeds? Order Processing Requirements: Is there any additional requirement—especially in simulation mode—for orders to be accepted and processed? Debugging Options: Are there any additional debug or verbose logging options on the DTC server that I can enable to obtain further insight into why my orders are not being processed? Protocol or Feature Limitations: Since market data subscription is not possible via DTC with Sierra Chart, is there an alternative method to ensure the security definition for the instrument is loaded so that order submissions are accepted? I appreciate any guidance or recommendations you can provide to resolve this issue. I have verified that my client’s message structures and fields adhere to the official DTC protocol documentation. Thanks you for your assistance |