> For the complete documentation index, see [llms.txt](https://guide.traderevolution.com/traderevolution-api/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://guide.traderevolution.com/traderevolution-api/traderevolution-apis/fix-api/application-level-messages-trading.md).

# Application level messages (Trading)

### New order single

This message is used to submit a new order to the TraderEvolution servers. Give-up and order routing can be done on the application servers by having the administrator set up users and accounts to do so.

The application server will respond with either an Execution Report or a Reject (Session) message. A Reject message is only issued if the message fails session level validation, such as invalid tag values. If an order fails business validation, an Execution Report will be issued with an appropriate status and error text.

<table><thead><tr><th width="155">Tag</th><th>Field Name</th><th width="113">Required</th><th>Comments</th></tr></thead><tbody><tr><td></td><td><em>Standard Header</em></td><td><em>Y</em></td><td><em>MsgType = D</em></td></tr><tr><td>11</td><td>ClOrdID</td><td>Y</td><td>Client identifier of the order (Should be only integer numbers)<br>Max length is 32 characters</td></tr><tr><td>73</td><td>NoOrders</td><td>N</td><td>Optional. Used for closing position or adding SL/TP. If specified, must be the value of Order ID supplied by the server in the execution report</td></tr><tr><td>37</td><td>OrderID</td><td>N</td><td>OrderID</td></tr><tr><td>1</td><td>Account</td><td>Y</td><td>The trader account</td></tr><tr><td>21</td><td>HandlInst</td><td>Y</td><td>Set to 1, otherwise will cause rejection</td></tr><tr><td>55</td><td>Symbol</td><td>Y</td><td>Instrument name</td></tr><tr><td>100</td><td>ExDestination</td><td>N</td><td>Defines route identifier. Available values: Not specified or 100 – instrument is identified by message; 101 – instrument is identified by the tag set SecurityID(48) + ExDestination(100)</td></tr><tr><td>48</td><td>SecurityID</td><td>N</td><td>Tradable instrument ID. If set, then instrument search is performed by the specified ID instead of Symbol (55) field</td></tr><tr><td>200</td><td>MaturityMonthYear</td><td>N</td><td>Reserved. Required for Options: format CCYYMM</td></tr><tr><td>205</td><td>MaturityDay</td><td>N</td><td>Reserved. Required for Options</td></tr><tr><td>201</td><td>PutOrCall</td><td>N</td><td>Reserved. Required for Options</td></tr><tr><td>202</td><td>StrikePrice</td><td>N</td><td>Reserved. Required for Options</td></tr><tr><td>207</td><td>SecurityExchange</td><td>Y</td><td>Route name</td></tr><tr><td>54</td><td>Side</td><td>Y</td><td>Only 1 (buy) or 2 (sell) supported</td></tr><tr><td>60</td><td>TransactTime</td><td>Y</td><td>Time of this order. Time can be set in the past if OrdType(40)=Manual</td></tr><tr><td>38</td><td>OrderQty</td><td>N</td><td>Required: order amount. One of tags 38 or 152 must be used at a time</td></tr><tr><td>152</td><td>CashOrderQty</td><td>N</td><td>Order amount in cash (currency). One of tags 38 or 152 must be used at a time. For Market orders only. This value should be transmitted in USD, otherwise it will be converted to USD using the cross course</td></tr><tr><td>40</td><td>OrdType</td><td>Y</td><td>Varies by exchange. Types supported by application server: 0 – manual; 1 – market; 2 – limit; 3 – stop</td></tr><tr><td>16555</td><td>CrossPrice</td><td>N</td><td>Cross price. It can be used if OrdType(40)=Manual. If not set, that means the current cross price will be applied</td></tr><tr><td>20120</td><td>CommissionType</td><td>N</td><td>Commission type. It can be used if OrdType(40)=Manual. Possible values: 0 - apply commission from commission plan settings. Default value; 1 - commission plan settings are not applied</td></tr><tr><td>20119</td><td>SpreadType</td><td>N</td><td>Defines spread value that can be applied. It can be used if OrdType(40)=Manual. Possible values: 0 - place order without spread. Default value; 1 - place order considering spread plan settings; 2 - set spread value</td></tr><tr><td>20118</td><td>SpreadMeasure</td><td>N</td><td>Defines spread measure, if SpreadType(20119)=2. Can be used, if OrdType(40)=Manual and SpreadType(20119)=2. Possible values: 0 – ticks. Default value; 1 – price; 2 – basis points</td></tr><tr><td>20116</td><td>SpreadValue</td><td>N</td><td>Spread value. Can be used, if OrdType(40)=Manual and SpreadType(20119)=2</td></tr><tr><td>20117</td><td>ExecutionVenue</td><td>N</td><td>Execution venue. It can be used if OrdType(40)=Manual. If not set, that means the execution venue is not set for the route</td></tr><tr><td>20146</td><td>UserComment</td><td>N</td><td>Any useful information on the order</td></tr><tr><td>20161</td><td>OvernightExecution</td><td>N</td><td><p>Possible values are: 0 and 1. </p><p>If 1 the order can be placed and filled during overnight trading.</p></td></tr><tr><td>44</td><td>Price</td><td>N</td><td>Order price. For market orders price is indicative and not required</td></tr><tr><td>99</td><td>StopPx</td><td>N</td><td>Order price for stop orders. Note: Stop prices for Stop orders in Execution report will be reported in the Price (44) field</td></tr><tr><td>15</td><td>Currency</td><td>N</td><td>Not supported. Always in primary currency</td></tr><tr><td>117</td><td>QuoteID</td><td>N</td><td>Reserved</td></tr><tr><td>59</td><td>TimeInForce</td><td>N</td><td>Varies by exchange. Absence of this field indicates Day order. Types supported by application server: 0 – Day; 1 – Good Till Cancel (GTC); 3 – Immediate or cancel (IOC); 4 – Fill or Kill (FOK); 6 – Good Till Date (GTD)</td></tr><tr><td>432</td><td>ExpireDate</td><td>N</td><td>Reserved GTD orders</td></tr><tr><td>58</td><td>Text</td><td>N</td><td>User comment for order</td></tr><tr><td>583</td><td>ClOrdLinkID</td><td>N</td><td>OrderID. Cannot be used together with 73 and 37 tags for close orders</td></tr><tr><td>77</td><td>OpenClose</td><td>N</td><td>C for close orders (to add SL/TP or to close position)</td></tr><tr><td>20017</td><td>ProductType</td><td>N</td><td>Defines the product type. Available values: 0 – General; 1 – Intraday; 2 – Delivery</td></tr><tr><td></td><td><em>Standard Trailer</em></td><td><em>Y</em></td><td></td></tr></tbody></table>

Note, that if you have specified an SL/TP price, you can modify this order (cancel, modify).

**Open and Close indicator**

The *OpenClose* field is used in for trades to indicate whether the trade is opening or closing (close position, add SL/TP to position or Order.

For close order OrderID tag must be the value TraderEvolution Order ID. For mutual close must be sent NoOrders of OrderID of all orders for mutual close.

Example Position Close:

8=FIX.4.4|9=172|35=D|34=18|49=alexm1|56=TEORDER|52=20131202-12:30:39.640|38=1000|40=1|11=11|21=1|55=EUR/USD|54=1|60=20131202-12:30:39.639|59=0|1=alexm1|207=LMAX|44=2|73=1|37=8415707|77=C|10=180|

Example Open Position:

8=FIX.4.4|9=145|35=D|34=5|49=alexm1|56=TEORDER|52=20131202-12:34:38.926|38=1000|40=1|11=13|21=1|55=EUR/USD|54=1|60=20131202-12:34:38.926|59=0|1=alexm1|207=LMAX|10=214|

**SL/TP orders**

If you need to set SL/TP orders, use Limit/Strop order (40=2 or 40=3) and NoOrders tag 73 with OrderID field 37 and ClOrdLinkID field 583 and Posiiton Effect 77=C for bounded order/position.

Example Adding TP for position:

8=FIX.4.4|9=177|35=D|34=2|49=alexm1|56=TEORDER|52=20131202-12:33:53.927|38=1000|40=2|11=12|21=1|55=EUR/USD|54=1|60=20131202-12:33:53.926|59=0|1=alexm1|207=LMAX|44=1.50000|73=1|37=8415673|77=C|10=1 73|

### Order cancel/replace

The Order Cancel/Replace is sent by the client application to amend an order that has a working status. It may **not** be used to re-open an order by increasing the volume of a completed order. Part-filled orders may be amended, but not fully filled orders. Attempts to do so will result in a Cancel Reject with “no such order”.

If an Order Cancel/Replace is accepted by the business rules but rejected downstream (for example, if the exchange connection is disabled) the system will deliver an Execution Report for the pending state followed by a Cancel Reject.

<table><thead><tr><th width="143">Tag</th><th width="215">Field Name</th><th width="105">Required</th><th>Comments</th></tr></thead><tbody><tr><td></td><td><em>Standard Header</em></td><td><em>Y</em></td><td><em>MsgType = G</em></td></tr><tr><td>37</td><td>OrderID</td><td>Y</td><td>Order ID</td></tr><tr><td>11</td><td>ClOrdID</td><td>Y</td><td>Unique identifier of replacement order (will be used in the Cancel Reject message if the replacement request is rejected)<br>Max length is 32 characters</td></tr><tr><td>1</td><td>Account</td><td>Y</td><td>User account field is required. But it is not validating, since you can’t change the account for the order</td></tr><tr><td>21</td><td>HandlInst</td><td>Y</td><td>Set to 1, otherwise will cause rejection</td></tr><tr><td>200</td><td>MaturityMonthYear</td><td>N</td><td>Optional: match original order if supplied</td></tr><tr><td>205</td><td>MaturityDay</td><td>N</td><td>Optional: match original order if supplied</td></tr><tr><td>201</td><td>PutOrCall</td><td>N</td><td>Optional: match original order if supplied</td></tr><tr><td>202</td><td>StrikePrice</td><td>N</td><td>Optional: match original order if supplied</td></tr><tr><td>207</td><td>SecurityExchange</td><td>N</td><td>Optional. If specified, then field is not validating, because you can’t change SecurityExchange for an already existing order</td></tr><tr><td>54</td><td>Side</td><td>Y</td><td>Must match original order</td></tr><tr><td>60</td><td>TransactTime</td><td>Y</td><td>Time this order request was initiated/released by the trader or trading system</td></tr><tr><td>38</td><td>OrderQty</td><td>Y</td><td>Must match original order</td></tr><tr><td>152</td><td>CashOrderQty</td><td>N</td><td>Not supported</td></tr><tr><td>40</td><td>OrdType</td><td>Y</td><td>Must match original order</td></tr><tr><td>44</td><td>Price</td><td>N</td><td>Optional: may specify new price</td></tr><tr><td>99</td><td>StopPx</td><td>N</td><td>Optional: may specify new stop price</td></tr><tr><td>59</td><td>TimeInForce</td><td>N</td><td>Optional. Supported only by specific Liquidity Providers. If tag is not specified, then the system will use Day as default</td></tr><tr><td>168</td><td>EffectiveTime</td><td>N</td><td>Not supported</td></tr><tr><td>432</td><td>ExpireDate</td><td>N</td><td>Optional: match original order if supplied</td></tr><tr><td>77</td><td>OpenClose</td><td>N</td><td>Optional: Must match original order</td></tr><tr><td></td><td><em>Standard Trailer</em></td><td><em>Y</em></td><td></td></tr></tbody></table>

### Order cancel

The Order Cancel is sent by the client application to cancel all the remaining volume of a working order. To reduce the volume of an order, you should use Order Cancel/Replace.

<table><thead><tr><th width="153">Tag</th><th>Field Name</th><th width="112">Required</th><th>Comments</th></tr></thead><tbody><tr><td></td><td><em>Standard Header</em></td><td><em>Y</em></td><td><em>MsgType = F</em></td></tr><tr><td>37</td><td>OrderID</td><td>Y</td><td>ClOrdID of the order to cancel</td></tr><tr><td>11</td><td>ClOrdID</td><td>Y</td><td>Unique identifier of cancel request (will be used in the Cancel Reject message if the replacement request is rejected)<br>Max length is 32 characters</td></tr><tr><td>1</td><td>Account</td><td>Y</td><td>Required: User account</td></tr><tr><td>48</td><td>SecurityID</td><td>N</td><td>Optional</td></tr><tr><td>167</td><td>SecurityType</td><td>N</td><td>Ignored</td></tr><tr><td>200</td><td>MaturityMonthYear</td><td>N</td><td>Ignored</td></tr><tr><td>205</td><td>MaturityDay</td><td>N</td><td>Ignored</td></tr><tr><td>201</td><td>PutOrCall</td><td>N</td><td>Ignored</td></tr><tr><td>202</td><td>StrikePrice</td><td>N</td><td>Ignored</td></tr><tr><td>207</td><td>SecurityExchange</td><td>N</td><td>Ignored</td></tr><tr><td>54</td><td>Side</td><td>N</td><td>Must match original order</td></tr><tr><td>60</td><td>TransactTime</td><td>Y</td><td>Time this order request was initiated/released by the trader or trading system</td></tr><tr><td>38</td><td>OrderQty</td><td>N</td><td>Ignored</td></tr><tr><td></td><td><em>Standard Trailer</em></td><td><em>Y</em></td><td></td></tr></tbody></table>

Notes: The *OrderID* field is requred and the Cancel will be not processed without this field present. This value is an Order ID.

### Execution report

The execution report message is sent by the server to your application for the following reasons:

* Confirm receipt of a new order
* Confirm changes or cancels to an existing order
* Supply unsolicited order state changes
* Relay fill information
* Actual orders state (on login) or as response for Order Status request.
* Reject new orders

The *OrdStatus* and *ExecType* fields are important for determining the sequence of events that took place. Some of these scenarios are discussed in further detail below.

<table><thead><tr><th width="112">Tag</th><th width="238">Field Name</th><th width="120">Required</th><th>Comments</th></tr></thead><tbody><tr><td></td><td><em>Standard Header</em></td><td><em>Y</em></td><td><em>MsgType = 8 PossResend=Y for Request for Positions</em></td></tr><tr><td>37</td><td>OrderID</td><td>Y</td><td>Order identifier</td></tr><tr><td>198</td><td>SecondaryOrderID</td><td>N</td><td>Not supported</td></tr><tr><td>11</td><td>ClOrdID</td><td>N</td><td>Tag 11 you are receiving only with first message 150=A (pending new). For further work should be used server orderid (tag 37).<br>Max length is 32 characters</td></tr><tr><td>17</td><td>ExecID</td><td>N</td><td>Trade identifier assigned by sell-side</td></tr><tr><td>19</td><td>ExecRefID</td><td>N</td><td>Not supported</td></tr><tr><td>150</td><td>ExecType</td><td>Y</td><td>Not all states are supported.</td></tr><tr><td>39</td><td>OrdStatus</td><td>Y</td><td>Not all states are supported.</td></tr><tr><td>103</td><td>OrdRejReason</td><td>N</td><td>Not supported.</td></tr><tr><td>1</td><td>Account</td><td>N</td><td>User account</td></tr><tr><td>55</td><td>Symbol</td><td>Y</td><td>Instrument name</td></tr><tr><td>48</td><td>SecurityID</td><td>N</td><td>Tradable instrument ID</td></tr><tr><td>200</td><td>MaturityMonthYear</td><td>N</td><td>For Options: format CCYYMM</td></tr><tr><td>205</td><td>MaturityDay</td><td>N</td><td>For Options</td></tr><tr><td>201</td><td>PutOrCall</td><td>N</td><td>For Options</td></tr><tr><td>202</td><td>StrikePrice</td><td>N</td><td>For Options</td></tr><tr><td>207</td><td>SecurityExchange</td><td>N</td><td>Optional: TraderEvolution route name</td></tr><tr><td>54</td><td>Side</td><td>Y</td><td>1 (buy) or 2 (sell) only</td></tr><tr><td>38</td><td>OrderQty</td><td>N</td><td>Order volume</td></tr><tr><td>40</td><td>OrdType</td><td>N</td><td>As stated on the order</td></tr><tr><td>44</td><td>Price</td><td>N</td><td>As stated on the order</td></tr><tr><td>99</td><td>StopPx</td><td>N</td><td>As status on the order</td></tr><tr><td>59</td><td>TimeInForce</td><td>N</td><td>As stated on the order</td></tr><tr><td>432</td><td>ExpireDate</td><td>N</td><td>As stated on the order</td></tr><tr><td>32</td><td>LastQty</td><td>N</td><td>Trade amount bought/sold on this (last) fill.</td></tr><tr><td>60</td><td>TransactTime</td><td>N</td><td>Date of order execution</td></tr><tr><td>64</td><td>SettlDate</td><td>N</td><td>Date of settlement</td></tr><tr><td>31</td><td>LastPx</td><td>N</td><td>Price of this fill, zero for reversal</td></tr><tr><td>151</td><td>LeavesQty</td><td>Y</td><td>Volume still working</td></tr><tr><td>14</td><td>CumQty</td><td>Y</td><td>Volume filled so far</td></tr><tr><td>6</td><td>AvgPx</td><td>N</td><td>Decimal average price (accuracy limited)</td></tr><tr><td>21</td><td>HandlInst</td><td>N</td><td>Not returned (is set to 1 on order)</td></tr><tr><td>77</td><td>OpenClose</td><td>N</td><td>Indicate open or close</td></tr><tr><td>58</td><td>Text</td><td>N</td><td>Contains rejection reason text</td></tr><tr><td>527</td><td>SecondaryExecID</td><td>N</td><td>ID of open position</td></tr><tr><td>20017</td><td>ProductType</td><td>N</td><td>Defines the product type. Available values: 0 – General; 1 – Intraday; 2 – Delivery</td></tr><tr><td>20146</td><td>UserComment</td><td>N</td><td>Any useful information on the order</td></tr><tr><td>100</td><td>ExDestination</td><td>N</td><td>Defines route identifier</td></tr><tr><td></td><td><em>Standard Trailer</em></td><td><em>Y</em></td><td></td></tr></tbody></table>

ExecType I = Order Status used in execution report messages that were sent for update position/order status or as response on Order Status request.

### Order status request

The order status request can be used to get the list of opened positions or active orders.

Note, that during startup (after Logon) the system sends the list of active orders automatically.

<table><thead><tr><th width="121">Tag</th><th>Field Name</th><th width="110">Required</th><th>Comments</th></tr></thead><tbody><tr><td></td><td><em>Standard Header</em></td><td><em>Y</em></td><td><em>MsgType=H</em></td></tr><tr><td>790</td><td>OrdStatusReqID</td><td>Y</td><td></td></tr><tr><td>55</td><td>Symbol</td><td>Y</td><td>TraderEvolution Instrument Name</td></tr><tr><td>11</td><td>ClOrdID</td><td>N</td><td>Unique identifier for Order as assigned by the buy-side. If specified, then will be used for searching the order.<br>Max length is 32 characters</td></tr><tr><td>54</td><td>Side</td><td>N</td><td>1 = Buy, 2 = Sell</td></tr><tr><td>37</td><td>OrderId</td><td>N</td><td>TraderEvolution OrderID</td></tr><tr><td>48</td><td>SecurityID</td><td>N</td><td>Tradable instrument ID. If set, then instrument search will be performed by this ID instead of Symbol (55)</td></tr><tr><td>790</td><td>OrdStatusReqID</td><td>N</td><td></td></tr><tr><td>20000</td><td>IntField</td><td>Y</td><td>1 = State of opened orders, 2 = State of opened positions</td></tr><tr><td>100</td><td>ExDestination</td><td>N</td><td>Defines route identifier. Possible values:<br>• <em>Not specified</em> or <em>100</em> – instrument is identified from a message;<br>• <em>101</em> – instrument is identified by the tag set <em>SecurityID(48) + ExDestination(100)</em></td></tr><tr><td>1</td><td>Account</td><td>N</td><td>TraderEvolution account name</td></tr><tr><td></td><td><em>Standard Trailer</em></td><td><em>Y</em></td><td></td></tr></tbody></table>

### Order cancel reject

The Order Cancel Reject is delivered by the server when a Cancel or Cancel/Replace is not accepted by the application server. If the server accepted the Cancel or Cancel/Replace but the trading system rejected it, then this message is preceded by an Execution Report for the pending status.

<table><thead><tr><th width="110">Tag</th><th>Field Name</th><th width="107">Required</th><th>Comments</th></tr></thead><tbody><tr><td></td><td><em>Standard Header</em></td><td><em>Y</em></td><td><em>MsgType = 9</em></td></tr><tr><td>37</td><td>OrderID</td><td>Y</td><td>Order ID</td></tr><tr><td>198</td><td>SecondaryOrderID</td><td>N</td><td>Not supported</td></tr><tr><td>11</td><td>ClOrdID</td><td>Y</td><td>As set in the Cancel or Cancel/Replace<br>Max length is 32 characters</td></tr><tr><td>41</td><td>OrigClOrdID</td><td>Y</td><td>ClOrdID which could not be cancelled</td></tr><tr><td>39</td><td>OrdStatus</td><td>Y</td><td>Current order status</td></tr><tr><td>1</td><td>Account</td><td>N</td><td>User account</td></tr><tr><td>60</td><td>TransactTime</td><td>N</td><td>Not supported</td></tr><tr><td>434</td><td>CxlRejResponseTo</td><td>Y</td><td>Either 1 (Cancel) or 2 (Cancel/Replace)</td></tr><tr><td>58</td><td>Text</td><td>N</td><td>Text description of rejection</td></tr><tr><td>354</td><td>EncodedTextLen</td><td>N</td><td>Not supported</td></tr><tr><td>355</td><td>EncodedText</td><td>N</td><td>Not supported</td></tr><tr><td></td><td><em>Standard Trailer</em></td><td><em>Y</em></td><td></td></tr></tbody></table>

### Trade capture report request

<table><thead><tr><th width="96">Tag</th><th>Field Name</th><th width="113">Required</th><th>Comments</th></tr></thead><tbody><tr><td></td><td><em>Standard Header</em></td><td><em>Y</em></td><td><em>MsgType = AD</em></td></tr><tr><td>568</td><td>TradeRequestID</td><td>Y</td><td>Unique request id</td></tr><tr><td>569</td><td>TradeRequestType</td><td>Y</td><td>Must be 0</td></tr><tr><td>37</td><td>OrderID</td><td>N</td><td>Order ID</td></tr><tr><td>55</td><td>Symbol</td><td>N</td><td>Instrument Name</td></tr><tr><td>207</td><td>SecurityExchange</td><td>N</td><td>Route name</td></tr><tr><td>100</td><td>ExDestination</td><td>N</td><td>Defines how instrument will be identified on the server side. Possible values:<br>• <em>Not specified</em> or <em>100</em> – instrument is identified from a message;<br>• <em>101</em> – instrument is identified by the tag set <em>SecurityID(48) + ExDestination(100)</em></td></tr><tr><td>48</td><td>SecurityID</td><td>N</td><td>Tradable instrument ID</td></tr><tr><td>580</td><td>NoDate</td><td>N</td><td>Must be 2. Range of dates (between NoDate1 and NoDate2)</td></tr><tr><td>75</td><td>TradeDate</td><td>Y</td><td></td></tr><tr><td>60</td><td>TransactTime</td><td>Y</td><td>Time the trade was created</td></tr><tr><td></td><td><em>Standard Trailer</em></td><td><em>Y</em></td><td></td></tr></tbody></table>

### Trade capture report

<table><thead><tr><th width="137">Tag</th><th>Field Name</th><th width="95">Required</th><th>Comments</th></tr></thead><tbody><tr><td></td><td><em>Standard Header</em></td><td><em>Y</em></td><td><em>MsgType = AE</em></td></tr><tr><td>568</td><td>TradeReportID</td><td>Y</td><td>Unique report ID</td></tr><tr><td>569</td><td>TradeRequestID</td><td>C</td><td>ID of the request</td></tr><tr><td>912</td><td>LastRptRequested</td><td>N</td><td>Indicates that this is the last report which will be returned as a result of the request. N <em>– not last,</em> <em>Y – last.</em> </td></tr><tr><td>55</td><td>Symbol</td><td>Y</td><td>Instrument Name</td></tr><tr><td>207</td><td>SecurityExchange</td><td>Y</td><td>Route name</td></tr><tr><td>570</td><td>PreviouslyReported</td><td>N</td><td>Not supported.</td></tr><tr><td>32</td><td>LastQty</td><td>Y</td><td>Trade amount bought/sold on this (last) fill.</td></tr><tr><td>31</td><td>LastPx</td><td>Y</td><td>Trade Price</td></tr><tr><td>100</td><td>ExDestination</td><td>N</td><td>Defines route identifier</td></tr><tr><td>48</td><td>SecurityID</td><td>N</td><td>Tradeable instrument ID</td></tr><tr><td>75</td><td>TradeDate</td><td>Y</td><td>Not supported</td></tr><tr><td>60</td><td>TransactTime</td><td>Y</td><td>Time the trade was created</td></tr><tr><td>552</td><td>NoSides</td><td>Y</td><td>Number of sides</td></tr><tr><td>               54</td><td>Side</td><td>Y</td><td>Order side. <em>1 - BUY</em>; <em>2 - SELL</em></td></tr><tr><td>               37</td><td>OrderID</td><td>Y</td><td>Unique order id</td></tr><tr><td>               1</td><td>Account</td><td>Y</td><td>Account name</td></tr><tr><td>               119</td><td>SettlCurrA</td><td>Y</td><td>LastPx*LastQty</td></tr><tr><td>               198</td><td>Secondary</td><td>N</td><td>Counter Order ID</td></tr><tr><td>64</td><td>SettlDate</td><td>Y</td><td>date of trade settlement</td></tr><tr><td></td><td><em>Standard Trailer</em></td><td><em>Y</em></td><td></td></tr></tbody></table>

### Close position

The Close position message is delivered by the server when a position is closed.

<table><thead><tr><th width="142">Tag</th><th>Field Name</th><th width="134">Required</th><th>Comments</th></tr></thead><tbody><tr><td></td><td><em>Standard Header</em></td><td><em>Y</em></td><td><em>MsgType = CP</em></td></tr><tr><td>7001</td><td>AccountID</td><td>Y</td><td>Account ID</td></tr><tr><td>60</td><td>TransactTime</td><td>Y</td><td>Time of transaction</td></tr><tr><td>44</td><td>Price</td><td>Y</td><td>Price of transaction</td></tr><tr><td>20026</td><td>SuperPositionId</td><td>Y</td><td>ID of superposition</td></tr><tr><td>20027</td><td>PositionId</td><td>Y</td><td>ID of position</td></tr><tr><td>7016</td><td>Commission</td><td>Y</td><td>Commission</td></tr><tr><td></td><td><em>Standard trailer</em></td><td><em>Y</em></td><td></td></tr></tbody></table>

### Account operation

The Account operation message is delivered by the server when account operation is made.

<table><thead><tr><th width="129">Tag</th><th>Field Name</th><th width="127">Required</th><th>Comments</th></tr></thead><tbody><tr><td></td><td><em>Standard Header</em></td><td><em>Y</em></td><td><em>MsgType = AOP</em></td></tr><tr><td>1</td><td>Account</td><td>Y</td><td>Account name</td></tr><tr><td>7035</td><td>Amount</td><td>Y</td><td>Operation amount</td></tr><tr><td>15</td><td>Currency</td><td>Y</td><td>Operation currency</td></tr><tr><td>20021</td><td>AccountOperationId</td><td>Y</td><td>Account operation ID</td></tr><tr><td>20023</td><td>OperationType</td><td>Y</td><td>Account operation type. Possible values: 1 Trading, 2 Deposit, 3 Withdraw, 4 Brokerage, 5 Swap, 6 MinFeeAdjEquity, 7 Blocking, 8 Unblocking, 9 ManufacturedDividends, 10 Interest, 12 Adjustment, 13 Dividends, 14 Stock, 15 AccruedInterest, 16 Subscribe, 17 Transfer, 18 Spread, 19 Credit, 22 DeliveredForward, 23 FundTransfer, 24 DWT, 25 ValueAddedTax, 26 Exchange, 27 SecuritiesTransferTax, 28 SettlementFee, 29 InvestorProtectionLevy, 30 Delivery, 31 Maker, 32 Taker, 33 WithdrawalFee, 34 Markup, 35 PortfolioManagementFee, 36 PortfolioManagementMinFeeAdj, 40 ClearingVMtransfer, 41 Level1Charging, 42 Level2Charging, 43 Level3Charging, 44 DelayedCharging, 45 NewsCharging, 46 MamPerfomanceFee, 47 MamManagementFee, 48 Collateral, 88 InterestOnCash, 90 InterestOnMargin, 91 InterestOnMarginAndUnsettledCash, 92 InterestOnAvailableFunds, 93 InterestOnAvailableFundsPlusUnsettledCash, 94 OpenOptionPremium, 95 CloseOptionPremium, 96 TransferFee, 97 FixedFee, 98 Custodial, 99 ProductFee, 100 BalanceCredit, 101 BalanceDebit, 102 AccruedDividends, 103 DividendsTax, 104 PrimeBroker, 105 CloseTminus1OptionPremium, 106 Funding, 107 FundingMarkup, 108 WhiteLabel</td></tr><tr><td>60</td><td>TransactTime</td><td>Y</td><td>Time of transaction</td></tr><tr><td>20024</td><td>CreationDate</td><td>Y</td><td>Date/Time of creation</td></tr><tr><td>20025</td><td>ValueDate</td><td>Y</td><td>Date and time when account operation was valuated</td></tr><tr><td>20022</td><td>CounterAccountOperationId</td><td>N</td><td>ID of the counter-account operation, if required</td></tr><tr><td></td><td><em>Standard trailer</em></td><td><em>Y</em></td><td></td></tr></tbody></table>
