Loading... > 如果做实盘, Order对象十分重要, 它对于订单成交数量和价格以及状态的记录需要与Broker同步并且有时需要提前计算出余额是否足够下单, 是否当前持仓在已没有今日可卖的股票余额等等. 在对Order进行二次开发的时候有必要对如下几点十分注意: ## 1. Order 包含 order.created 与 order.executed对象 他们都是OrderData对象, 存储了下单价格和下单数量信息(还有其他信息, 但相对来说没有他俩重要), 而created与executed的区别在于**一个记录原始报单, 一个记录实际成交单, 即: created.price和created.size是不会改变的, executed.price和executed.size是随着实际成交结果而变化的**. ## 2. size的值是可正可负的 在同步更新Broker传过来的成交size(下为: size_broker)和price(下为: price_broker)时: 1. 由于size_broker为累计正值(买卖方向并不会通过size的正负来体现), 但是在框架中size是用正负来表示买卖方向的, 那么意味着你需要判断订单执行的方向来修改size的正负. 2. 需要同步"变化值"而非"累计值", 即更新订单的成交记录, 在同步数据之前需要计算清楚size_broker的变化值, 它等于 size_broker - (created.size - executed.remsize) 3. executed.remsize可以判断当前订单是否已经全部执行完毕, 但它同样是有正负之分的, 所以需要同步带有方向的成交数据(size与price) > 以下为代码部分截图:  © 允许规范转载