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

今天在调用get_tick的时候发现里面有几个返回值有点疑惑
description
此处的last_price是最新价吗
此处的pre_close_price是前一根tick的收盘价吗还是前一天的收盘价
我又用平安银行测试了一下,发现这两个值相差还蛮大的

description

如题,我和xtp接口的行情服务器+交易服务器均建立了正常连接,在订阅了平安银行的股票之后使用get_tick('000001.SZSE', use_df=True)想要返回tick信息,然而返回值一直为None,这个是什么原因导致的呢?程序截图和输出如下,请社区大佬们帮忙看看,是不是我程序哪里写的不对,还是接口设置错了
description

description

问题是这样的:
上午连接xtp接口后,我下了三次单,其中有一次出现了拒单的情况,在控制台中有相关的信息输出,即:"交易委托失败,代码11110000,信息10000”,经过查阅和询问相关xtp技术支持后得知这是模仿上交所拒单的情况。
但是,当我将整个程序停止运行之后,去掉下单部分代码重新运行后,上述的 拒单信息打印“交易委托失败,代码11110000,信息10000”再次出现了,然后我发现只要重新启动,即使代码只是连接了接口,没有做其他任何操作,也会打印这一行拒单提醒。
这其中的机制我比较困惑,难道说只要有拒单或其他的error信息,都会被存放到xtp那边的缓存里面,当再次连接xtp时就会再次打印出来吗?
截图如下:

description

不知道有没有其他朋友遇到这样的问题,或者了解里面的机制,求助一下各位!

发现源码中只有subscribe(),也就是订阅行情的部分,但没有取消订阅行情的部分,后来想自己加一下,发现主要是对接xtp的取消订阅接口函数不知道,于是蒙了一个结果果然失败了。如下图

description

想问一下如何实现unsubscribe()呢?(感觉需要再往下改动源码,估计我也没权限)
因为相关的策略持仓变动很快,我感觉如果一直只订阅不取消,会不会影响响应速度和内存占用呢?
不知道当时写这部分代码的时候为什么没有考虑取消订阅的部分,所以很困惑,求助一下社区的各位!

在测试XTP接口相关的代码时遇到了一个困惑,在对engine.connect_gateway(setting, "XTP")溯源时发现源头是在class XtpMdApi(MdApi)和class XtpTdApi(TdApi)中的connect()函数,处于好奇我看了一下内部的代码,发现这两个都调用了self.login_server(),如下图所示

description
然后我又去看了self.login_server()的代码,发现里面的有个变量n的计算方式很奇怪,如下图

description
我找了很久这个n = self.login()中的self.login()函数,并没有在XtpGateway.py或者gateway.py中找到这个函数,后来我打印了一下这个n,我发现在行情api中正常情况下这个n计算出来是0,而在交易api中正常情况下这个n计算出来是会话编号(如270532608)
所以,这个self.login()函数到底是啥呢,在哪可以看到这个函数结构呢?求助一下社区的各位~

我用的脚本模式(vnpy_scripttrader)
如下两行代码可以实现XTP接口的连接
engine = init_cli_trading([XtpGateway])
engine.connect_gateway(setting, "XTP")
然后整个程序都会一直保持在XTP连接的状态,相当于一个大背景。我想实现在另外一个文件中去调用这个已经连接XTP的engine,应该怎么实现呢?
大家的XTP连接和其他的操作(比如订阅行情、买卖单)之间是用多线程进行吗?
我之前用jupyter调试的时候,上下格子之间是共用变量和存储空间,所以我在上一个格子中连接了XTP之后,在下一个格子可以去实现下单、订阅行情等,调试起来很方便,但是如果pycharm中这些都得写在一个py文件里面,如果我想新增一个下单,我就得加上之后重新跑,感觉很麻烦,有没有什么好的解决办法呢

默认pip install vnpy_xtp下载的最新版中,在脚本模式下运行会出现from vnpy.trader.utility import get_folder_path, round_to, ZoneInfo 中ZoneInfo 库的报错
查阅了相关资料后解决办法是将vnpy_xtp回滚到之前的版本,于是我重新pip install vnpy_xtp==2.2.27.8,结果出现以下我没有办法解决的报错:

description

description

vnpy中与xtp对接的的股票的下单类型中的市价单,能正常下单吗,内部处理逻辑是怎样的?我看了一XTP官方文档中给出了多种市价单类型(如下图)
description
不知vnpy对接的是哪一种(之前有看过一个说法是,vnpy内部没有市价单的逻辑?)问问大伙

如题,我在脚本模式下,执行了engine.buy("600000.SSE", 8, 100)
源码中buy的默认参数为return self.send_order(vt_symbol, price, volume, Direction.LONG, Offset.OPEN, order_type),offset的方向是OPEN
但当我使用engine.get_order()获取该订单信息时,Offset方向为None
想问一下社区的朋友们这是什么原因导致的

description

description

求助:
我在继承CtaTemplate的基础上写了另一个CtaMarketTemplate
策略继承的是这个CtaMarketTemplate,策略所放的位置正确:C//USER//15646//strategies
但启动UI后找不到这个策略(其他直接继承CtaTemplate的策略都能找到)

是不是必须继承CtaTemplate的策略才能被识别呢?

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

沪公网安备 31011502017034号

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