def sendOrder(self, symbol, direction, priceType, offset, price, volume): """发单""" self.reqID += 1 self.orderRef += 1 req = dict() req['InstrumentID'] = symbol req['LimitPrice'] = price req['VolumeTotalOriginal'] = volume req['OrderPriceType'] = priceType req['Direction'] = direction req['CombOffsetFlag'] = offset req['OrderRef'] = str(self.orderRef) req['InvestorID'] = self.userID req['UserID'] = self.userID req['BrokerID'] = self.brokerID req['CombHedgeFlag'] = defineDict['THOST_FTDC_HF_Speculation'] # 投机单 req['ContingentCondition'] = defineDict['THOST_FTDC_CC_Immediately'] # 立即发单 req['ForceCloseReason'] = defineDict['THOST_FTDC_FCC_NotForceClose'] # 非强平 req['IsAutoSuspend'] = 0 # 非自动挂起 req['TimeCondition'] = defineDict['THOST_FTDC_TC_GFD'] # 今日有效 req['VolumeCondition'] = defineDict['THOST_FTDC_VC_AV'] # 任意成交量 req['MinVolume'] = 1 # 最小成交量为1 self.reqOrderInsert(req, self.reqID) logger.debug('insert new order:%s'%req) return str(self.orderRef)
def onRtnTrade(self, data): """成交回报""" logger.debug(u'成交回报, onRtnTrade,%s'%data.get('StatusMsg', '').decode('gbk')) self._server.onTrade(data)