关于position对象,为何没有6号的标的信息呢?

来源:7-6 量化交易策略实战--策略信息

慕容3139001

2023-01-29

按照老师的代码我跑了一下。按照代码:4号买入1000,5号卖出800,6号卖出200,7号又买入1000。为何独独6号的标的信息没有呢?下面的一个周期循环也是如此,即卖出200的那天没有标的信息打印。由于篇幅所限,我只贴出了要紧信息。非常感谢!图片描述

写回答

1回答

meteor2022

2023-01-29

//img.mukewang.com/szimg/63d7e7d20990610809740293.jpg

同学,不知到你所用的IDE是不是聚宽平台在线的IDE,6号因为持仓数量只有200,是不足以满足策略中平仓800的要求,系统会系统抛出error,并把平仓数量自动调整为200。

0
1
慕容3139001
策略就是你写的策略,如下: def initialize(context): g.security = "000001.XSHE" def handle_data(context, data): if g.security not in context.portfolio.positions: # 下单1000股 order(g.security, 1000) else: # 卖出800股 order(g.security, -800) print(type(context.portfolio.long_positions)) for position in list(context.portfolio.long_positions.values()): print("标的:{0},总仓位:{1},标的价值:{2}, 建仓时间:{3}".format(position.security, position.total_amount, position.value,position.init_time))
2023-01-30
共1条回复

Python 量化交易工程师养成实战-金融高薪领域

带你走进前景可观的金融量化开发

678 学习 · 105 问题

查看课程