Example #1
0
 public virtual void SendOrderCancelReplaceRequest(OrderCancelReplaceRequest request)
 {
     if (this.IsConnected)
     {
         this.application.Send((FIXOrderCancelReplaceRequest)request);
     }
     else
     {
         OrderCancelReject reject = new OrderCancelReject();
         reject.TransactTime     = Clock.Now;
         reject.OrigClOrdID      = request.OrigClOrdID;
         reject.ClOrdID          = reject.OrigClOrdID;
         reject.CxlRejResponseTo = FreeQuant.FIX.CxlRejResponseTo.CancelReplaceRequest;
         reject.CxlRejReason     = FreeQuant.FIX.CxlRejReason.BrokerOption;
         reject.OrdStatus        = FreeQuant.FIX.OrdStatus.Undefined;
         reject.Text             = BeAEwTZGlZaeOmY5cm.J00weU3cM6(4342);
         if (this.GZq4XSlmZH != null)
         {
             this.GZq4XSlmZH((object)this, new OrderCancelRejectEventArgs(reject));
         }
         if (this.j4t4Wyi2Ea == null)
         {
             return;
         }
         this.j4t4Wyi2Ea(new ProviderErrorEventArgs((IProvider)this, -1, -1, BeAEwTZGlZaeOmY5cm.J00weU3cM6(4396)));
     }
 }
Example #2
0
        private void OnMessage(OrderCancelReject @event)
        {
            this.EventCount++;
            this.Logger.LogWarning(LogId.Trading, $"{Received}{Event} {@event}.");

            this.SendToEventPublisher(@event);
        }
Example #3
0
 private void EmitOrderCancelReject(OrderCancelReject reject)
 {
     if (OrderCancelReject != null)
     {
         OrderCancelReject(this, new OrderCancelRejectEventArgs(reject));
     }
 }
Example #4
0
 public virtual void SendOrderCancelReplaceRequest(FreeQuant.FIX.OrderCancelReplaceRequest request)
 {
     if (this.IsConnected)
     {
         this.application.Send(request);
     }
     else
     {
         OrderCancelReject reject = new OrderCancelReject();
         reject.TransactTime     = Clock.Now;
         reject.OrigClOrdID      = request.OrigClOrdID;
         reject.ClOrdID          = reject.OrigClOrdID;
         reject.CxlRejResponseTo = SmartQuant.FIX.CxlRejResponseTo.CancelReplaceRequest;
         reject.CxlRejReason     = SmartQuant.FIX.CxlRejReason.BrokerOption;
         reject.OrdStatus        = SmartQuant.FIX.OrdStatus.Undefined;
         reject.Text             = BeAEwTZGlZaeOmY5cm.J00weU3cM6(2480);
         if (this.B02KF0Hm96 != null)
         {
             this.B02KF0Hm96((object)this, new OrderCancelRejectEventArgs(reject));
         }
         if (this.e4HAgJhCB == null)
         {
             return;
         }
         this.e4HAgJhCB(new ProviderErrorEventArgs((IProvider)this, -1, -1, BeAEwTZGlZaeOmY5cm.J00weU3cM6(2534)));
     }
 }
Example #5
0
 private void EmitOrderCancelReject(OrderCancelReject reject)
 {
     if (this.OrderCancelReject == null)
     {
         return;
     }
     this.OrderCancelReject((object)this, new OrderCancelRejectEventArgs(reject));
 }
Example #6
0
 public void EmitOrderCancelReject(OrderCancelReject reject)
 {
     if (this.B02KF0Hm96 == null)
     {
         return;
     }
     this.B02KF0Hm96((object)this, new OrderCancelRejectEventArgs(reject));
 }
Example #7
0
 public void EmitOrderCancelReject(OrderCancelReject reject)
 {
     if (this.GZq4XSlmZH == null)
     {
         return;
     }
     this.GZq4XSlmZH((object)this, new OrderCancelRejectEventArgs(reject));
 }
Example #8
0
 internal void EmitCancelReject(OrderCancelReject reject)
 {
     this.OrdStatus = reject.OrdStatus;
     this.rejects.Add(reject);
     if (this.CancelReject != null)
     {
         this.CancelReject(this, new OrderCancelRejectEventArgs(reject));
     }
 }
        /// <summary>
        /// OrderCancelReject message handler
        /// </summary>
        private void OnOrderCancelReject(OrderCancelReject message)
        {
            if (message.getRequestID() == _currentRequest)
            {
                Log.Trace("Order update or cancellation rejected: {0}", message.getFXCMErrorDetails().Replace("\n", ""));
                _isOrderUpdateOrCancelRejected = true;

                _mapRequestsToAutoResetEvents[_currentRequest].Set();
                _mapRequestsToAutoResetEvents.Remove(_currentRequest);
            }
        }
Example #10
0
        private static void OnOrderCancelReject(object sender, OrderCancelRejectEventArgs e)
        {
            OrderCancelReject orderCancelReject = e.OrderCancelReject;
            SingleOrder       order             = OrderManager.orders.All[orderCancelReject.OrigClOrdID] as SingleOrder;

            if (orderCancelReject.OrdStatus == OrdStatus.Undefined)
            {
                orderCancelReject.OrdStatus = OrdStatus.New;
                ArrayList arrayList = new ArrayList((ICollection)order.Reports);
                arrayList.Reverse();
                foreach (ExecutionReport executionReport in arrayList)
                {
                    switch (executionReport.OrdStatus)
                    {
                    case OrdStatus.PendingCancel:
                    case OrdStatus.PendingNew:
                    case OrdStatus.PendingReplace:
                        continue;

                    default:
                        orderCancelReject.OrdStatus = executionReport.OrdStatus;
                        goto label_10;
                    }
                }
            }
label_10:
            OrdStatus ordStatus = order.OrdStatus;

            order.EmitCancelReject(orderCancelReject);
            if (OrderManager.OrderCancelReject != null)
            {
                OrderManager.OrderCancelReject(sender, new OrderCancelRejectEventArgs(order, orderCancelReject));
            }
            if (order.IsDone)
            {
                if (!OrderManager.EnablePartialTransactions)
                {
                    OrderManager.nf3XP7Xf3(order, orderCancelReject.TransactTime, order.AvgPx, order.CumQty);
                }
                OrderManager.YUArMfFNj(order);
            }
            else
            {
                if (ordStatus == order.OrdStatus)
                {
                    return;
                }
                OrderManager.orders.Update(order);
                order.EmitStatusChanged();
                OrderManager.EmitOrderStatusChanged(order);
            }
        }
        public void SendOrderCancelRequest(FIXOrderCancelRequest request)
        {
            if (!this.isConnected)
            {
                this.EmitError(this.Id, -1, "The TDXTradeProvider is not connected.");
            }
            string      origOuterOrderID = request.OrigClOrdID;
            OrderRecord orderRecord      = this.orders.GetRecord(origOuterOrderID, 1);

            if (orderRecord == null)
            {
                string errorInfo = "要取消的订单没有记录。";
                this.EmitError(this.Id, -1, errorInfo);
                OrderCancelReject report = new OrderCancelReject();
                report.TransactTime     = DateTime.Now;
                report.OrigClOrdID      = request.OrigClOrdID;
                report.ClOrdID          = request.ClOrdID;
                report.CxlRejReason     = CxlRejReason.UnknownOrder;
                report.CxlRejResponseTo = CxlRejResponseTo.CancelRequest;
                report.Text             = errorInfo;
                report.OrdStatus        = OrdStatus.Rejected;
                if (OrderCancelReject != null)
                {
                    OrderCancelReject(this, new OrderCancelRejectEventArgs(report));
                }
                return;
            }
            string     origInnerOrderID = orderRecord.InnerOrderID;
            ReportArgs rargs            = this.trader.CancelOrder(origInnerOrderID);

            if (rargs.Succeeded)
            {
                Thread.Sleep(1000);
                this.updateOrders();
            }
            else
            {
                this.EmitError(this.Id, -1, rargs.ErrorInfo);
                OrderCancelReject report = new OrderCancelReject();
                report.TransactTime     = DateTime.Now;
                report.OrigClOrdID      = request.OrigClOrdID;
                report.ClOrdID          = request.ClOrdID;
                report.CxlRejReason     = CxlRejReason.BrokerOption;
                report.CxlRejResponseTo = CxlRejResponseTo.CancelRequest;
                report.Text             = rargs.ErrorInfo;
                report.OrdStatus        = OrdStatus.Rejected;
                if (OrderCancelReject != null)
                {
                    OrderCancelReject(this, new OrderCancelRejectEventArgs(report));
                }
            }
        }
Example #12
0
        private void EmitOrderCancelReject(OrderRecord record, OrdStatus ordStatus, CxlRejResponseTo responseTo, string text)
        {
            OrderCancelReject reject = new OrderCancelReject();

            reject.TransactTime     = Clock.Now;
            reject.ClOrdID          = ((FIXNewOrderSingle)record.Order).ClOrdID;
            reject.OrigClOrdID      = ((FIXNewOrderSingle)record.Order).ClOrdID;
            reject.OrdStatus        = ordStatus;
            reject.CxlRejResponseTo = responseTo;
            reject.CxlRejReason     = CxlRejReason.BrokerOption;
            reject.Text             = text;
            this.EmitOrderCancelReject(reject);
        }
Example #13
0
        /// <summary>
        /// OrderCancelReject message handler
        /// </summary>
        private void OnOrderCancelReject(OrderCancelReject message)
        {
            if (message.getRequestID() == _currentRequest)
            {
                var messageText = message.getFXCMErrorDetails().Replace("\n", "");
                Log.Trace("FxcmBrokerage.OnOrderCancelReject(): " + messageText);
                OnMessage(new BrokerageMessageEvent(BrokerageMessageType.Warning, "OrderUpdateOrCancelReject", messageText));

                _isOrderUpdateOrCancelRejected = true;

                _mapRequestsToAutoResetEvents[_currentRequest].Set();
                _mapRequestsToAutoResetEvents.Remove(_currentRequest);
            }
        }
Example #14
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="message"></param>
 /// <param name="session"></param>
 public void OnMessage(OrderCancelReject message, SessionID session)
 {
     try
     {
         TODropCopyDB to = new TODropCopyDB();
         to.MensagemQF = message;
         to.Sessao     = session;
         to.TipoMsg    = MsgType.ORDER_CANCEL_REJECT;
         this._addMessage(to);
     }
     catch (Exception ex)
     {
         logger.Error("Problemas no processamento da mensagem de OrderCancelReject: " + ex.Message, ex);
     }
 }
Example #15
0
        // OrderCancelReject message handler
        private void OnOrderCancelReject(OrderCancelReject orderCancelReject)
        {
            Console.WriteLine("OnOrderCancelReject()");
            Console.WriteLine("\tRequestId = {0}", orderCancelReject.getRequestID());

            Console.WriteLine("\tgetAccount() = " + orderCancelReject.getAccount());
            Console.WriteLine("\tgetOrderID() = " + orderCancelReject.getOrderID());
            Console.WriteLine("\tgetCxlRejReason() = " + orderCancelReject.getCxlRejReason());
            Console.WriteLine("\tgetFXCMErrorDetails() = " + orderCancelReject.getFXCMErrorDetails());
            Console.WriteLine();

            if (orderCancelReject.getRequestID() == _currentRequest)
            {
                _requestOrderEvent.Set();
            }
        }
Example #16
0
        protected void EmitCancelReject(SingleOrder order, OrdStatus status, string message)
        {
            OrderCancelReject reject = new OrderCancelReject
            {
                TransactTime = Clock.Now,
                ClOrdID      = order.ClOrdID,
                OrigClOrdID  = order.ClOrdID,
                OrderID      = order.OrderID,

                CxlRejReason     = CxlRejReason.BrokerOption,
                CxlRejResponseTo = CxlRejResponseTo.CancelRequest,
                OrdStatus        = status
            };

            EmitOrderCancelReject(reject);
        }
Example #17
0
        public static OrderCancelReject CreateOrderCancelReplaceReject(OrderCancelReplaceRequest msg,
                                                                        int rejectReason,
                                                                        string rejectReasonText)
        {
            var orderid = (msg.IsSetOrderID()) ? msg.OrderID.Obj : "unknown orderID";
            var ocj = new OrderCancelReject(
                new OrderID(orderid),
                msg.ClOrdID,
                msg.OrigClOrdID,
                new OrdStatus(OrdStatus.REJECTED),
                new CxlRejResponseTo(CxlRejResponseTo.ORDER_CANCEL_REPLACE_REQUEST))
                {
                    CxlRejReason = new CxlRejReason(rejectReason),
                    Text = new Text(rejectReasonText)
                };

            return ocj;
        }
Example #18
0
        public static OrderCancelReject CreateOrderCancelReplaceReject(OrderCancelReplaceRequest msg,
                                                                       int rejectReason,
                                                                       string rejectReasonText)
        {
            var orderid = (msg.IsSetOrderID()) ? msg.OrderID.Obj : "unknown orderID";
            var ocj     = new OrderCancelReject(
                new OrderID(orderid),
                msg.ClOrdID,
                msg.OrigClOrdID,
                new OrdStatus(OrdStatus.REJECTED),
                new CxlRejResponseTo(CxlRejResponseTo.ORDER_CANCEL_REPLACE_REQUEST))
            {
                CxlRejReason = new CxlRejReason(rejectReason),
                Text         = new Text(rejectReasonText)
            };

            return(ocj);
        }
        internal void CanSerializeAndDeserialize_OrderCancelRejectEvents()
        {
            // Arrange
            var order        = new StubOrderBuilder().BuildStopLimitOrder();
            var cancelReject = new OrderCancelReject(
                AccountId.FromString("FXCM-02851908-DEMO"),
                order.Id,
                StubZonedDateTime.UnixEpoch(),
                "REJECT_RESPONSE?",
                "ORDER_NOT_FOUND",
                Guid.NewGuid(),
                StubZonedDateTime.UnixEpoch());

            // Act
            var packed   = this.serializer.Serialize(cancelReject);
            var unpacked = (OrderCancelReject)this.serializer.Deserialize(packed);

            // Assert
            Assert.Equal(cancelReject, unpacked);
            this.Output.WriteLine(Convert.ToBase64String(packed));
        }
Example #20
0
 /// <summary>
 /// Manipulacao do dicionario em situacoes
 /// (Mensagens de Order Cancel Reject - OCR)
 /// </summary>
 /// <param name="ss"></param>
 /// <param name="dic"></param>
 /// <param name="strChave"></param>
 //public void VerifyOrderSituationOCR(SessionID ss, Dictionary<string, TOOrderSession> dic, string strChave)
 // OBS :strChave sempre ClOrdID até momento
 public void VerifyOrderSituationOCR(OrderCancelReject msg, SessionID ss, OrderSessionManager dic, string strChave, string strChaveExch)
 {
     try
     {
         if (null != ss) // Registry found
         {
             TOOrderSession aux = null;
             dic.GetOrder(strChave, out aux);
             if (null != aux && msg.IsSetField(Tags.OrderID) && msg.OrderID.getValue() != "NONE")
             {
                 if (msg.IsSetField(Tags.Account))
                 {
                     aux.ExchangeNumberID = msg.OrderID.getValue() + "-" + msg.Account.getValue() + "-" + msg.Symbol.getValue();
                 }
             }
             // Se houve rejeicao de cancelamento, entao somente excluir do dicionario
             lock (dic)
             {
                 TOOrderSession toOS = null;
                 int            ret  = dic.GetOrder(strChave, out toOS, strChaveExch);
                 if (null != toOS)
                 {
                     if (ret == FindType.EXCHANGE_NUMBER)
                     {
                         dic.RemoveOrder(toOS.ChaveDicionario);
                     }
                     else
                     {
                         dic.RemoveOrder(strChave);
                     }
                 }
                 toOS = null;
             }
         }
     }
     catch (Exception ex)
     {
         logger.Error("VerifyOrderSituationOCR(): " + ex.Message, ex);
     }
 }
Example #21
0
 public void OnOrderCancelReject(object sender, OrderCancelRejectEventArgs e)
 {
     if (OrderCancelReject != null)
     {
         QuickFix42.OrderCancelReject sourceCancelReject = e.OrderCancelReject;
         try
         {
             SmartQuant.FIX.OrderCancelReject cancelReject = new OrderCancelReject();
             cancelReject.OrigClOrdID      = sourceCancelReject.getOrigClOrdID().getValue();
             cancelReject.ClOrdID          = sourceCancelReject.getClOrdID().getValue();
             cancelReject.OrderID          = sourceCancelReject.getOrderID().getValue();
             cancelReject.CxlRejReason     = CxlRejReason.TooLateToCancel;   //因国信没有详细撤单原因说明,暂且设置为这个。
             cancelReject.CxlRejResponseTo = CxlRejResponseTo.CancelRequest; //因国信不支持订单取消替换,故只有此种错误类型。
             cancelReject.Text             = sourceCancelReject.getText().getValue();
             OrderCancelReject(this, new SmartQuant.FIX.OrderCancelRejectEventArgs(cancelReject));
         }
         catch (Exception ex)
         {
             EmitError(-1, -1, ex.Message);
         }
     }
 }
Example #22
0
 /// <summary>
 /// Handles <see cref="OrderCancelReject"/> messages.
 /// </summary>
 /// <param name="message">The FIX message.</param>
 /// <param name="sessionId">The session identifier.</param>
 public void OnMessage(OrderCancelReject message, SessionID sessionId)
 {
     this.FixMessageHandler.OnMessage(message);
 }
        /// <summary>
        /// OrderCancelReject message handler
        /// </summary>
        private void OnOrderCancelReject(OrderCancelReject message)
        {
            if (message.getRequestID() == _currentRequest)
            {
                var messageText = message.getFXCMErrorDetails().Replace("\n", "");
                Log.Trace("FxcmBrokerage.OnOrderCancelReject(): " + messageText);
                OnMessage(new BrokerageMessageEvent(BrokerageMessageType.Warning, "OrderUpdateOrCancelReject", messageText));

                _isOrderUpdateOrCancelRejected = true;

                _mapRequestsToAutoResetEvents[_currentRequest].Set();
                _mapRequestsToAutoResetEvents.Remove(_currentRequest);
            }
        }
Example #24
0
 private void OnMessage(OrderCancelReject @event)
 {
     this.SendToBus(@event);
 }
        protected void EmitCancelReject(SingleOrder order, OrdStatus status, string message)
        {
            OrderCancelReject reject = new OrderCancelReject
            {
                TransactTime = Clock.Now,
                ClOrdID = order.ClOrdID,
                OrigClOrdID = order.ClOrdID,
                OrderID = order.OrderID,

                CxlRejReason = CxlRejReason.BrokerOption,
                CxlRejResponseTo = CxlRejResponseTo.CancelRequest,
                OrdStatus = status
            };

            EmitOrderCancelReject(reject);
        }
 private void EmitOrderCancelReject(OrderCancelReject reject)
 {
     if (OrderCancelReject != null)
     {
         OrderCancelReject(this, new OrderCancelRejectEventArgs(reject));
     }
 }
        public override void onMessage(QuickFix42.OrderCancelReject message, SessionID session)
        {
            OrderCancelReject reject = new OrderCancelReject();

            // required fields
            reject.TransactTime = Clock.Now;
            reject.OrderID = message.getOrderID().getValue();
            reject.ClOrdID = message.getClOrdID().getValue();
            reject.OrigClOrdID = message.getOrigClOrdID().getValue();

            (reject as FIXOrderCancelReject).OrdStatus = message.getOrdStatus().getValue();
            (reject as FIXOrderCancelReject).CxlRejResponseTo = message.getCxlRejResponseTo().getValue();
            (reject as FIXOrderCancelReject).CxlRejReason = message.getCxlRejReason().getValue();

            // optional fields
            if (message.isSetSecondaryOrderID())
                reject.SecondaryOrderID = message.getSecondaryOrderID().getValue();

            if (message.isSetAccount())
                reject.Account = message.getAccount().getValue();

            if (message.isSetText())
                reject.Text = message.getText().getValue();

            // event
            provider.EmitOrderCancelReject(reject);
        }
        /// <summary>
        /// OrderCancelReject message handler
        /// </summary>
        private void OnOrderCancelReject(OrderCancelReject message)
        {
            if (message.getRequestID() == _currentRequest)
            {
                Log.Trace("Order update or cancellation rejected: {0}", message.getFXCMErrorDetails().Replace("\n", ""));
                _isOrderUpdateOrCancelRejected = true;

                _mapRequestsToAutoResetEvents[_currentRequest].Set();
                _mapRequestsToAutoResetEvents.Remove(_currentRequest);
            }
        }
Example #29
0
 private void OnMessage(OrderCancelReject @event)
 {
     this.ReceivedObjects.Add(@event);
 }
Example #30
0
        // OrderCancelReject message handler
        private void OnOrderCancelReject(OrderCancelReject orderCancelReject)
        {
            Console.WriteLine("OnOrderCancelReject()");
            Console.WriteLine("\tRequestId = {0}", orderCancelReject.getRequestID());

            Console.WriteLine("\tgetAccount() = " + orderCancelReject.getAccount());
            Console.WriteLine("\tgetOrderID() = " + orderCancelReject.getOrderID());
            Console.WriteLine("\tgetCxlRejReason() = " + orderCancelReject.getCxlRejReason());
            Console.WriteLine("\tgetFXCMErrorDetails() = " + orderCancelReject.getFXCMErrorDetails());
            Console.WriteLine();

            if (orderCancelReject.getRequestID() == _currentRequest)
            {
                _requestOrderEvent.Set();
            }
        }
Example #31
0
        public void ProcessOrderCancelReject(QuickFix.Message msg, string bolsa)
        {
            try
            {
                OrderCancelReject ocr = (OrderCancelReject)msg;
                // Buscar a ordem original a partir do OrigClOrdID
                string clordid = ocr.ClOrdID.getValue();
                int    account;
                if (bolsa.Equals(ExchangePrefixes.BOVESPA, StringComparison.InvariantCultureIgnoreCase))
                {
                    string acc = ocr.IsSetAccount()? ocr.Account.getValue(): string.Empty;
                    if (!string.IsNullOrEmpty(acc))
                    {
                        acc     = (acc.Remove(acc.Length - 1));
                        account = 0;
                    }
                    else
                    {
                        account = 0;
                    }
                }
                else
                {
                    account = ocr.IsSetAccount()? Convert.ToInt32(ocr.Account.getValue()): 0;
                }



                OrderDbInfo orderOrig = null;
                if (account != 0)
                {
                    orderOrig = _db.BuscarOrdem(clordid, account, ocr.Symbol.getValue());
                }
                else
                {
                    orderOrig = _db.BuscarOrdemPorClOrdEOrigClOrd(clordid, ocr.OrigClOrdID.getValue(), ocr.Symbol.getValue());
                }


                if (orderOrig.ClOrdID.Equals(string.Empty))
                {
                    logger.Info("Problema ao consultar informacoes da ordem original");
                    return;
                }

                // Preencher informacoes de tb_fix_order_detail (rejection)
                OrderDbDetalheInfo detail = new OrderDbDetalheInfo();
                detail.OrderID = orderOrig.OrderID;
                //detail.OrderQty = orderOrig.OrderQty;
                //detail.OrderQtyRemaining = orderOrig.OrderQtyRemaining;
                //detail.Price = orderOrig.Price;
                detail.OrderStatusID    = (int)FixOrderStatus.REJEITADA;
                detail.TransactTime     = ocr.IsSetField(Tags.TransactTime)? ocr.TransactTime.getValue(): DateTime.MinValue;
                detail.Description      = ocr.IsSetField(Tags.Text) ? ocr.Text.getValue() : string.Empty;
                detail.CxlRejResponseTo = ocr.IsSetField(Tags.CxlRejResponseTo) ? ocr.CxlRejResponseTo.getValue().ToString() : string.Empty;
                detail.CxlRejReason     = ocr.IsSetField(Tags.CxlRejReason)? ocr.CxlRejReason.getValue(): 0;
                detail.FixMsgSeqNum     = Convert.ToInt32(ocr.Header.GetField(Tags.MsgSeqNum));

                if (!_db.InserirOrdemDetalhe(detail, clordid))
                {
                    logger.Info("Problemas na inserção da ordem detalhe");
                    return;
                }
                // Buscar as informacoes da tabela update, utilizando o OrigClOrdID da ordem original
                OrderDbUpdateInfo orderUpdate = _db.BuscarOrdemUpdate(orderOrig.OrigClOrdID);

                // Atribuir as informacoes do update no order original
                orderOrig.ClOrdID      = orderUpdate.ClOrdID;
                orderOrig.OrdStatus    = orderUpdate.OrdStatusID;
                orderOrig.Price        = orderUpdate.Price;
                orderOrig.OrderQty     = orderUpdate.Quantidade;
                orderOrig.OrderQtyApar = orderUpdate.Quantidade_Aparente;
                orderOrig.OrderQtyMin  = orderUpdate.Quantidade_Minima;
                //orderOrig.OrderQtyRemaining = orderUpdate.Quantidade_Exec;
                orderOrig.ExpireDate  = orderUpdate.Dt_Validade;
                orderOrig.OrigClOrdID = string.Empty;
                orderOrig.MsgFix      = ocr.ToString().Replace('\x01', '|');
                // Atualizar as informacoes do update na tabela da ordem original
                if (!_db.AtualizarOrdem(orderOrig))
                {
                    logger.Info("Problemas na atualizacao da ordem (mensagem ordercancelreject). ClOrdID: " + orderOrig.ClOrdID);
                    return;
                }

                DropCopyCallbackManager.Instance.EnqueueCallback(orderOrig);
            }
            catch (Exception ex)
            {
                logger.Error("Problemas no processamento da mensagem OrderCancelReject: " + ex.Message, ex);
            }
        }
 public MsgOrderCancelReject(OrderCancelReject orderCancelReject) : base(1102)
 {
     this.Data = orderCancelReject;
 }