VeighNa量化社区
你的开源社区量化交易平台
Member
avatar
加入于:
帖子: 26
声望: 0

最近simnow又关网了。用n-sight代替。几乎成功。进程启动出错 如下:
2022-07-29 06:50:26 --------------------------------------------------
2022-07-29 06:50:26 VeighNa Trader进程启动
2022-07-29 06:50:31 C:\veighna_studio\Lib\site-packages\iFinDPy.pth
2022-07-29 06:57:59 KeyError: ('SGE',)

At:
C:\veighna_studio\lib\site-packages\vnpy_ctp\gateway\ctp_gateway.py(603): onRspQryInstrument

2022-07-29 06:57:59 KeyError: ('SGE',)
2022-07-29 06:50:26 --------------------------------------------------
2022-07-29 06:50:26 VeighNa Trader进程启动
2022-07-29 06:50:31 C:\veighna_studio\Lib\site-packages\iFinDPy.pth
2022-07-29 06:57:59 KeyError: ('SGE',)

At:
C:\veighna_studio\lib\site-packages\vnpy_ctp\gateway\ctp_gateway.py(603): onRspQryInstrument

2022-07-29 06:57:59 KeyError: ('SGE',)
如何解决,而且很奇怪,错误应是n-sight的数据格式不符合vnpy软件,为啥vnpy却拦下错误,啥原因?
有3张截图贴不上本文。

Member
avatar
加入于:
帖子: 1631
声望: 117

这个SGE是上海黄金交易所吧,CTP默认不支持的

Member
avatar
加入于:
帖子: 1631
声望: 117

可以自己在vnpy_ctp/ctp_gateway.py中添加对这个交易所的映射

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

MTF wrote:

可以自己在vnpy_ctp/ctp_gateway.py中添加对这个交易所的映射
我才学python不会填加,也找不到 vnpy_ctp/ctp_gateway.py ,

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

请教;我是运行下载的3.2.0程序,即使在源码 vnpy_ctp/ctp_gateway.py 加了映射,也运行不到它呀,
就是怎样把源码编译成安装程序,

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

尽管提示错误,经实际运行,不影响使用。n-sight的CTP模拟系统可以代替simnow。

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

既然n-sightCTP模拟接口,能够替补simnow。那么就去注册 https://www.n-sight.com.cn/ 也是免费使用。

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

你好, 需要下载n-sight的动态库替换本地的动态库吗?

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

啥都不需要,只要n-sight给的账号,密码,两个服务器地址,一个·商家代码10010
description

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

谢谢你。测试了一下确实可以用。

比用 TTS 仿真方便多了,搞不明白TTS为什么还要替换本地DLL。

另外,你上面提到的 类似 “KeyError: ('SGE',)”的错误·, 我是修改了 ctp_gateway.py :
if product => if product and data["ExchangeID"] in EXCHANGE_CTP2VT:
就没有问题了·。

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

我也修改了ctp_gateway.py但没改对,出错如下:packages\vnpy_ctp\gateway\ctp_gateway.py", line 600
if product => if product and data["ExchangeID"] in EXCHANGE_CTP2VT:
^
SyntaxError: invalid syntax。能否把改那段复制,如我这样改的 """合约查询回报"""
product: Product = PRODUCT_CTP2VT.get(data["ProductClass"], None)
if product => if product and data["ExchangeID"] in EXCHANGE_CTP2VT:

    # if product:
        contract: ContractData = ContractData(
            symbol=data["InstrumentID"],
Member
avatar
加入于:
帖子: 37
声望: 1

我把截图放这里吧, 就改了 if product 这一行代码。

description

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

谢谢,按你的改没问题了。
我在学习 同花顺iFinDPy.py模块 上看到,作者提示要和ShellExport.dll一起使用,是否可回答你的换.dll问题。
能否也研究下用同花顺的免费的简易版的历史数据问题,我曾得到过CU2009.SHFE和AL2209.SHFE二个历史数据,
但不明白合约字母为什么要大写·。而且只得到2个。是用vnpy的历史数据管理下载的。当时同花顺数据服务也初始化成功了
再后来就啥都不行了。我找不到原因,

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

耍大牌两个simnow和ricequant终于解决了1个替补。剩下就历史数据了,有了2个数据就可以静心学习vnpy。

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

建议只是个弱弱的建议,下一版取消simnow和ricequant的默认待遇,和其他模拟系统,数据公司同等级别。虽然米筐公司性价比高。
因为RQData经常跳出来影响试vnpy。

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

设定iFinDpY数据服务后,没成功出现
2022-08-09 12:15:07 VeighNa Trader进程启动
2022-08-09 12:15:08 找不到数据服务驱动vnpy_iFinD,使用默认的RQData数据服务
2022-08-09 12:18:07 C:\veighna_studio\lib\site-packages\rqdatac\client.py:197: UserWarning: rqdatac is already inited. Settings will be changed.
warnings.warn("rqdatac is already inited. Settings will be changed.", stacklevel=0)
怎么解决?

Member
avatar
加入于:
帖子: 716
声望: 63

需要iFinDPy包,在http://ft.10jqka.com.cn 购买后才可以获得安装文件

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

我有免费账户和密码,并下载了iFinDPy包和包需要的ShellExport.dll库。作为datafeed也见到数据服务初始化成功的提示,而且还下载了2个历史数据。
见#13.我觉得编程水平高的人研究下有希望。

Member
avatar
加入于:
帖子: 5005
声望: 302

是填ifind不是iFinD

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

我在datafeed.name项填的是ifind,用户名和密码都是同花顺公司给的。数据服务曾经下载过二个历史数据仅二个。后来就不行了。不知道啥原因。

19楼,你有ifind数据服务的成功经验吗,请介绍下。那位用过同花顺的历史数据,请指教。

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

沪公网安备 31011502017034号

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