A股研究证据闸门
先建立可复核证据,再允许下游分析使用。
工作流
- 写明研究对象、研究问题、
as_of时刻、市场时区和允许的数据延迟。 - 建立证据台账:每条记录包含原始来源、文档日期、实际披露时刻、报告期、抓取时刻、口径、单位、币种、复权方式和定位信息。
- 关键数字优先回到交易所、巨潮资讯或公司法定披露。Tushare和AKShare属于结构化便利层,不能覆盖原始披露。
- 结构化取数使用
china-market-data。历史研究传入as_of和require_pit=true;若主源失败且备用源缺少历史可得时点,必须停止。 - 财务数据只能在
ann_date、f_ann_date或可核验披露时刻之后可见;修订数据保留原版本与新版本。 - 处理冲突时先检查合并范围、单季/累计、TTM、币种、复权、税前/税后、法定/调整后和发布时间。无法消解时并列记录,不平均。
- 输出可用、冲突、缺失和禁止使用四类证据,以及下游可安全引用的字段。
原文与定位清单
将证据记录写成JSON列表后运行scripts/build_evidence_manifest.py input.json --output evidence-manifest.json。每条至少含evidence_id、来源类型、HTTPS原文URL、文档日、带时区的实际披露时刻、研究as_of、页码/章节/表格/段落定位和支撑主张。已有本地原文可传local_path并计算内容SHA-256;显式传--download-dir时脚本才会只读下载HTTPS原文、限制单文件体积并落盘哈希。截止日后的证据会标为forbidden_future并使清单blocked。
下载成功只证明取得了某个字节版本,不证明来源权威、披露时间或内容解释正确;交易所/巨潮链接跳转后仍要核对最终URL、公告编号和文档内标题。
硬约束
- 搜索摘要不能代替原文;二手来源不足以单独支撑高影响结论。
- 报告期不是可得时点;披露计划也不是实际披露时刻。
- 不确定来源、单位或时间的数字标为
unverified,不用于精确计算。 - 研究截止日之后的信息只能作为事后验证,不能污染当时视角。
- 只做只读研究,不登录交易账户,不修改自选或持仓。
输出契约
先给证据状态ready、partial或blocked,随后提供研究时点、来源清单、证据台账、冲突处理、缺口和干净字段。
需要详细规则时读取references/source-and-pit-rules.md。