public void PaintUpdate(TradeRecord r)
 {
     try
     {
         Trades.Add(r);
     }
     catch (Exception e)
     {
         Trace.WriteLine(e.ToString());
     }
 }
        public void HandleQuoteRequest(QuickFix.FIX44.QuoteRequest msg)
        {
            try
            {
                string quoteRequestId = msg.QuoteReqID.Obj;
                //string status = FixEnumTranslator.Translate(msg.OrdStatus);

                Trace.WriteLine("OVM: Handling QuoteRequest: " + quoteRequestId);

                TradeRecord tr = new TradeRecord(quoteRequestId, "1", "New", "100.1", "CT10", "B");
                SmartDispatcher.Invoke(new Action<TradeRecord>(AddTrade), tr);
                /*
                lock (_ordersLock)
                {
                    foreach (OrderRecord r in Orders)
                    {
                        if (r.ClOrdID == clOrdId)
                        {
                            r.Status = status;
                            if (msg.IsSetLastPx())
                                r.Price = msg.LastPx.Obj;
                            if (msg.IsSetOrderID())
                                r.OrderID = msg.OrderID.Obj;

                            return;
                        }
                    }
                }
                */
                Trace.WriteLine("OVM: No order corresponds to QuoteRequestId: '" + quoteRequestId + "'");
            }
            catch (Exception e)
            {
                Trace.WriteLine(e.ToString());
            }
        }