VeighNa量化社区
你的开源社区量化交易平台
ty
ty's Avatar
Member
离线
20 帖子
声望: 0

我用的是1.4版本,一直用新版,这次穿透式监管也只是升级了ctpgateway。老版本大家都没碰到这种情况吗?
总是隔上十来次交易就来一次这种bug,这次是两个品种的self.pos同时出现多一倍的情况。没有全程人工盯盘,我一直没有抓住现场。就是ctpengine里的这点代码,怎么就出错呢?

----------------------------------------------------------------------

def processTradeEvent(self, event):
    """处理成交推送"""
    trade = event.dict_['data']

    if trade.vtOrderID in self.orderStrategyDict:
        strategy = self.orderStrategyDict[trade.vtOrderID]

        # 计算策略持仓
        if trade.direction == DIRECTION_LONG:
            strategy.pos += trade.volume
        else:
            strategy.pos -= trade.volume

        self.callStrategyFunc(strategy, strategy.onTrade, trade)

    # 更新持仓缓存数据
    if trade.vtSymbol in self.tickStrategyDict:
        posBuffer = self.posBufferDict.get(trade.vtSymbol, None)
        if not posBuffer:
            posBuffer = PositionBuffer()
            posBuffer.vtSymbol = trade.vtSymbol
            self.posBufferDict[trade.vtSymbol] = posBuffer
        posBuffer.updateTradeData(trade)            

#----------------------------------------------------------------------

self.pos应该是在策略收到成交回报后才会更新,如果策略收到成交回报以后,发生onsession disconnected的状况,是不是恢复连接后策略会再收到一次成交回报导致self.pos增加一倍呢?

请问2.02版本里说“加回了对mongdodb数据库的支持”,那么在回测和交易时可以“选择”采用来自mongodb的数据吗?
之前花了很多精力让数据可以自动维护都是基于之前的mongdodb数据库,而且里面还有很多数据,一下子不能用了很麻烦。

已经用VNPY实盘两年多了,一直闭门造车,只关注测略算法方面,是vnpy的受益者,还在用着1.X的版本,一直还跑的不错。今天突然接到通知说要来看穿式监管,看了下期货公司的通知,好像要补充动态链接库来进行信息采集和认证等步骤。不知道交易员大佬们怎么处理这个问题呢?是(1)统一打补丁?还是(2)发一个开源补丁,让使用者以自编客户端身份自己去认证?不知道第一个选项,是不是需要交易员承担额外成本呢?这个选择对于将来vnpy的发展应该是更有利的。使用者成员也可以考虑进行适当的支持。
还有个问题,之前的维恩的派是不是不用了啊?好像之前的账户登不上去了。

© 2015-2022 微信 18391752892
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

【用户协议】
【隐私政策】
【免责条款】