哪些中国 A 股数据集真的是时点数据,哪些只是看起来像
简短回答: 一个数据集只有在每一行都告诉你两件互相独立的事时,才算时点数据:这个数字覆盖哪个会计期,以及这个数字在哪一天变成公开信息。不少中国数据集只有前者,没有后者。一行如果只按期末日期标注,在任何回测里读起来都像时点数据,其实不是,因为在你刚刚给它盖上的那个日期,这个数字还无人可知。
两个日期,以及为什么只有一个不够
会计期末说明这个数字讲的是什么。披露日期说明公司外部的人最早在哪一天可能知道它。对 A 股披露而言,这两个日期通常相隔一到四个月。
数库 C2C 披露数据是最清楚的例子。它的交易关系类表带有 rpt,也就是这些数字所覆盖的会计期末,但不带单独的公开披露日期,因为披露日期不属于公司在这些表中所披露的内容。仅以 rpt 为日期,等于把该行视为在期末即可知,而实际上通常要晚一到四个月。(数据截止 2026-05-16。)
该数据集自己的数据档案也讲得很直白:请把它用于关系结构与量级,而不要当作时点序列使用。
施加滞后并不能解决问题
常见的变通做法是把所有数据滞后一个季度,然后认为这样就安全了。它只解决了一半,而没解决的那一半恰恰是要紧的那一半。
滞后弥补的是时间差,它弥补不了重述差。在 C2C 披露数据中,数字是「当前所报告」的版本,因此当公司对以往期间进行重述时,重述后的数值会替换原始数值。无论你滞后多久,重述后的数字都携带了原始披露日当时并不存在的信息。(数库 C2C 披露数据,数据截止 2026-05-16。)
哪些数据集两个日期都带
| 数据集 | 它带什么 | 数据截止日 |
|---|---|---|
| 基本面数据 | 每份财报都带 report_date 与 publish_date | 2026-04-14 |
| 财务附注 | 每一行都带 report_end_date 与 publish_date | 2026-04-09 |
| SAM | 每一条记录都带 report_date 与 publish_date | 2026-02-26 |
| 招投标 | 公开的中标日期 result_date,月度图谱按统计月标注 | 2026-05-29 |
| SmarTag | newsts,即文章被采集并打标的时刻,仅追加写入 | 2026-09-16 |
| 股权关系 | 每一行都带 rpt,仅两张表带 publish_date | 2026-05-16 |
| C2C 披露数据 | 仅 rpt,没有披露日期 | 2026-05-16 |
股权关系值得单独说一句。它的每一行都按会计期末标注,而其中两张前十大股东表额外带有 publish_date,也就是该持股被披露的日期。对这两张表,你同时拥有数据所描述的期间与它变为公开的日期,数据档案称之为该数据集中最紧的控制。股权关系的其余部分没有这个。(数据截止 2026-05-16。)
截止规则,以及重述规则
要得到无前视的视图,请过滤 publish_date <= D。当某一条科目被重述过时,你要取的是 publish_date 小于等于 D 中最大的那一行。那才是在 D 当天已知的数字,而不是今天看来正确的数字。(数库基本面数据,数据截止 2026-04-14。)
三种不易察觉的出错方式
把入库时间戳当成 as-of。 在 C2C(时点)中,ann_collection_time 不是 as-of 日期。数据档案称这是在该数据集上把时点读法悄悄弄错的最常见方式。同样的提醒也出现在关系图谱(时点)上。(数据截止 2026-08-22 与 2026-08-23。)
把数据流的可复现轴当成公开时间。 在基本面数据中,as_of 是 Numinor 获知某一版本的日期,用于精确复现该数据流在过去某次运行时所提供的内容。它与「在日期 D 之前已公开」不是一回事。一份已被数据流采集、但所载披露日期更晚的财报,仍会出现在可复现轴上,并携带它自己的 publish_date 供你过滤。两条轴,两个问题,答案不同。(数据截止 2026-04-14。)
在双时序面板上不加 as-of 过滤就分组。 在 C2C(时点)中,同一个期间会按设计出现多次,这正是双时序面板的含义。不加 as-of 过滤直接分组会重复计数。请先过滤 publish_date <= as_of,再按主键取最新一行。(数据截止 2026-08-22。)
同一个数据集内部,重述率并不一致
关系图谱(时点)在子公司上的重述率为 5% 到 7%,在长期股权投资上则为 70% 到 76%。同一个数据集,同一次交付,相差一个数量级。请不要假定所有表都是同一个节奏,也不要用这一组里最平静的那张表来决定你的重建窗口。(数据截止 2026-08-23。)
身份本身也必须是时点的
一条无前视的价格序列,如果关联的是今天的公司主数据,那它依然带有前视,因为主数据知道哪些公司活了下来。
数库参考数据的主数据以每日双时序面板的方式提供,因此你可以还原任一历史日期上「当时可知」的公司与证券全集。已退市的证券会连同其 list_edt 一并保留,退市只会把该证券从退市日当天及其之后的 as-of 视图中移除,更早的 as-of 视图里它依然存在,所以你永远不需要另外找一份「已退市代码」清单。(见 2026 年 7 月版数据档案。)
在 SAM 中,只有当某条事实行所属的期间行带有有效、无前视的披露日期,并且被标记为 is_valid = True 时,该行才会被提供。在过滤到当前可用行时,请尊重 is_valid。(数据截止 2026-02-26。)