我是使用纯源码的方式搭建,结构如下图:
并且使用client方式连接,设置如下:
启动后连接xt服务,提示如下:
另外,我使用的是券商提供的QMT测试账号,请问哪一步没有做对?
最后请问vnpy+券商QMT能否进行实盘交易?
我是使用纯源码的方式搭建,结构如下图:
并且使用client方式连接,设置如下:
启动后连接xt服务,提示如下:
另外,我使用的是券商提供的QMT测试账号,请问哪一步没有做对?
最后请问vnpy+券商QMT能否进行实盘交易?
塞北交易猿 wrote:
我是使用纯源码的方式搭建,结构如下图:
并且使用client方式连接,设置如下:
启动后连接xt服务,提示如下:
另外,我使用的是券商提供的QMT测试账号,请问哪一步没有做对?
最后请问vnpy+券商QMT能否进行实盘交易?
vnpy_xt的包里面有2个python文件 ,一个是gateway,一个是datafeed,你在全局里面是要用到这2个文件的,QMT的路径在gateway文件里面是有加一个后缀的,需要注释掉,实盘的话是要用到mini qmt这个客户端开着,完全可以实盘交易,但前提你得会改,最好自己建一个包,用run.py去跑,尽量不要改原文件,一更新就全没了。
张小白556 wrote:
塞北交易猿 wrote:
我是使用纯源码的方式搭建,结构如下图:
并且使用client方式连接,设置如下:
启动后连接xt服务,提示如下:
另外,我使用的是券商提供的QMT测试账号,请问哪一步没有做对?
最后请问vnpy+券商QMT能否进行实盘交易?
vnpy_xt的包里面有2个python文件 ,一个是gateway,一个是datafeed,你在全局里面是要用到这2个文件的,QMT的路径在gateway文件里面是有加一个后缀的,需要注释掉,实盘的话是要用到mini qmt这个客户端开着,完全可以实盘交易,但前提你得会改,最好自己建一个包,用run.py去跑,尽量不要改原文件,一更新就全没了。
非常感谢你的回复!
vnpy_xt包里确实有这两个文件,据我所知datafeed是通过动态加载的(vnpy/trader/datafeed.py:get_datafeed(),通过import_module(module_name)动态导入的),module_name来自于全局SETTINGS字典里,也就是ui中配置菜单里对应的设置,所以datafeed是不需要单独在全局使用的(个人理解)
关于你说“QMT的路径在gateway文件里面是有加一个后缀的,需要注释掉”,这个我没有找到
目前我的问题处在连接,看过源码之后我发现调用的是xtquant的datacenter中的函数,在调用xtdc.init()之前调用了xtdc.set_token(),但实际上从我ui菜单中也能看出我的设置为空,因为我想以client模式登录,所以这里导致连接失败,但我不知道如何以正确的方式实现client模式登录
最后通过多次调试,我发现账户可以连接了,但连接datacenter还是失败(失败原因:token为空,但我使用的是券商的qmt测试账号,所以没有token),另外通过看迅投文档了解到,貌似datacenter只能通过token连接,也就是必须使用迅投账户才能连接
迅投研和券商的QMT在接口上是不同步的,比如token模式,券商应该是不支持的。使用需要修改源码,使用之前的连接方式,用AccoundId和QMT的路径连接。` def init_xtdc(self) -> None:
"""初始化xtdc服务进程"""
if not self.get_lock():
return
# # 设置token
# xtdc.set_token(self.token)
#
# # 开启使用期货真实夜盘时间
# xtdc.set_future_realtime_mode(True)
#
# # 执行初始化,但不启动默认58609端口监听
# xtdc.init(False)
#
# # 设置监听端口58620
# xtdc.listen(port=58620)`这里根据你的券商提供的开发文档修改一下。
券商miniqmt(极简模式)用这个维护:https://gitee.com/good-man-z/vnpy_xt 的 z-main分支,已经修改好了。
使用方法如下:
券商miniqmt连接
良人周 wrote:
券商miniqmt(极简模式)用这个维护:https://gitee.com/good-man-z/vnpy_xt 的 z-main分支,已经修改好了。
使用方法如下:
券商miniqmt连接
- 连接请先登录迅投极速交易终端,同时确保xtquant模块可以正常加载(点击【下载Python库】-【Python库下载】,下载完成后拷贝“Python库路径”下Lib\site-packages文件夹中的xtquant包到自己使用的Python环境的site_packages文件夹下)。
- 在Veighna Trader的【全局配置】处进行数据服务配置:
- datafeed.name:xt
- datafeed.username:client
- datafeed.password:留空
- 连接XT中配置:
- token:留空
- QMT路径:C:\国金QMT交易端模拟
- 资金账户:填写您在券商开户的资金账号
- 请注意以客户端方式连接时,需要保持迅投客户端的运行。
感谢,已经复现了。可以运行。
Ericwanzi wrote:
良人周 wrote:
券商miniqmt(极简模式)用这个维护:https://gitee.com/good-man-z/vnpy_xt 的 z-main分支,已经修改好了。
使用方法如下:
券商miniqmt连接
- 连接请先登录迅投极速交易终端,同时确保xtquant模块可以正常加载(点击【下载Python库】-【Python库下载】,下载完成后拷贝“Python库路径”下Lib\site-packages文件夹中的xtquant包到自己使用的Python环境的site_packages文件夹下)。
- 在Veighna Trader的【全局配置】处进行数据服务配置:
- datafeed.name:xt
- datafeed.username:client
- datafeed.password:留空
- 连接XT中配置:
- token:留空
- QMT路径:C:\国金QMT交易端模拟
- 资金账户:填写您在券商开户的资金账号
- 请注意以客户端方式连接时,需要保持迅投客户端的运行。
感谢,已经复现了。可以运行。
请问这个是不是要使用3.9.4版本?