?> QuantXpress – Deliver high performance automated trading and connectivity solutions



Strategy Order Event


The Blitz strategy framework provides the order state change event through a callback event mechanism. The BlitzTrader OMS raised these callback event based on order state change and strategy implementation class override them to have a proper control of the order flow and position management.

Following is the event handler that are called during the order state change event:

OnOrderAccepted: Called when order is accepted by exchange. This event provides information on the exchange order ID.
 
protected override void OnOrderAccepted(IVObject ivObject, 
                                                    OrderAcceptedEventArgs orderAcceptedEventArgs)
{
    string exchangeOrderID = orderAcceptedEventArgs.ExchangeOrderID;
}
OnOrderModified: Called when active order modification request is accepted by exchange
 
protected override void OnOrderModified(IVObject ivObject, OrderModificationAcceptedEventArgs orderModificationAcceptedEventArgs)
                                        
 {
 }

OnOrderModificationRejected: Called when order modification request is rejected by exchange. This event provides the information on the rejection reason.
 
protected override void OnOrderModificationRejected(IVObject ivObject, 
                                                    OrderModificationRejectEventArgs orderModificationRejectEventArgs)
{
}

OnOrderTrade: Called when order is traded with complete of partial fill. This event provides the information on the filled price and quantity of a trade.
 
protected override void OnTrade(IVObject ivObject, TradeDataEventArgs tradeDataEventArgs)
{
    double lastTradedPrice = tradeDataEventArgs.LastTradedPrice;
    int lastTradedQty = tradeDataEventArgs.LastTradedQuantity;
    int leavesQty = tradeDataEventArgs.LeavesQuantity;
}
OnOrderRejected: Called when order request is rejected by exchange. This event provides the information on the rejection reason.
 
protected override void OnOrderRejected(IVObject ivObject, OrderRejectedEventArgs orderRejectedEventArgs)
{
    string rejectionReason = orderRejectedEventArgs.RejectReason;
}
OnOrderCancelled: Called when active order cancel request is confirmed as cancelled by exchange. This event makes order in terminal state.
 
 protected override void OnOrderCancelled(IVObject ivObject, 
                                          OrderCancellationAcceptedEventArgs orderCancellationAcceptedEventArgs)
{
}
OnOrderTriggered: Called when active stop order price is triggered by exchange. This indicates that exchange has converted stop order to market order.
 
protected virtual void OnOrderTriggered(IVObject ivObject, OrderTriggeredEventArgs eventArgs)
 {
 }