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

我写了个cta策略的测试程序,在ini方法里面调用get_postion,为啥一直报错,这不是回测,是盘中直接跑的
def on_init(self):
self.write_log("策略初始化开始")
self.cta_engine.get_position(vt_symbol)
"""
Callback when strategy is inited.
"""
self.write_log("策略初始化结束")

报错内容:AttributeError: 'CtaEngine' object has no attribute 'get_position'。
同时还有个问题,vnpy里面有没有取持仓明细的函数,同一个合约持仓数不是合计起来的,是按照成交明细分开的。因为我要知道每笔持仓的价格,而不是持仓均价

Member
avatar
加入于:
帖子: 101
声望: 8

报错的原因是CTA引擎里没有get_position()函数。不推荐在CTA策略里获取账户的实时持仓。如果想获得每笔交易的明细可以把每笔交易的数据保存到本地。

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

沪公网安备 31011502017034号

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