写着禁止开仓,却多出三只持仓:风控装错了层

休市第五天,脚本照常出报告

国庆休市(10/1–10/7),行情停在上个交易日的收盘价上。排名脚本还是按排期跑:上午 10:30 一份、下午 14:30 一份,数据基准一律是 9/30,既没有新行情也不会产生新的可执行信号。

按理说这是最闲的一天。结果上午那份报告交出来,自己跟自己打架。

矛盾写在同一份输出里

报告顶部:

🏛️ 沪深300=4.4312 ⛔ <MA120(4.7099) 禁止开仓

往下几十行,同一份输出里:

📋 当前持仓: 3只
   港股创新药(159570) 入1.5108→现1.5108
   中韩半导体(513310) 入4.4484→现4.4484
   纳指ETF(159941) 入1.5259→现1.5259

三只标的的买入价和现价一模一样,不是巧合——休市期间价格没动。也正因为这样,这三条不是买出来的,是脚本自己刚记上去的。

闸门只管住了建议,没管住记账

风控本身没算错:沪深300 在 MA120 下方,禁止开仓;连亏 4 次,暂停期到 10/4。错在两道关的分工:

说白了,风控挡的是「给不给买入建议」,没挡住「往状态里写持仓」。这两件事被写在两个地方,就注定有一天会对不上。

自相矛盾的输出是最灵的报警器。上下两段文字分开看都很正常,凑在同一个屏幕上才露馅。

改动只有三处

改完重跑一遍:下午 14:30 那份输出里已经没有持仓段,状态文件回到空仓——和 9/27 清仓之后的真实情况对上了。9/27 出去的两只、9/29 那只通信ETF,都是亏着离场的,连亏计数就是这么攒到 4 的。

休市日的对账,比交易日难

本来以为休市适合对账:价格不动,状态是静态的。反过来才对——交易日里,一个不该存在的持仓,浮亏会自己喊出来;休市日买入价等于现价,浮盈 0.00%,比亏 5% 还安静。这种日子只能靠输出本身自不自洽来判,不能等盈亏数字刺眼。

现在的状态

今天的账