/// <summary> /// 委托回报 /// </summary> /// <param name="pOrder"></param> void OnRtnOrder(SecurityFtdcOrderField pOrder) { if (pOrder == null) return; SysConst.Orders.Add(pOrder); if(queryIsInit)// 由于合约信息没有得到,所以需要延迟显示,如果得到就直接显示 UpdateDelegateDataGrid(); Debug.WriteLine("报单回报 " + pOrder.OrderLocalID); }
/// <summary> /// 取消报单 /// </summary> /// <param name="order"></param> void CancelOrder(SecurityFtdcOrderField order) { SecurityFtdcInputOrderActionField field = new SecurityFtdcInputOrderActionField(); field.BrokerID = order.BrokerID; field.UserID = order.UserID; field.InvestorID = order.UserID; // field.OrderActionRef = SysConst.GetOrderID(); field.RequestID = order.RequestID; field.FrontID = order.FrontID; field.SessionID = order.SessionID; field.ExchangeID = order.ExchangeID; field.ActionFlag = EnumActionFlagType.Delete; Double.TryParse(order.LimitPrice, out field.LimitPrice); field.VolumeChange = order.VolumeTotalOriginal; field.InstrumentID = order.InstrumentID; field.OrderLocalID = order.OrderLocalID; int nReqID = SysConst.GetRequestID(); int nRes = SysConst.TraderApi.ReqOrderAction(field, nReqID); }