Ejemplo n.º 1
0
        private void AddSystemMessage(ExecOrderData orderInfo)
        {
            string title     = string.Empty;
            string code      = orderInfo.Code;//orderInfo.legs[0] != null ? orderInfo.legs[0].Code : "";
            string openClose = orderInfo.OpenClose;
            string message   = string.Empty;

            if (CommonUtil.IsExecCancellable(orderInfo))
            {
                message = string.Format("行权号:{0} 申请成功:{1},{2}手",
                                        orderInfo.ExecOrderID.Trim(), code, orderInfo.HandCount);
            }
            else if (orderInfo.ExecStatus == "执行成功")
            {
                message = string.Format("行权号:{0} 执行成功:{1},{2}手",
                                        orderInfo.ExecOrderID.Trim(), code, orderInfo.HandCount);//成交价
            }
            else if (orderInfo.ExecStatus == "已取消")
            {
                message = string.Format("取消申请:{0},{1}手",
                                        code, orderInfo.HandCount);
            }
            else if (orderInfo.ExecStatus == "申请失败" || orderInfo.ExecStatus == "已拒绝")
            {
                message = string.Format("申请失败:{0},{1}手",
                                        code, orderInfo.HandCount);
            }
            if (!string.IsNullOrEmpty(message))
            {
                _MainWindow.AddSystemMessage(DateTime.Now, message, "信息", "EXECORDER");
            }
        }
Ejemplo n.º 2
0
        public bool AddExecOrderInfo(ExecOrderData orderInfo)
        {
            bool canAdd = false;

            if (CommonUtil.GetOrderStatus(orderInfo.ExecStatus) == OrderStatus.Queued)
            {
                if (Settings.Default.ConfirmForOrderSubmit == true)
                {
                    canAdd = true;
                }
            }
            else if (CommonUtil.GetOrderStatus(orderInfo.ExecStatus) == OrderStatus.Chengjiao)
            {
                if (Settings.Default.ConfirmForOrderTransact == true)
                {
                    canAdd = true;
                }
            }
            else if (CommonUtil.GetOrderStatus(orderInfo.ExecStatus) == OrderStatus.Cancelled)
            {
                if (Settings.Default.ConfirmForOrderCancel == true)
                {
                    canAdd = true;
                }
            }
            else if (CommonUtil.GetOrderStatus(orderInfo.ExecStatus) == 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);
        }
Ejemplo n.º 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;
        }