01学完你能做到
区分行情、财务和另类数据的处理重点;用标准化、口径声明、时间对齐和分发四步设计数据产品;识别前视偏差和幸存者偏差。
02这课解决什么问题
为什么同一份原始数据,经过代码、字段、日期和接口处理后,可能变成不同甚至互相矛盾的研究结果?
03核心概念
1. 三类数据的重点不同
- 行情数据:关注交易日历、频率、复权、停牌、价格和成交量单位。
- 财务数据:区分报告期和公告日;同一份财报可能有更正版本,研究时要记录当时可获得的版本。
- 另类数据:包括舆情、供应链、卫星和招聘等,重点是来源授权、覆盖度、稳定性、隐私和合规边界。
2. 产品化四步
- 标准化:统一证券代码、字段名、日期格式、数据类型和错误状态。
- 口径声明:写清单位、复权、TTM 或报告期、价格指数或全收益指数。
- 时间对齐:按信息当时可获得的日期使用数据。财报因子通常应按公告日,而不是报告期对齐,避免前视偏差。
- 分发与追溯:通过 API、批量文件或 MCP 交付,同时保留版本、参数、时间和来源记录。
金融数据服务(例如 FtShare)和基于数据的 Agent 应用(例如 FtAi)都处在分发和应用这一层;具体字段和接口约束以当前官方文档和实际返回为准。
3. 两种经典偏差
- 前视偏差:回测使用了当时尚未公布的数据。
- 幸存者偏差:样本只保留今天仍存在的公司或基金,忽略清盘、退市或被剔除的对象。
04例子(示意数据)
前视偏差
某策略在每年 1 月 1 日选择“去年净利润增长最快的股票”,但年报要到之后才公告。若回测直接使用年报结果,得到的收益会虚高。改为按实际公告日使用数据后,结果可能显著变化。具体收益数字需要真实数据和完整回测,不能用示意数字当作事实。
幸存者偏差
示意 10 只基金中,7 只存活基金平均收益为 +10%,3 只清盘基金平均收益为 −30%。只看存活基金得到 +10%;全样本平均为:
(7 × 10% + 3 × −30%)÷ 10 = −2%。
05产品检查清单
- 代码、字段和日期格式是否统一?
- 单位、复权和计算公式是否有文档?
- 财报是否按公告日和可得版本对齐?
- 样本是否包含退市、清盘或被剔除对象?
- 每条数据能否追溯到来源、参数和版本?
- 另类数据的获取和使用是否有合法授权?
06常见误区
- 字段名统一就是产品化完成:还要处理口径、时间、版本和来源。
- 报告期就是可用日期:财报报告期和公告日期常常不同。
- 今天的指数成分能代表过去:会产生幸存者或前视偏差。
- 另类数据越多越好:来源授权、质量和覆盖变化可能使研究不可复现。
- 接口可调用就能用于任何研究:需要检查许可、口径、时间和实际返回。
07延伸阅读
- Elton, E. J., Gruber, M. J. & Blake, C. R., “Survivor Bias and Mutual Fund Performance”, 1996,DOI:10.1093/rfs/9.4.1097。
- 中国证监会信息披露
08一分钟讲给别人
试着用自己的话讲一遍数据产品不是把数据换个接口。行情要处理交易日和复权,财报要按公告日,另类数据要查授权和覆盖。最后还要把字段、单位、版本和来源写清楚,否则回测很容易偷看未来或漏掉已经消失的样本。
6 道自测
先在心里答一遍,再展开对照。能说清理由,比答对数字更重要。
01报告期和可用日期有什么区别?
02数据产品化四步分别是什么?
03为什么财报因子通常要按公告日对齐?
04只使用当前指数成分会有什么偏差?
05另类数据要优先检查什么?
06为什么分发数据时要保留版本和参数记录?
已看 0/6 题
练动手练习
任务:选一个财务指标,设计一张产品字段表,至少包括代码、报告期、公告日、数值、单位、版本和来源;再写一个防止前视偏差的检查条件。
完成这一课
读完讲义、看完自测答案,这一课就算学完了。
- 读完讲义
- 看完全部自测
本课为投资者教育内容,案例数字均为示意,不构成任何投资建议,也不承诺收益。规则和费率会变,实际操作前请以交易所、监管机构和产品的最新公告为准。