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

请教一下,使用CTP 接口,如果想设计一个简单的追单逻辑。

我想买10手 @ tick.ask_price_1 价格,然后每隔10秒钟 看一下 我还差 几手没Fill,然后挂更新后的tick.ask_price_1

这种情况有简单的代码么?就是不用改VNPY 源代码的。我怕我改错了。
之前看到这篇,但实在是太复杂了。
https://www.vnpy.com/forum/topic/3133-vn-pyshe-qu-jing-xuan-21-tickji-de-wei-tuo-jing-xi-hua-guan-li?page=1

另外这种回测的话,能回测么?还是只能靠实盘去检验挂单有没有问题呢?

Member
加入于:
帖子: 81
声望: 0

或者有没有可能 我在CTA 模块中 调用Algo Trading 模块的 某个算法来达到追单或者类似的效果呢?比如TWAP 如果能调用的话,是不是能保证比如20秒内分5次执行完成这样?感觉也是类似效果了。主要就是怕大单一次搞不定,就需要追单。

Member
加入于:
帖子: 81
声望: 0

另外 我所有挂出去的单的信息,是不是在 PositionHolding Class 里的 self.active_orders: Dict[str, OrderData] = {} 里面呀? 这个在CTA Strategy代码里面如何取到呀?

Member
avatar
加入于:
帖子: 5078
声望: 306

不能,tick回测撮合不看盘口数量的;
都会通过策略on_order函数推送。

Member
加入于:
帖子: 81
声望: 0

xiaohe wrote:

不能,tick回测撮合不看盘口数量的;
目前官方版本不支持cta策略模块调用算法交易模块;
都会通过策略on_order函数推送。

非常感谢! 您是说 系统可以通过 on_order 的函数推送所有当前active_orders 的信息么?
能给我一个实例代码么?让我在on_order 函数里面取到 有关order 信息的Dictionary

Member
avatar
加入于:
帖子: 5078
声望: 306

不是,on_order是每次策略的委托状态变化才会推送。engine的strategy_orderid_map字典保存了不同策略的active_orders。
请基于自己需求自行实现了

Member
加入于:
帖子: 81
声望: 0

谢谢! strategy_orderid_map 的具体路径能告诉我一下么?

另外如何在CtaTemplate Class 里面调用呀?

xiaohe wrote:

不是,on_order是每次策略的委托状态变化才会推送。engine的strategy_orderid_map字典保存了不同策略的active_orders。
请基于自己需求自行实现了

Member
avatar
加入于:
帖子: 5078
声望: 306

vnpy_ctastrategy.engine

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

沪公网安备 31011502017034号

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