Exemple #1
0
 def OnRtnOrder(self, pOrder):
     print 'ks_OnRtnOrder:', repr(pOrder)
     #报单操作请求
     pOrder = KSUserApiStruct.CThostFtdcOrderField()
     if pOrder.OrderStatus == KSUserApiType.THOST_FTDC_OST_NoTradeQueueing and int(
             PyString_AsString(pOrder.OrderSysID)) != 0:
         ord = KSUserApiStruct.CThostFtdcInputOrderActionField()
         # broker id
         ord.BrokerID = broker_id
         # investor ID
         ord.InvestorID = investor_id
         # order action refernce
         ord.OrderActionRef = 000000000001
         # order reference
         ord.OrderRef = pOrder.OrderRef  # *必传1
         # front id
         ord.FrontID = pOrder.FrontID  # *必传2
         # session id
         ord.SessionID = pOrder.SessionID  # *必传3
         # 或者
         # exchange ID
         ord.ExchangeID = pOrder.ExchangeID  # *必传1
         # action order ID
         ord.OrderSysID = pOrder.OrderSysID  # *必传2
         #  action order num(unavailable yet)
         ord.VolumeChange = 0
         # instrument ID
         ord.InstrumentID = pOrder.InstrumentID
         # user id
         ord.UserID = investor_id
         self.requestid
         r = self.api.ReqOrderAction(ord, self.requestid)
         if r == 0: print u"报单操作请求: 成功\n"
         else: print u"报单操作请求: 失败\n"
Exemple #2
0
    def OnRtnOrder(self, pOrder):
        print 'ks_OnRtnOrder:', repr(pOrder)
        #插入报单数据库
        '''
	connection=pymongo.Connection('localhost',27017)
	db=connection.commodityTrading
	res={"CombOffsetFlag":pOrder.CombOffsetFlag,"CombHedgeFlag":pOrder.CombHedgeFlag,"InstrumentID":pOrder.InstrumentID,"OrderPriceType":pOrder.OrderPriceType,"Direction":pOrder.Direction,"OrderRef":pOrder.OrderRef,"LimitPrice":pOrder.LimitPrice,"VolumeTotalOriginal":pOrder.VolumeTotalOriginal,"RequestID":pOrder.RequestID,"InsertTime":pOrder.InsertTime,"InsertDate":pOrder.InsertDate}
	db.RtnOrder.insert(res)
	'''
        #报单操作请求
        pOrder = KSUserApiStruct.CThostFtdcOrderField()
        if pOrder.OrderStatus == KSUserApiType.THOST_FTDC_OST_NoTradeQueueing and int(
                str(pOrder.OrderSysID)) != 0:
            ord = KSUserApiStruct.CThostFtdcInputOrderActionField()
            # broker id
            ord.BrokerID = self.broker_id
            # investor ID
            ord.InvestorID = self.investor_id
            # order action refernce
            ord.OrderActionRef = 000000000001
            # order reference
            ord.OrderRef = pOrder.OrderRef  # *必传1
            # front id
            ord.FrontID = pOrder.FrontID  # *必传2
            # session id
            ord.SessionID = pOrder.SessionID  # *必传3
            # 或者
            # exchange ID
            ord.ExchangeID = pOrder.ExchangeID  # *必传1
            # action order ID
            ord.OrderSysID = pOrder.OrderSysID  # *必传2
            #  action order num(unavailable yet)
            ord.VolumeChange = 0
            # instrument ID
            ord.InstrumentID = pOrder.InstrumentID
            # user id
            ord.UserID = investor_id
            self.requestid
            r = self.api.ReqOrderAction(ord, self.requestid)
            if r == 0: print u"报单操作请求: 成功\n"
            else: print u"报单操作请求: 失败\n"