3. 停复牌数据的核心字段与语义

停复牌数据看起来只是“某只股票某天停牌、某天复牌”的简单记录,但在实际数据处理中,它是一组带有明确业务语义的结构化字段。字段理解不到位,后续的行情对齐、因子计算、回测撮合都会出现系统性偏差。本节围绕停牌类型、停牌原因、复牌时间、停牌时长这几个核心字段,讲清楚它们各自表达什么、边界在哪里、在数据处理中如何使用。

停牌类型:决定“能不能交易”的第一层判断

停牌类型是对停牌状态的分类标签,常见取值包括全天停牌、盘中临时停牌、连续停牌等。它直接决定了当日该证券是否存在可成交时段。全天停牌意味着当日没有任何连续竞价成交,行情数据通常表现为成交量为零、价格沿用前收盘;盘中临时停牌则意味着当日仍有部分时段可以交易,只是被临时中断。对于日频数据处理,全天停牌与盘中停牌的处置方式完全不同:前者当日收益应视为缺失或按特殊规则处理,后者当日仍有有效收盘价,只是需要关注停牌期间的价格断层。

因此,停牌类型不是描述性文字,而是一个参与判断的逻辑字段。在构建交易日历时,通常需要把停牌类型映射为“当日是否可交易”的布尔标记,再进一步区分“全不可交易”和“部分可交易”。这一步映射如果做错,比如把盘中临时停牌当成全天停牌剔除,就会误删有效交易日;反之把全天停牌当成正常交易日,则会引入虚假的零成交记录。

停牌原因:影响后续处理策略的语义信息

停牌原因字段记录停牌的业务缘由,例如重大资产重组、重大事项披露、股东大会、异常波动核查、临时公告等。它本身不直接参与数值计算,但对数据清洗和策略判断有重要参考价值。原因字段的第一个用途是区分“计划性停牌”和“突发性停牌”:股东大会、重大事项披露往往有预告,停牌时点可预期;异常波动核查则多为突发,容易造成数据断点。第二个用途是辅助判断停牌时长量级:重大资产重组类停牌通常持续时间较长,而临时公告类停牌往往较短。

需要注意的是,停牌原因多为文本字段,存在表述不统一、同一原因多种写法的问题。实际处理时通常需要建立原因分类映射表,把自由文本归并到有限类别,再用于统计或过滤。例如把“筹划重大资产重组”“重大资产重组事项”统一归为“重组类”。这一步属于数据标准化,不能省略。

复牌时间与停牌时长:时间维度的两个关键量

复牌时间指停牌证券恢复交易的日期,停牌时长则是停牌起始日到复牌日之间的时间跨度。这两个字段共同刻画了停牌的“时间边界”。在日频数据中,停牌时长通常按交易日计算而非自然日计算,因为自然日会包含周末和节假日,导致不同停牌区间的可比性下降。例如某证券自某周一开始停牌、次周周一复牌,按自然日约为8天,按交易日则约为5个交易日,后者才与交易日历对齐。

复牌时间字段还有一个容易忽略的语义细节:复牌日当天是否计入停牌区间。通常约定停牌区间为“起始日含、复牌日不含”,即复牌日视为正常交易日。这一约定必须在整条数据链中保持一致,否则停牌天数会整体偏移一天。停牌时长字段如果由系统直接给出,应核对它的计算口径是否与自己的交易日历一致;如果由原始起止日期自行计算,则要明确使用交易日历做区间计数。

停复牌核心字段与交易日对齐示意 示例:某证券自 T1 起停牌,T6 复牌;停牌区间约定为“起始日含、复牌日不含” 停牌类型 全天停牌 / 盘中临时停牌 / 连续停牌 → 映射为“当日是否可交易” 停牌原因 重组 / 重大事项 / 核查 → 归并分类 复牌时间 恢复交易日期,复牌日视为正常交易日 停牌时长 按交易日计数,非自然日 交易日轴(T 为交易日序号) T0 T1 T2 T3 T4 T5 T6 停牌区间:T1–T5,共 5 个交易日 复牌日 若误按自然日计数,停牌时长会被高估 若复牌日计入停牌,区间整体偏移一天

字段之间的联动关系与常见陷阱

这几个字段并非孤立存在,而是相互约束的。停牌类型决定了停牌时长的计算口径:全天停牌按交易日整段计数,盘中临时停牌则往往只记录当日、时长按小时或分钟计,不能与全天停牌混在同一列里做统计。停牌原因影响对停牌时长的预期,但不构成硬约束,不能因为原因是“临时公告”就假定停牌一定短。复牌时间与停牌时长互为校验:由起始日和复牌日算出的交易日数,应与停牌时长字段一致,不一致时通常说明交易日历版本不同或区间口径不同。

实际数据中常见的陷阱有三类。第一类是复牌时间为空,表示截至数据快照日仍未复牌,这类记录不能当作“停牌时长为零”处理,而应标记为“停牌中”。第二类是同日多次停复牌,比如盘中临时停牌后又复牌,日频数据往往只保留一条汇总记录,需要确认汇总规则。第三类是停牌跨越了交易日历调整,比如期间发生了临时休市,此时按旧日历计算的时长会偏差,应以统一版本的交易日历重算。

面向处理的字段使用建议

在把停复牌数据接入行情或因子流程时,建议先做一次字段语义核对:确认停牌类型是否已映射为可交易标记,确认停牌原因是否已归并分类,确认停牌时长是按交易日还是自然日计算,确认复牌日是否计入停牌区间。这四项确认完成后,再生成逐日的“可交易状态表”,作为后续所有计算的统一入口。这样做的价值在于,停复牌字段的语义一旦固定,行情对齐、收益计算和回测撮合都能引用同一份状态判断,避免各处口径不一导致的隐性错误。

处理建议:停牌时长优先用统一版本的交易日历自行重算,并与原始字段比对;差异记录单独列出核查,不要直接覆盖原始值,以便追溯。