vn.py官网
开源量化社区
Member
avatar
加入于:
帖子: 49
声望: 1

看engine里面的代码,应该是只要有stoporder发出就会被触发,但是我在on_stop_order里面打印stop_order的信息,只有状态为CANCLE或者是TRIGGERED时候才会打印,没有WAITING状态。是为什么呢?
另外,我在on_tick里面设置了接到第一个TICK的时候就根据之前收盘时候存储的未成交stoporder信息,重新发一个出去,结果第一个tick发布出去,貌似要等若干个tick才会发出,不知道为什么。

Administrator
avatar
加入于:
帖子: 4871
声望: 283

请问具体用的什么接口呢?

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

就是CTP,cta回测的时候也是同样的现象,打印不出来状态为WAITING的stoporder。实盘刚测试了一下,能够打印到,但是在on_tick里面不是第一个tick就能触发。我在执行sell的语句下面加上一个print,结果只有print输出,没有order出来

Member
avatar
加入于:
帖子: 470
声望: 24

我们这边试了下stop_order是有waitting状态的。
description

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

青青子荆 wrote:

我们这边试了下stop_order是有waitting状态的。
description

description
我现在实盘能打印出来了,但是回测还是不行,没有waiting

Member
avatar
加入于:
帖子: 2621
声望: 157

可以自行去看vnpy,app.cta_strategy.backtesting的代码,推送on_stop_order只有这两种状态推送,因为K线回测没有tick数据传进来,自然就没有waitting状态,一分钟一分钟的推,不是已触发就是取消了

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

谢谢!明白了!

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

沪公网安备 31011502017034号