试试这样,详细请查楼上文档
from tqsdk import TqApi, TqAccount
api = TqApi(auth="信易账户,账户密码")
position = api.get_position()
# 假设已知持仓是SHFE.hc2101
hc = position.get("SHFE.hc2101")
if hc:
print("hc浮动盈亏:", hc['float_profit'])
print("hc持仓手数:", hc.pos)
# 假设未知持仓是SHFE.rb2101
rb = position.get("SHFE.rb2101")
if rb:
print("rb浮动盈亏:", rb['float_profit'])
print("rb持仓手数:", rb.pos)
else:
print("SHFE.rb2101未持仓")
# 如果未知
l = list(position)
for x in l:
open_price = position[x].open_price_long if position[x].pos>0 else position[x].open_price_short
print(f"当前持仓{x},手{position[x].pos},开均价{open_price}")
print("下面方法等效")
for k,i in position.items():
open_price = i.open_price_long if i.pos>0 else i.open_price_short
print(f"当前持仓{k},手{i.pos},开均价{open_price}")
api.close()
ringo 发表新评论 2020年9月22日
感谢一直以来在论坛的热心回帖,方便的话能加我qq :3456869223,赠送你专业版试用时长