diff --git a/.gitignore b/.gitignore index 2601a9f6..0c5cb077 100644 --- a/.gitignore +++ b/.gitignore @@ -45,6 +45,7 @@ Release/ vn.ctp/build/* vn.lts/build/* .idea +.vscode .gitignore vn.trader/ctaAlgo/data/* diff --git a/vnpy/data/shcifco/vnshcifco.py b/vnpy/data/shcifco/vnshcifco.py index d72ded9a..34ae549d 100644 --- a/vnpy/data/shcifco/vnshcifco.py +++ b/vnpy/data/shcifco/vnshcifco.py @@ -132,14 +132,15 @@ class ShcifcoApi(object): barData = barStr.split(',') d = { 'symbol': barData[0], - 'date': barData[1], + # 'date': barData[1], # trading day 'time': barData[2], 'open': float(barData[3]), 'high': float(barData[4]), 'low': float(barData[5]), 'close': float(barData[6]), 'volume': int(barData[7]), - 'openInterest': int(barData[8]) + 'openInterest': int(barData[8]), + 'date': barData[9] # natural day } barList.append(d) diff --git a/vnpy/trader/gateway/lhangGateway/lhangGateway.py b/vnpy/trader/gateway/lhangGateway/lhangGateway.py index 174906e6..8e43d84d 100644 --- a/vnpy/trader/gateway/lhangGateway/lhangGateway.py +++ b/vnpy/trader/gateway/lhangGateway/lhangGateway.py @@ -180,7 +180,7 @@ class LhangApi(LhangApi): err = VtErrorData() err.gatewayName = self.gatewayName err.errorMsg = str(error) - err.errorTime = datetime.now().strftime('%H:%M:%S') + err.errorTime = datetime.now().strftime('%H:%M:%S.%f')[:-3] self.gateway.onError(err) #---------------------------------------------------------------------- @@ -236,7 +236,7 @@ class LhangApi(LhangApi): tick.askPrice5, tick.askVolume5 = data['asks'][4] now = datetime.now() - tick.time = now.strftime('%H:%M:%S') + tick.time = now.strftime('%H:%M:%S.%f')[:-3] tick.date = now.strftime('%Y%m%d') self.gateway.onTick(tick) @@ -356,7 +356,7 @@ class LhangApi(LhangApi): trade.direction = order.direction trade.offset = order.offset trade.exchange = order.exchange - trade.tradeTime = datetime.now().strftime('%H:%M:%S') + trade.tradeTime = datetime.now().strftime('%H:%M:%S.%f')[:-3] self.gateway.onTrade(trade) @@ -447,7 +447,7 @@ class LhangApi(LhangApi): err = VtErrorData() err.gatewayName = self.gatewayName err.errorMsg = u'链行接口仅支持限价单' - err.errorTime = datetime.now().strftime('%H:%M:%S') + err.errorTime = datetime.now().strftime('%H:%M:%S.%f')[:-3] self.gateway.onError(err) return None @@ -480,7 +480,7 @@ class LhangApi(LhangApi): order.offset = OFFSET_UNKNOWN order.price = req.price order.volume = req.volume - order.orderTime = datetime.now().strftime('%H:%M:%S') + order.orderTime = datetime.now().strftime('%H:%M:%S.%f')[:-3] order.status = STATUS_UNKNOWN self.workingOrderDict[localID] = order diff --git a/vnpy/trader/vtEngine.py b/vnpy/trader/vtEngine.py index ab52c066..dc7a9a2f 100644 --- a/vnpy/trader/vtEngine.py +++ b/vnpy/trader/vtEngine.py @@ -350,7 +350,7 @@ class DataEngine(object): self.orderDict[order.vtOrderID] = order # 如果订单的状态是全部成交或者撤销,则需要从workingOrderDict中移除 - if order.status == STATUS_ALLTRADED or order.status == STATUS_CANCELLED: + if order.status in [STATUS_ALLTRADED, STATUS_REJECTED, STATUS_CANCELLED]: if order.vtOrderID in self.workingOrderDict: del self.workingOrderDict[order.vtOrderID] # 否则则更新字典中的数据