{"id":8077,"date":"2025-09-04T23:21:57","date_gmt":"2025-09-05T04:21:57","guid":{"rendered":"https:\/\/librarytestdev.wpenginepowered.com\/?post_type=doc&#038;p=8077"},"modified":"2025-09-04T23:23:51","modified_gmt":"2025-09-05T04:23:51","slug":"subscribing-to-update-events","status":"publish","type":"doc","link":"https:\/\/library-test.tradingtechnologies.com\/apis\/tt-net-sdk\/working-with-orders-and-fills-tt-net-sdk\/handling-trade-subscriptions\/subscribing-to-update-events\/","title":{"rendered":"Subscribing to update events"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">After a&nbsp;<a href=\"\/tt-net-sdk\/api\/tt_net_sdk.TradeSubscription.html\">TradeSubscription<\/a>&nbsp;instance has been initialized, any change in the orders that are contained within it will result in an update event being fired.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"supported-update-events\"><a href=\"\/tt-net-sdk\/articles\/of-update-events.html#supported-update-events\"><\/a>Supported update events<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A&nbsp;<a href=\"\/tt-net-sdk\/api\/tt_net_sdk.TradeSubscription.html\">TradeSubscription<\/a>&nbsp;object fires the following events when the status its orders and fills are changed.<\/p>\n\n\n<?xml encoding=\"utf-8\" ?><figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Event<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><a href=\"\/tt-net-sdk\/api\/tt_net_sdk.TradeSubscription.html#tt_net_sdk_TradeSubscription_OrderAdded\">OrderAdded<\/a><\/td><td>Fired when an acknowledgement is received from an exchange for a new order that was submitted<\/td><\/tr><tr><td><a href=\"\/tt-net-sdk\/api\/tt_net_sdk.TradeSubscription.html#tt_net_sdk_TradeSubscription_OrderDeleted\">OrderDeleted<\/a><\/td><td>Fired when an acknowledgement is received from an exchange for a cancellation of a working order<\/td><\/tr><tr><td><a href=\"\/tt-net-sdk\/api\/tt_net_sdk.TradeSubscription.html#tt_net_sdk_TradeSubscription_OrderFilled\">OrderFilled<\/a><\/td><td>Fired when an acknowledgement is received from an exchange for a fill of a working order<\/td><\/tr><tr><td><a href=\"\/tt-net-sdk\/api\/tt_net_sdk.TradeSubscription.html#tt_net_sdk_TradeSubscription_OrderPendingAction\">OrderPendingAction<\/a><\/td><td>Fired when an action is pending for an order<\/td><\/tr><tr><td><a href=\"\/tt-net-sdk\/api\/tt_net_sdk.TradeSubscription.html#tt_net_sdk_TradeSubscription_OrderRejected\">OrderRejected<\/a><\/td><td>Fired when a rejection is received from an exchange for either an attempted change of a working order or the submission of a new order<\/td><\/tr><tr><td><a href=\"\/tt-net-sdk\/api\/tt_net_sdk.TradeSubscription.html#tt_net_sdk_TradeSubscription_OrderStatusUnknown\">OrderStatusUnknown<\/a><\/td><td>Fired when an acknowledgement is received from an exchange for a new order<\/td><\/tr><tr><td><a href=\"\/tt-net-sdk\/api\/tt_net_sdk.TradeSubscription.html#tt_net_sdk_TradeSubscription_OrderTimeout\">OrderTimeout<\/a><\/td><td>Fired when an acknowledgement is received from an exchange for a new order<\/td><\/tr><tr><td><a href=\"\/tt-net-sdk\/api\/tt_net_sdk.TradeSubscription.html#tt_net_sdk_TradeSubscription_OrderUpdated\">OrderUpdated<\/a><\/td><td>Fired when an acknowledgement is received from an exchange for a change of a working order<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"subscribing-for-update-events\"><a href=\"\/tt-net-sdk\/articles\/of-update-events.html#subscribing-for-update-events\"><\/a>Subscribing for update events<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You can subscribe for update events as follows before calling the&nbsp;<a href=\"\/tt-net-sdk\/api\/tt_net_sdk.TradeSubscription.html#tt_net_sdk_TradeSubscription_Start\">Start()<\/a>&nbsp;method.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ Create a TradeSubscription to listen for update events\nm_ts = new TradeSubscription(t_net_sdk.Dispatcher.Current);\nm_ts.OrderAdded += new EventHandler&lt;OrderAddedEventArgs&gt;(m_ts_OrderAdded);\nm_ts.OrderDeleted += new EventHandler&lt;OrderDeletedEventArgs&gt;(m_ts_OrderDeleted);\nm_ts.OrderFilled += new EventHandler&lt;OrderFilledEventArgs&gt;(m_ts_OrderFilled);\nm_ts.OrderRejected += new EventHandler&lt;OrderRejectedEventArgs&gt;(m_ts_OrderRejected);\nm_ts.OrderUpdated += new EventHandler&lt;OrderUpdatedEventArgs&gt;(m_ts_OrderUpdated);\nm_ts.OrderStatusUnknown += new EventHandler&lt;OrderStatusUnknownEventArgs&gt;(m_ts_OrderStatusUnknown);\nm_ts.OrderTimeout += new EventHandler&lt;OrderTimeoutEventArgs&gt;(m_ts_OrderTimeout);\nm_ts.Start();\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"defining-event-handlers\"><a href=\"\/tt-net-sdk\/articles\/of-update-events.html#defining-event-handlers\"><\/a>Defining event handlers<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The following code snippet shows the structure for these event handlers.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>void m_ts_OrderAdded(object sender, OrderAddedEventArgs e)\n{\n}\nvoid m_ts_OrderDeleted(object sender, OrderDeletedEventArgs e)\n{\n}\nvoid m_ts_OrderFilled(object sender, OrderFilledEventArgs e)\n{\n}\nvoid m_ts_OrderRejected(object sender, OrderRejectedEventArgs e)\n{\n}\nvoid m_ts_OrderUpdated(object sender, OrderUpdatedEventArgs e)\n{\n}\nvoid m_ts_OrderStatusUnknown(object sender, OrderStatusUnknownEventArgs e)\n{\n}\nvoid m_ts_OrderTimeout(object sender, OrderTimeoutEventArgs e)\n{\n}<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>After a&nbsp;TradeSubscription&nbsp;instance has been initialized, any change in the orders that are contained [&hellip;]<\/p>\n","protected":false},"author":2,"template":"wp-custom-template-single-doc-tt-net-sdk","meta":{"_acf_changed":true,"footnotes":""},"docs-category":[779],"class_list":["post-8077","doc","type-doc","status-publish","hentry","docs-category-handling-trade-subscriptions"],"acf":[],"_links":{"self":[{"href":"https:\/\/library-test.tradingtechnologies.com\/ja\/wp-json\/wp\/v2\/doc\/8077","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/library-test.tradingtechnologies.com\/ja\/wp-json\/wp\/v2\/doc"}],"about":[{"href":"https:\/\/library-test.tradingtechnologies.com\/ja\/wp-json\/wp\/v2\/types\/doc"}],"author":[{"embeddable":true,"href":"https:\/\/library-test.tradingtechnologies.com\/ja\/wp-json\/wp\/v2\/users\/2"}],"version-history":[{"count":0,"href":"https:\/\/library-test.tradingtechnologies.com\/ja\/wp-json\/wp\/v2\/doc\/8077\/revisions"}],"wp:attachment":[{"href":"https:\/\/library-test.tradingtechnologies.com\/ja\/wp-json\/wp\/v2\/media?parent=8077"}],"wp:term":[{"taxonomy":"docs-category","embeddable":true,"href":"https:\/\/library-test.tradingtechnologies.com\/ja\/wp-json\/wp\/v2\/docs-category?post=8077"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}