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

请看图

description

原来IF88是可以下载的,但是郑商的 MA 甲醇连续无法下载,
不只连续不能下载,改成 MA009 MA2009 也是无法下载的,请问有朋友遇到过这种情况吗?

Member
avatar
加入于:
帖子: 8
声望: 0

找到问题了,请管理员看一看,不知道是本地代码的问题,还是rq的问题?

本地代码如果用ma88.DCE 就可以下载 但是用 MA88.CZCE 就不行,但是MA(甲醇) 明明就是郑商所的品种啊

这是怎么回事呢?同时测试了 RM88.CZCE也不能下载,但是rm88.DCE 就可以。

希望开发者能看看,不然后面的人肯定也会遇到这个坑的

@用Python的交易员

description

Administrator
avatar
加入于:
帖子: 4191
声望: 235

大商所的合约代码英文部分是小写的。。。

你在下单交易时也要用小写的,期货常识

Member
加入于:
帖子: 81
声望: 0

MA不是大商所,是郑商所的。
我也碰到这个问题了,所有郑商所的数据都读取不了。

Member
加入于:
帖子: 81
声望: 0

问题找到了。
在vnpy.trader里的rqdata里,
class RqdataClient:
def to_rq_symbol(self, symbol: str, exchange: Exchange) -> str:
"""
CZCE product of RQData has symbol like "TA1905" while
vt symbol is "TA905.CZCE" so need to add "1" in symbol.
"""

    # Equity
    if exchange in [Exchange.SSE, Exchange.SZSE]:
        if exchange == Exchange.SSE:
            rq_symbol = f"{symbol}.XSHG"
        else:
            rq_symbol = f"{symbol}.XSHE"
    # Futures and Options
    elif exchange in [Exchange.SHFE, Exchange.CFFEX, Exchange.DCE, Exchange.DCE, Exchange.INE]

其中最后一行有两个DCE,把其中一个改成CZCE

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