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

self.main_engine.connect(setting_ctp, "CTP")
sleep(10)
self.pos_symbol = self.main_engine.get_symbol_position(symbol=self.vt_symbol.split('.')[0])
if self.possymbol: self.price_cost = self.main_engine.get_position(vt_positionid=f"{self.vt_symbol}.{Direction.LONG.value}").price_
self.pnl = self.main_engine.get_position(vt_positionid=f"{self.vt_symbol}.{Direction.LONG.value}").pnl
self.vol = self.main_engine.get_position(vt_positionid=f"{self.vt_symbol}.{Direction.LONG.value}").volume
elif self.pos_symbol==-1:
self.price_cost = self.main_engine.get_position(vt_positionid=f"{self.vt_symbol}.{Direction.SHORT.value}").price
self.pnl = self.main_engine.get_position(vt_positionid=f"{self.vt_symbol}.{Direction.SHORT.value}").pnl
self.vol = self.main_engine.get_position(vt_positionid=f"{self.vt_symbol}.{Direction.SHORT.value}").volume

请问 程序经常会报 “NoneType” object has no attribute "price"
这种问题 有时出现有时不出现
是跟 我上句 get_symbol_position 读取持仓后 紧接着又读取一次 相关么

Member
avatar
加入于:
帖子: 4703
声望: 287

position = self.main_engine.get_position(vt_positionid=f"{self.vt_symbol}.{Direction.SHORT.value}")
pnl = position.pnl
vol = position.volume
不就可以了吗
报None是get_position获取到None了吧

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

沪公网安备 31011502017034号

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