vn.py量化社区
By Traders, For Traders.
Member
avatar
加入于:
帖子: 15
声望: 1

在房间里闷了好久跑数据写策略,不知不觉已经到了中秋佳节。。。各位中秋愉快啊~

在使用strategy模块写策略的过程中,发现2个也许是bug的地方。不知道这种东西是不是应该写在github上比较有效率,反正github暂时不太会用,所以先放到这里来。。

我用的版本是2.0.6,继承CtaTemplate模块来写的策略,交易所连的是BitMex。

走过路过的大神请帮忙看一下:

问题1: 得不到tick的成交量数据

下面是on_tick中用self.write_log(tick)得到的一个数据实例:

TickData(gateway_name='BITMEX', 
    symbol='XBTUSD', 
    exchange=<Exchange.BITMEX: 'BITMEX'>, 
    datetime=datetime.datetime(2019, 9, 12, 13, 45, 3, 252000), 
    name='XBTUSD', 
    volume=0,                # 看这里
    open_interest=0, 
    last_price=10300, 
    last_volume=0,        # 看这里
    limit_up=0, 
    limit_down=0, 
    open_price=0, 
    high_price=0,
    low_price=0, 
    pre_close=0, 
    bid_price_1=10300, 
    bid_price_2=10299.5, 
    bid_price_3=10299, 
    bid_price_4=10298.5, 
    bid_price_5=10298, 
    ask_price_1=10300.5, 
    ask_price_2=10301, 
    ask_price_3=10301.5, 
    ask_price_4=10302, 
    ask_price_5=10302.5, 
    bid_volume_1=2444582, 
    bid_volume_2=13441, 
    bid_volume_3=33147, 
    bid_volume_4=24672, 
    bid_volume_5=520860, 
    ask_volume_1=648217, 
    ask_volume_2=12031, 
    ask_volume_3=15579, 
    ask_volume_4=34401, 
    ask_volume_5=599)

可以看到,里面涉及到交易量的有两个字段:volume 和 last_volume,等于0~~~
嗯,有的tick没有发生交易,所以有的tick的volume或last_volume是0嘛,不奇怪(这点赞一个,bids和asks变化都能通过on_tick获得,实在是太美妙),但这两个东西一直为0怎么回事。。。一直为0的话,就没法得知tick成交量了 ~

问题2: 撤单失败

【此问题已自行解决,是撤销的字段问题;ID是由order.gateway_name和order.orderid组成,而不只是order.orderid;关闭】

就这样,佳节共度~~

Member
avatar
加入于:
帖子: 15
声望: 1

论坛支持chrome拖拽上传图片了,赞一个~~

Administrator
avatar
加入于:
帖子: 4028
声望: 221

bitmex的数据推送的原始数据就没有成交量字段,所以没办法了

Member
avatar
加入于:
帖子: 15
声望: 1

用Python的交易员 wrote:

bitmex的数据推送的原始数据就没有成交量字段,所以没办法了

竟然是这样。。。。。。。。。。

© 2015-2019 上海韦纳软件科技有限公司
备案服务号:沪ICP备18006526号-3