public USeOrderBook ConvertModelOrder(OrderBookViewModel order_data_model)
        {
            USeOrderBook order_book = new USeOrderBook();

            if (order_data_model == null)
            {
                return(order_book);
            }

            order_book.OrderNum    = order_data_model.OrderNum;
            order_book.Account     = order_data_model.Account;
            order_book.Instrument  = order_data_model.Instrument;
            order_book.OrderQty    = order_data_model.OrderQty;
            order_book.OrderPrice  = order_data_model.OrderPrice;
            order_book.TradeQty    = order_data_model.TradeQty;
            order_book.TradeAmount = order_data_model.TradeAmount;
            order_book.TradePrice  = order_data_model.TradePrice;
            order_book.TradeFee    = order_data_model.TradeFee;
            order_book.OrderStatus = order_data_model.OrderStatus;
            order_book.CancelQty   = order_data_model.CancelQty;
            //order_book.BlankQty = order_data_model.BlankQty;
            order_book.OrderSide  = order_data_model.OrderSide;
            order_book.OffsetType = order_data_model.OffsetType;
            order_book.Memo       = order_data_model.Memo;
            order_book.OrderTime  = order_data_model.OrderTime;
            //order_book.IsFinish = order_data_model.IsFinish;
            return(order_book);
        }
예제 #2
0
        /// <summary>
        /// 撤单-选中的表中特定的委托单
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button_CancelOrder_Click(object sender, EventArgs e)
        {
            DataGridViewSelectedRowCollection rows_collection = this.gridOrder.SelectedRows;

            if (rows_collection.Count == 0)
            {
                USeFuturesSpiritUtility.ShowWarningMessageBox(this, "请选中可撤的委托单...");
                return;
            }
            ;

            foreach (DataGridViewRow row in rows_collection)
            {
                OrderBookViewModel orderBookView = row.DataBoundItem as OrderBookViewModel;
                if (orderBookView.IsFinish)
                {
                    USeFuturesSpiritUtility.ShowWarningMessageBox(this, "选中的委托单不可撤...");
                    return;
                }
                string error_info = string.Empty;
                bool   bResult    = USeManager.Instance.OrderDriver.CancelOrder(orderBookView.OrderNum, orderBookView.Instrument, out error_info);
                if (bResult == false)
                {
                    USeFuturesSpiritUtility.ShowWarningMessageBox(this, error_info);
                }
            }
        }
        private void button_CACELORDER_Click(object sender, EventArgs e)
        {
            if (m_orderDriver == null)
            {
                return;
            }
            OrderBookViewModel orderModel = this.gridOrder.Rows[this.gridOrder.CurrentCell.RowIndex].DataBoundItem as OrderBookViewModel;

            m_orderDriver.CanceledOrderActionReturn(orderModel.OrderNum, true);
        }
        private void button_PARTTRATED_Click(object sender, EventArgs e)
        {
            if (m_orderDriver == null)
            {
                return;
            }
            OrderBookViewModel orderModel = this.gridOrder.Rows[this.gridOrder.CurrentCell.RowIndex].DataBoundItem as OrderBookViewModel;

            m_orderDriver.PartTrade(orderModel.OrderNum);
        }
        private void UpdateOrderBook(USeOrderBook orderBook)
        {
            OrderBookViewModel marketModel = m_orderDataSource.FirstOrDefault(p => p.OrderNum.Equals(orderBook.OrderNum));

            if (marketModel != null)
            {
                marketModel.Update(orderBook);
            }
            else
            {
                OrderBookViewModel order_data_model = OrderBookViewModel.Creat(orderBook);
                m_orderDataSource.Insert(0, order_data_model);
            }
        }
        private void button_ListAllTraded_Click(object sender, EventArgs e)
        {
            DataGridViewRowCollection row_collection = this.gridOrder.Rows;

            if (row_collection.Count == 0)
            {
                return;
            }
            foreach (DataGridViewRow data_row in row_collection)
            {
                OrderBookViewModel order_model = data_row.DataBoundItem as OrderBookViewModel;
                if (order_model.IsFinish == false)
                {
                    m_orderDriver.AllTrade(order_model.OrderNum);
                }
            }
        }
        private void button_SlipPointPartTraded_Click(object sender, EventArgs e)
        {
            //滑点不填写值默认滑点一跳,填写值按照填写滑点成交
            if (m_orderDriver == null)
            {
                return;
            }
            OrderBookViewModel orderModel = this.gridOrder.Rows[this.gridOrder.CurrentCell.RowIndex].DataBoundItem as OrderBookViewModel;

            if (this.textBox_Slip.Text == "")
            {
                m_orderDriver.PartTrade(orderModel.OrderNum, 1);
            }
            else
            {
                int slip_point = System.Convert.ToInt32((this.textBox_Slip.Text));
                m_orderDriver.PartTrade(orderModel.OrderNum, slip_point);
            }
        }
예제 #8
0
        public static OrderBookViewModel Creat(USeOrderBook orderBook)
        {
            OrderBookViewModel viewModel = new OrderBookViewModel();

            viewModel.OrderNum    = orderBook.OrderNum;
            viewModel.Account     = orderBook.Account;
            viewModel.Instrument  = orderBook.Instrument;
            viewModel.OrderQty    = orderBook.OrderQty;
            viewModel.OrderPrice  = orderBook.OrderPrice;
            viewModel.TradeQty    = orderBook.TradeQty;
            viewModel.TradeAmount = orderBook.TradeAmount;
            viewModel.TradePrice  = orderBook.TradePrice;
            viewModel.TradeFee    = orderBook.TradeFee;
            viewModel.OrderStatus = orderBook.OrderStatus;
            viewModel.CancelQty   = orderBook.CancelQty;
            viewModel.BlankQty    = orderBook.BlankQty;
            viewModel.OrderSide   = orderBook.OrderSide;
            viewModel.OffsetType  = orderBook.OffsetType;
            viewModel.Memo        = orderBook.Memo;
            viewModel.OrderTime   = orderBook.OrderTime;
            viewModel.IsFinish    = orderBook.IsFinish;
            return(viewModel);
        }
예제 #9
0
        private void UpdateOrderBook(USeOrderBook orderBook)
        {
            OrderBookViewModel marketModel = m_order_data_source.FirstOrDefault(p => p.OrderNum.Equals(orderBook.OrderNum));

            if (marketModel != null)
            {
                if (Filter(orderBook.OrderStatus))
                {
                    marketModel.Update(orderBook);
                }
                else
                {
                    m_order_data_source.Remove(marketModel);
                }
            }
            else
            {
                if (Filter(orderBook.OrderStatus))
                {
                    OrderBookViewModel order_data_model = OrderBookViewModel.Creat(orderBook);
                    m_order_data_source.Insert(0, order_data_model);
                }
            }
        }