---
title: 数据时效与时间字段
description: 权威材料、完整数据版本和交易数据的更新机制及时间字段口径。
pageClass: gendangzou-doc
---

# 数据时效与时间字段

不同能力使用不同的更新机制。调用方应读取响应时间字段，不能用请求时间代替数据时间。

## 更新机制

| 数据 | 更新机制 | 可查询条件 |
| --- | --- | --- |
| 政策材料 | 每 5 分钟发现新增材料 | 正文补全和分析完成 |
| 权威媒体材料 | 每 5 分钟发现新增材料 | 正文补全和分析完成 |
| 连续实时流 | 分析完成即进入滚动窗口 | 形成当前活动板块目录映射 |
| 公司身份与生命周期 | 每小时核验交易所名册 | 对应状态已获权威来源确认 |
| 板块目录 | 完整数据版本发布 | 目录校验和发布完成 |
| 三类板块信号 | 完整数据版本发布 | 热度、异动和资金聚合完成 |
| 公司板块映射 | 完整数据版本发布 | 关系计算、证据归并和发布完成 |
| ETF 产品与官方篮子 | 每个完整数据版本核验 | 交易所目录核验及必要的 PCF 解析完成 |
| ETF 板块映射 | 完整数据版本发布 | 当前篮子与当前公司板块关系重新聚合完成 |
| 历史热度序列 | 完整数据版本发布 | 对应版本可用 |

5 分钟是新增材料发现周期，不是端到端完成时限。正文获取、去重、观点抽取和板块分析
由任务队列持续处理；接口只返回已经完成的结果。

## 实时窗口

`signal.realtime.*` 使用 `1h`、`6h`、`24h` 或 `3d` 滚动窗口，以
`signal_ready_at` 判断材料是否在窗口内。响应同时返回当前窗口与前一个等长窗口，
用于比较板块关注变化。该时间口径独立于 `snapshot_id`、`as_of` 和
`published_at`；完整数据版本发布不会重置实时窗口。

## 材料时间

| 字段 | 含义 |
| --- | --- |
| `business_date` | 查询使用的北京时间自然日 |
| `material_date` | 来源标注的材料发布日期 |
| `first_seen_at` | 系统首次发现材料的时间 |
| `signal_ready_at` | 正文、观点分析和当前板块映射全部完成的时间 |

省略材料接口的 `date` 参数时，服务使用当前北京时间日期。

## 版本时间

| 字段 | 含义 |
| --- | --- |
| `snapshot_id` | 完整数据版本标识 |
| `as_of` | 版本对应的业务日期 |
| `published_at` | 版本完成发布的时间 |
| `publication_mode` | `published` 为正式发布，`derived` 为从完整历史运行恢复 |

接口返回的数据版本可能早于请求自然日。例如完整版本尚未发布时，查询仍返回最近一个
可用版本，调用方应展示实际 `as_of`。

## 交易时间

| 字段 | 含义 |
| --- | --- |
| `market_trade_date` | 资金维度实际使用的交易日 |
| `market_age_days` | 该交易日距离版本业务日期的自然日数 |
| `market_mapping_reaggregated` | 是否使用当前板块映射重新聚合已有交易数据 |

`market_status`：

- `fresh`：使用新的收盘交易数据。
- `carried_forward`：休市或无新行情，沿用最近交易日结果。
- `reaggregated`：沿用最近交易数据，并按当前板块映射重新聚合。
- `unavailable`：没有可用资金结果。

休市期间不能把沿用结果表述为当日发生的新资金变化。

## ETF 篮子时间

| 字段 | 含义 |
| --- | --- |
| `basket_date` | 交易所 PCF 对应的业务日期 |
| `basket_checked_as_of` | 最近一次核验交易所目录的日期 |
| `basket_age_days` | 篮子业务日期距版本业务日期的自然日数 |
| `source_fetched_at` | PCF 正文实际获取时间；复用未变化篮子时可早于当前版本 |

`basket_freshness_status`：

- `refreshed`：本轮重新获取并解析 PCF。
- `verified_unchanged`：本轮已核验，交易所篮子日期未变化。
- `carried_forward`：来源异常，降级沿用既有篮子。
- `unknown`：无法确认新鲜度。

判断 ETF 数据是否可用时，应同时读取 `basket_date`、`basket_checked_as_of` 和
`basket_freshness_status`，不能只比较篮子日期与请求日期。
