def OnRspUserLogin(self, pRspUserLogin, pRspInfo, nRequestID, bIsLast): """登录请求响应""" if pRspInfo.ErrorID == 0: self.front_id = pRspUserLogin.FrontID self.session_id = pRspUserLogin.SessionID self.is_login = True self.logger.info("CtpMiniTrader Login Successfully:{}".format( pRspInfo.ErrorMsg.decode("gbk"))) self.shfe_time = pRspUserLogin.SHFETime self.dce_time = pRspUserLogin.DCETime self.czce_time = pRspUserLogin.CZCETime self.ffex_time = pRspUserLogin.FFEXTime self.ine_time = pRspUserLogin.INETime self.login_time = pRspUserLogin.LoginTime req = ApiStruct.QrySettlementInfoConfirm( BrokerID=self.broker_id, InvestorID=self.investor_id, ) self.ReqSettlementInfoConfirm(req, self.request_id) # 否则,推送错误信息 else: self.logger.error("error_id: {}, error_msg:{}".format( pRspInfo.ErrorID, pRspInfo.ErrorMsg.decode('gbk'))) # 在某些情况下,会出现无法自动连接 # 这里我们手动进行一下重连 time.sleep(60) self.connect(self.user_id, self.password, self.broker_id, self.trade_front)
def OnRspUserLogin(self, pRspUserLogin, pRspInfo, nRequestID, bIsLast): """登录请求响应""" if pRspInfo.ErrorID == 0: self.front_id = pRspUserLogin.FrontID self.session_id = pRspUserLogin.SessionID self.is_login = True self.logger.info("交易服务器登录完成:{}".format( pRspInfo.ErrorMsg.decode("gbk"))) # 确认结算信息 self.req_id += 1 req = ApiStruct.QrySettlementInfoConfirm( BrokerID=self.broker_id, InvestorID=self.investor_id, ) self.ReqSettlementInfoConfirm(req, self.req_id) # 否则,推送错误信息 else: self.logger.error("error_id: {}, error_msg:{}".format( error.ErrorID, error.ErrorMsg.decode('gbk')))
def query_settlement_confirm(self): req = ApiStruct.QrySettlementInfoConfirm(BrokerID=self.broker_id, InvestorID=self.investor_id) self.requestid += 1 self.ReqQrySettlementInfoConfirm(req, self.requestid)
def get_settlement(self): req = ApiStruct.QrySettlementInfoConfirm( BrokerID=self.broker_id, InvestorID=self.investor_id, ) self.ReqSettlementInfoConfirm(req, self.request_id)