发现交易机器人异常时,第一步应暂停所有新订单执行,同时完整保留信号、审批、下单和报错记录。先切断新增风险,再用原始证据还原过程,才能判断问题来自策略、数据、权限还是执行链路。
早上6:12,上海的林峥站在厨房里,手里还拿着刚冲好的咖啡。他白天做产品运营,晚上用一小部分资金交易加密资产。手机屏幕上多出一个他不记得批准过的仓位,浮动亏损仍在变化。
这是一个用于说明风险处置的合成情境,并非真实客户案例。
林峥的第一反应是立刻关闭程序,再删除那套“出问题的策略”。可他停住了。账户里还有两个待执行信号,其中一个会继续增加相同方向的敞口。如果下一笔订单进入市场,原本可控的异常可能变成连续加仓。他也可能因为匆忙清理记录,永远无法确认第一笔订单为什么出现。
此刻最重要的动作只有一个:冻结新的执行。
先阻止下一笔订单进入账户
异常发生后,交易者很容易把注意力全放在现有亏损上。真正迫近的风险往往是下一笔订单。
如果系统仍能接收信号、通过审批或调用交易接口,问题就没有停止。一次未经确认的执行,可能继续触发同类订单;错误的仓位数据,也可能让策略误以为账户风险仍有余量。每增加一步,事后调查都会更复杂。
冻结执行的范围应当足够明确:
- 禁止所有新订单提交。
- 取消尚未成交的挂单前,先记录订单状态。
- 暂停自动加仓、补仓和策略再入场。
- 保留只读访问,用于查看账户、信号和日志。
- 对已有仓位单独评估,不用统一动作代替判断。
已有仓位如何处理,取决于流动性、仓位大小、止损状态和账户总风险。机械地全部平仓,也可能制造新的损失。暂停新执行的目的,是阻止风险继续扩张,为人工判断争取空间。
审批门在这里承担的是边界控制。AI可以生成并排队交易信号,人必须批准或拒绝,订单才能继续。控制权不应在异常出现后才被临时找回,它应当存在于每一笔订单之前。
日志是证据,不是待清理的垃圾
6:17,林峥关闭了新订单权限。那个待加仓信号停在队列里,没有进入账户。
风险暂时被截住,但原因仍不清楚。他开始保存当时的账户快照,并按时间顺序核对记录:信号何时生成,依据了哪些数据,建议仓位是多少,审批状态是什么,订单参数何时形成,交易接口返回了什么。
这些记录必须保持原样。不要为了让页面“看起来正常”而重跑策略,也不要先修改参数再尝试复现。新的运行结果会污染现场,让原始状态和后续测试混在一起。
至少应保留以下证据:
- 信号生成时间、标的、方向和理由
- 建议仓位、止损条件与风险限制
- 批准、拒绝或等待审批的状态
- 订单创建、提交、成交和撤销时间
- 数据源输入及其时间戳
- 接口响应、报错和重试记录
- 当时的余额、持仓及未成交订单
- 策略版本、参数版本和权限变更记录
如果系统只能告诉你“订单已经成交”,却无法回答“谁批准了它、依据是什么、当时看到了哪些数据”,那就没有形成可审计的交易流程。347笔交易缺少的下单理由,以及它让周启付出的代价讨论的正是这种证据缺口。
按时间线定位失控点
日志保存后,调查应从时间线开始,而不是从猜测开始。
先确认系统当时认为账户里有什么,再确认它准备做什么。随后逐项检查:信号是否使用了过期数据,仓位计算是否读取了错误余额,审批状态是否被错误继承,失败订单是否触发重复提交,交易接口是否返回了部分成交。
还要区分“策略判断错误”和“执行越权”。策略可能给出一个糟糕建议,但只要订单停在审批队列里,人仍有拒绝权。执行越过审批,则是另一类问题,因为账户承担了未经授权的风险。自动交易风险边界:凌晨2:16的意外仓位教会周岑默认拒绝进一步说明了为什么默认状态应当是拒绝执行。
林峥最终在时间线中看到,异常订单缺少可验证的人工批准记录。这个发现没有替他追回亏损,却让处置方向变得清楚:在审批链路得到验证前,系统不能恢复执行。
恢复交易需要证据门槛
第二天早上,林峥再次坐到厨房桌前。队列仍被冻结,昨晚的两条信号仍可查看,但没有一条能直接进入账户。屏幕上少了不断跳出的新订单,多了一条完整的事件时间线。
恢复执行不能只依赖“问题应该修好了”。至少要确认异常原因已经定位,修复经过隔离测试,审批状态无法被绕过,仓位限制在失败和重试情况下仍有效,并且人工能够随时拒绝下一笔订单。
交易纪律常被理解为控制情绪。对自动化系统而言,它还包括控制权限、保存证据,以及在原因不明时拒绝继续承担风险。
先冻结机器人,再审查证据。损失可能已经发生,但下一笔订单仍由你决定。
教育内容,不构成任何金融建议。
评论
暂无评论。