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

我在写脚本策略的时候使用engine.get_position函数获取持仓情况,short_2 = engine.get_position(vt_positionid='au2002.SHFE.Direction.SHORT'),但是返回的都是none,无法获得持仓情况,但实际上已经开了好几手空仓,这是什么情况?

Administrator
avatar
加入于:
帖子: 4500
声望: 320

au2002.SHFE.SHORT

这么写试试

Member
avatar
加入于:
帖子: 51
声望: 0

没有持仓返回值不应该是0吗?为什么我用au2002.SHFE.SHORT返回值还是none啊,还是说我开仓之后才返回值?

Member
avatar
加入于:
帖子: 173
声望: 32

你可以使用

engine.get_all_positions()

试试

Member
avatar
加入于:
帖子: 51
声望: 0

这个不是所有的持仓吗,您的意思是从这里面获取我需要标的的持仓对吗?

Member
avatar
加入于:
帖子: 173
声望: 32

我的意思是,看看这样是不是也查不到

Member
avatar
加入于:
帖子: 51
声望: 0

哈哈哈,这个函数居然好使,不过为什么啊

Administrator
avatar
加入于:
帖子: 4500
声望: 320

没有持仓返回是None对象,具体函数调用的参数和返回值,请查看文档

Member
avatar
加入于:
帖子: 5
声望: 0

是不是这样写?

def on_init(self):
"""
Callback when strategy is inited.
"""
self.pos=self.engine.get_all_positions()
self.write_log("策略初始化")
self.load_bar(10)

Member
avatar
加入于:
帖子: 14
声望: 0

yn-苟氏杰 wrote:

是不是这样写?

def on_init(self):
"""
Callback when strategy is inited.
"""
self.pos=self.engine.get_all_positions()
self.write_log("策略初始化")
self.load_bar(10)

请问这个在2.1.4版本里是不是self.engine 改名了,怎么我引用出错

Member
avatar
加入于:
帖子: 4622
声望: 284

你是用的脚本模式吗?

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

沪公网安备 31011502017034号

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