Show / Hide Table of Contents

Subscribing to update events

After a TradeSubscription instance has been initialized, any change in the orders that are contained within it will result in an update event being fired.

Supported update events

A TradeSubscription object fires the following events when the status its orders and fills are changed.

Event Description
OrderAdded Fired when an acknowledgement is received from an exchange for a new order that was submitted
OrderDeleted Fired when an acknowledgement is received from an exchange for a cancellation of a working order
OrderFilled Fired when an acknowledgement is received from an exchange for a fill of a working order
OrderPendingAction Fired when an action is pending for an order
OrderRejected 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
OrderStatusUnknown Fired when an acknowledgement is received from an exchange for a new order
OrderTimeout Fired when an acknowledgement is received from an exchange for a new order
OrderUpdated Fired when an acknowledgement is received from an exchange for a change of a working order

Subscribing for update events

You can subscribe for update events as follows before calling the Start() method.

// Create a TradeSubscription to listen for update events
m_ts = new TradeSubscription(t_net_sdk.Dispatcher.Current);
m_ts.OrderAdded += new EventHandler<OrderAddedEventArgs>(m_ts_OrderAdded);
m_ts.OrderDeleted += new EventHandler<OrderDeletedEventArgs>(m_ts_OrderDeleted);
m_ts.OrderFilled += new EventHandler<OrderFilledEventArgs>(m_ts_OrderFilled);
m_ts.OrderRejected += new EventHandler<OrderRejectedEventArgs>(m_ts_OrderRejected);
m_ts.OrderUpdated += new EventHandler<OrderUpdatedEventArgs>(m_ts_OrderUpdated);
m_ts.OrderStatusUnknown += new EventHandler<OrderStatusUnknownEventArgs>(m_ts_OrderStatusUnknown);
m_ts.OrderTimeout += new EventHandler<OrderTimeoutEventArgs>(m_ts_OrderTimeout);
m_ts.Start();

Defining event handlers

The following code snippet shows the structure for these event handlers.

void m_ts_OrderAdded(object sender, OrderAddedEventArgs e)
{
}
void m_ts_OrderDeleted(object sender, OrderDeletedEventArgs e)
{
}
void m_ts_OrderFilled(object sender, OrderFilledEventArgs e)
{
}
void m_ts_OrderRejected(object sender, OrderRejectedEventArgs e)
{
}
void m_ts_OrderUpdated(object sender, OrderUpdatedEventArgs e)
{
}
void m_ts_OrderStatusUnknown(object sender, OrderStatusUnknownEventArgs e)
{
}
void m_ts_OrderTimeout(object sender, OrderTimeoutEventArgs e)
{
}
In this article
Back to top