☰
停止自动调仓,不等于仓位已经清零
2026/10/14 17:05:08 网站建设 项目流程

决定让期货策略停下来时,至少有三个问题:旧任务还会不会继续动作,它的未成交委托处理完没有,现在实际持有多少。停止任务是第一类决定,已经形成的持仓不会因为“停止”两个字就消失。

把任务状态与持仓数量分开

假设停止前看到了 2 手持仓,原任务还在向更多持仓调整,也可能有未成交委托。这时既不能预写停止后是 0 手,也不能预写一定仍是 2 手:取消处理期间仍可能收到成交回报,结束后的仓位要重新核对。

所以,“不再自动调仓”与“要不要调整现有仓位”,应当分别作决定。前者不能替代后者。

用 TqSdk 明确结束旧任务

使用天勤 TqSdk 的TargetPosTask时,建议用cancel与is_finished管理这次停止过程:先对旧实例调用cancel,继续通过wait_update推进,直到is_finished表示该任务结束。

取消会处理任务的未成交委托,但调用返回不等于整个过程已经完成。等待结束后,旧实例不再承担后续报撤单;不要只看到已经调用cancel,就把它当作所有动作都已停止。

这个入口的价值,是把“结束哪个调仓实例”表达清楚,而不是把任务状态冒充仓位结果。

后续目标,根据实际持仓另定

旧任务结束后,核对实际持仓。如果仍有另外的调仓需要,再按这次新的决定使用新实例、设置新目标;不应继续让已经取消的实例承担后续调整。

至于是保留仓位还是另作调整,不能由本文统一写成清零。把旧任务结束、委托处理和实际仓位核对分开,才能知道程序停止到了哪一步,也避免用一个“已结束”状态推断并不存在的平仓结果。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询