4.72K 浏览
0

测试策略,使用TargetPosTask下单有持仓,此时停止策略后,重新运行,用print(”
position.volume_short={}”.format(position.volume_short))打印出来看到持仓为0,多仓也一样是为0。
另外,因为开始TargetPosTask下单时数量都为1,每次运行,比如在持有多仓1手情况下使用

target_pos.set_target_volume(1)下单,仍然发生开单,多头持仓变为2手,停止并重新运行多次策略,在满足开单条件时,持仓不断累加。
似乎在持仓判断机制上出了什么问题,求解

jxckk 已回答的问题 2021年6月29日

补充一下
以上问题在天勤软件及在VS code中运行TQSDK回测都没发现异常,只在天勤软件模拟盘中出现,无论0.9.13还是0.9.14都一样。

模拟盘老出问题,不敢实盘哪

0
  1. 关于”target_pos.set_target_volume(1)下单,仍然发生开单,多头持仓变为2手,停止并重新运行多次策略,在满足开单条件时,持仓不断累加“ 目前天勤内置的为TqSdk0.9.5,单元格未做分离,因此TargetposTask 每个策略是单独计算持仓,在天勤外部IDE运行时使用的TqSdk已为最新版本,取消隔离,因此每次是计算的账户净持仓,在下一版本天勤和TqSdk将同步为最新版本
  2. 请问您打印持仓是不是在天勤内部IDE打印?如果是的话,这是因为天勤内部获取position仓位信息暂时有bug,外部IDE使用TqSdk则没这个问题,下个版本将在本周内上线,修复这个bug

我好像记得之前安装天勤时看过内部的tqsdk已经是0.9.9了吧
如果是因为天勤内置的版本较低,是否考虑将天勤与tqsdk分离,毕竟一般都会另外安装较新版本python,一般tqsdk也是会升级到最新版本的.不同版本之间的tqsdk有一些不一样的,天勤更新会慢一点,一些bug也修复的不及时.

这个版本天勤内置TqSdk是0.9.5,从下版本开始以后天勤内的TqSdk都会采用最新版本,新版本预计今天或明天更新

您正在查看2个答案中的1个,单击此处查看所有答案。