Пример #1
0
        public bool AddQuoteOrderInfo(QuoteOrderData orderInfo)
        {
            bool canAdd = false;

            if (CommonUtil.GetOrderStatus(orderInfo.QuoteStatus) == OrderStatus.Queued)
            {
                if (Settings.Default.ConfirmForOrderSubmit == true)
                {
                    canAdd = true;
                }
            }
            else if (CommonUtil.GetOrderStatus(orderInfo.QuoteStatus) == OrderStatus.Chengjiao)
            {
                if (Settings.Default.ConfirmForOrderTransact == true)
                {
                    canAdd = true;
                }
            }
            else if (CommonUtil.GetOrderStatus(orderInfo.QuoteStatus) == OrderStatus.Cancelled)
            {
                if (Settings.Default.ConfirmForOrderCancel == true)
                {
                    canAdd = true;
                }
            }
            else if (CommonUtil.GetOrderStatus(orderInfo.QuoteStatus) == OrderStatus.Failed)
            {
                if (Settings.Default.ConfirmForOrderCancel == true)
                {
                    canAdd = true;
                }
            }

            if (canAdd)
            {
                _LstOrders.Add(orderInfo);
                btnNext.Visibility = Visibility.Visible;
                string title = (this.Parent as Window).Title;
                if (title.Length > 4)
                {
                    title = title.Substring(title.Length - 4);
                    title = "TradingMaster:" + title;
                    (this.Parent as Window).Title = string.Format("({0}/{1}) {2}", index + 1, _LstOrders.Count, title);
                }
            }
            AddSystemMessage(orderInfo);
            return(canAdd);
        }
Пример #2
0
        private void AddSystemMessage(QuoteOrderData orderInfo)
        {
            string title        = string.Empty;
            string code         = orderInfo.Code;//orderInfo.legs[0] != null ? orderInfo.legs[0].Code : "";
            string bidOpenClose = orderInfo.BidOpenClose;
            string askOpenClose = orderInfo.AskOpenClose;
            string message      = string.Empty;

            if (CommonUtil.GetOrderStatus(orderInfo.QuoteStatus) == OrderStatus.Queued)
            {
                message = string.Format("报价号:{0} 下单成功:{1}:买 {2},{3}手,买价{4};卖 {5},{6}手,卖价{7};应价编号:{8}",
                                        orderInfo.QuoteOrderID.Trim(), code,
                                        bidOpenClose, orderInfo.BidHandCount, orderInfo.BidPrice, askOpenClose, orderInfo.AskHandCount, orderInfo.AskPrice, orderInfo.ForQuoteOrderID);
            }
            else if (CommonUtil.GetOrderStatus(orderInfo.QuoteStatus) == OrderStatus.Chengjiao)
            {
                message = string.Format("报价号:{0} 成交通知:{1}:买 {2},{3}手,买价{4};卖 {5},{6}手,卖价{7};应价编号:{8}",
                                        orderInfo.QuoteOrderID.Trim(), code,
                                        bidOpenClose, orderInfo.BidHandCount, orderInfo.BidPrice, askOpenClose, orderInfo.AskHandCount, orderInfo.AskPrice, orderInfo.ForQuoteOrderID);//成交价
            }
            else if (CommonUtil.GetOrderStatus(orderInfo.QuoteStatus) == OrderStatus.Cancelled)
            {
                message = string.Format("撤报价:{0},{1}:买 {2},{3}手,买价{4};卖 {5},{6}手,卖价{7};应价编号:{8}",
                                        orderInfo.QuoteOrderID.Trim(), code,
                                        bidOpenClose, orderInfo.BidHandCount, orderInfo.BidPrice, askOpenClose, orderInfo.AskHandCount, orderInfo.AskPrice, orderInfo.ForQuoteOrderID);
            }
            else if (CommonUtil.GetOrderStatus(orderInfo.QuoteStatus) == OrderStatus.Failed)
            {
                message = string.Format("报价失败:{0},{1}买 {2},{3}手,买价{4};卖 {5},{6}手,卖价{7};应价编号:{8}",
                                        orderInfo.QuoteOrderID.Trim(), code,
                                        bidOpenClose, orderInfo.BidHandCount, orderInfo.BidPrice, askOpenClose, orderInfo.AskHandCount, orderInfo.AskPrice, orderInfo.ForQuoteOrderID);
            }
            if (!string.IsNullOrEmpty(message))
            {
                _MainWindow.AddSystemMessage(DateTime.Now, message, "信息", "QUOTEORDER");
            }
        }
Пример #3
0
        private void ShowOrderInfo()
        {
            HideCheckBox();
            string title   = string.Empty;
            string message = "";

            if (_LstOrders[index] is TradeOrderData)
            {
                TradeOrderData orderInfo = _LstOrders[index] as TradeOrderData;
                string         code      = orderInfo.Code;      //orderInfo.legs[0] != null ? orderInfo.legs[0].Code : "";
                string         buySell   = orderInfo.BuySell;
                string         openClose = orderInfo.OpenClose; // JYDataServer.getServerInstance().GetPosEffect(orderInfo.posEffect);

                message = string.Format("报单号 :{0}", orderInfo.OrderID);
                message = message + string.Format("\n合约:{0}", code);
                message = message + string.Format("\n买卖:{0}", buySell);
                message = message + string.Format("\n开平:{0}", openClose);
                message = message + string.Format("\n委托量:{0}", orderInfo.CommitHandCount);
                message = message + string.Format("\n委托价:{0}", orderInfo.CommitPrice);
                message = message + string.Format("\n备注:{0}", orderInfo.FeedBackInfo);


                if (CommonUtil.GetOrderStatus(orderInfo.OrderStatus) == OrderStatus.Queued)
                {
                    title = "下单成功";
                    chkConfirmSubmit.Visibility = Visibility.Visible;
                }
                else if (CommonUtil.GetOrderStatus(orderInfo.OrderStatus) == OrderStatus.Chengjiao)
                {
                    title = "成交通知";
                    chkConfirmTransact.Visibility = Visibility.Visible;
                }
                else if (CommonUtil.GetOrderStatus(orderInfo.OrderStatus) == OrderStatus.Cancelled)
                {
                    title = "撤单成功";
                    chkConfirmCancel.Visibility = Visibility;
                }
                else if (CommonUtil.GetOrderStatus(orderInfo.OrderStatus) == OrderStatus.Failed)
                {
                    title = "下单失败";
                    chkConfirmCancel.Visibility = Visibility;
                }
            }
            else if (_LstOrders[index] is QuoteOrderData)
            {
                QuoteOrderData orderInfo    = _LstOrders[index] as QuoteOrderData;
                string         code         = orderInfo.Code;//orderInfo.legs[0] != null ? orderInfo.legs[0].Code : "";
                string         bidOpenClose = orderInfo.BidOpenClose;
                string         askOpenClose = orderInfo.AskOpenClose;
                // JYDataServer.getServerInstance().GetPosEffect(orderInfo.posEffect);

                message = string.Format("报价号 :{0}", orderInfo.QuoteOrderID);
                message = message + string.Format("\n合约:{0}", code);
                message = message + string.Format("\n买开平:{0}", bidOpenClose);
                message = message + string.Format("\n买量:{0}", orderInfo.BidHandCount);
                message = message + string.Format("\n买价:{0}", orderInfo.BidPrice);
                message = message + string.Format("\n买套保:{0}", orderInfo.BidHedge);
                message = message + string.Format("\n卖开平:{0}", askOpenClose);
                message = message + string.Format("\n卖量:{0}", orderInfo.AskOpenClose);
                message = message + string.Format("\n卖价:{0}", orderInfo.AskPrice);
                message = message + string.Format("\n卖套保:{0}", orderInfo.AskHedge);
                message = message + string.Format("\n备注:{0}", orderInfo.StatusMsg);

                if (CommonUtil.GetOrderStatus(orderInfo.QuoteStatus) == OrderStatus.Queued)
                {
                    title = "报价成功";
                    chkConfirmSubmit.Visibility = Visibility.Visible;
                }
                else if (CommonUtil.GetOrderStatus(orderInfo.QuoteStatus) == OrderStatus.Chengjiao)
                {
                    title = "成交通知";
                    chkConfirmTransact.Visibility = Visibility.Visible;
                }
                else if (CommonUtil.GetOrderStatus(orderInfo.QuoteStatus) == OrderStatus.Cancelled)
                {
                    title = "撤单成功";
                    chkConfirmCancel.Visibility = Visibility;
                }
                else if (CommonUtil.GetOrderStatus(orderInfo.QuoteStatus) == OrderStatus.Failed)
                {
                    title = "报价失败";
                    chkConfirmCancel.Visibility = Visibility;
                }
            }
            else if (_LstOrders[index] is ExecOrderData)
            {
                ExecOrderData orderInfo = _LstOrders[index] as ExecOrderData;
                string        code      = orderInfo.Code;      //orderInfo.legs[0] != null ? orderInfo.legs[0].Code : "";
                string        openClose = orderInfo.OpenClose; // JYDataServer.getServerInstance().GetPosEffect(orderInfo.posEffect);

                message = string.Format("执行号 :{0}", orderInfo.ExecOrderID);
                message = message + string.Format("\n合约:{0}", code);
                message = message + string.Format("\n开平:{0}", openClose);
                message = message + string.Format("\n委托量:{0}", orderInfo.HandCount);
                message = message + string.Format("\n备注:{0}", orderInfo.StatusMsg);

                if (CommonUtil.GetOrderStatus(orderInfo.ExecStatus) == OrderStatus.Queued)
                {
                    title = "指令成功";
                    chkConfirmSubmit.Visibility = Visibility.Visible;
                }
                else if (CommonUtil.GetOrderStatus(orderInfo.ExecStatus) == OrderStatus.Chengjiao)
                {
                    title = "成交通知";
                    chkConfirmTransact.Visibility = Visibility.Visible;
                }
                else if (CommonUtil.GetOrderStatus(orderInfo.ExecStatus) == OrderStatus.Cancelled)
                {
                    title = "撤单成功";
                    chkConfirmCancel.Visibility = Visibility;
                }
                else if (CommonUtil.GetOrderStatus(orderInfo.ExecStatus) == OrderStatus.Failed)
                {
                    title = "指令失败";
                    chkConfirmCancel.Visibility = Visibility;
                }
            }
            else
            {
                title   = "提示数据不合法!";
                message = "提示数据不合法!";
            }
            (this.Parent as Window).Title = string.Format("({0}/{1}) {2}", index + 1, _LstOrders.Count, "TradingMaster:" + title);
            tbMessage.Text = message;
        }