2. 金融数据基础

在金融研究数据集的完整生产链路中,数据基础决定了后续清洗、因子构建与回测的可靠性。很多项目失败并非模型不佳,而是对“数据是什么、从哪来、以什么频率和粒度存在”缺乏清晰认知。本节围绕四个核心问题展开:金融市场数据有哪些类型、常见数据源各自适合什么场景、频率与粒度如何区分、以及如何为研究目标选择正确的数据组合。

一、核心原理:金融数据的四种基本类型

金融数据并非单一形态,按信息性质可划分为四类,每类对应不同的采集与处理逻辑。

  • 行情数据(Market Data):价格、成交量、买卖盘口、涨跌幅等,是量化研究最基础的数据。典型字段包括 open、high、low、close、volume、amount、vwap。
  • 基本面数据(Fundamental Data):财务报表、盈利预告、估值指标(PE、PB、ROE),通常按季度或年度更新,存在披露滞后。
  • 衍生与另类数据(Derivative & Alternative Data):期权隐含波动率、融资融券、舆情、卫星图像、供应链数据等,用于获取超额信息。
  • 宏观与参考数据(Macro & Reference Data):利率、CPI、GDP、行业分类、成分股名单、交易日历,用于对齐与分组。
研究目标决定数据类型优先级:做日内择时以行情与盘口为主;做多因子选股则基本面、行情、参考数据缺一不可。

二、常见数据源对比与选择

不同数据源在覆盖范围、频率、成本与稳定性上差异显著。下表给出常见数据源的核心特征,便于按项目需求取舍。

数据源 典型覆盖 频率/粒度 适用场景 注意事项
交易所(SSE/SZSE) A股行情、公告、成分 Level-1/Level-2、逐笔 高频、合规研究 接入门槛高,需授权
Wind 股债汇商、宏观、研报 日/分钟/季度 机构级综合研究 商业授权,成本较高
Tushare A股行情、财务、指数 日/分钟/季度 个人量化、教学 积分权限,接口限流
Yahoo Finance 全球股票、ETF、指数 日/分钟 海外市场、快速验证 字段不稳定,需容错

实际项目中常采用“主源+备源”策略:以 Wind 或 Tushare 作为主数据源,Yahoo Finance 用于交叉校验或补充海外标的。接口调用需保留原始返回,便于回溯。

# Tushare 获取日线示例
import tushare as ts
pro = ts.pro_api('YOUR_')
df = pro.daily(ts_code='000001.SZ',
               start_date='20240101',
               end_date='20241231')
print(df[['trade_date','open','high','low','close','vol']].head())

三、频率与粒度:两个容易混淆的概念

频率指数据记录的时间间隔,如 tick、1分钟、日、周、季度;粒度指同一时间点上数据的细分程度,如全市场汇总、单只股票、单笔成交、单个账户。频率回答“多久一次”,粒度回答“细到什么程度”。

二者组合决定数据体量与计算方式。例如“日频+个股粒度”适合多因子选股;“分钟频+盘口粒度”适合日内交易;“季度频+行业粒度”适合宏观与行业轮动研究。频率提升会带来噪声、缺失与存储压力,粒度细化则增加对齐与聚合复杂度。

常见误区:认为频率越高越好。高频数据在缺乏撮合与延迟建模时,反而会引入前视偏差与过拟合。应按策略持有周期选择最低可用频率。
频率 × 粒度:研究目标定位图 频率 →(tick / 分钟 / 日 / 季度) 粒度 →(市场 / 行业 / 个股 / 逐笔) 宏观 季度·市场 多因子 日频·个股 日内 分钟·盘口 高频 tick·逐笔 低频低粒度:稳健、易对齐 高频高粒度:信息多、噪声大

四、案例与复盘:从需求到数据选型

假设要构建一个A股月度调仓的多因子策略,数据选型流程如下:

  1. 确定频率与粒度:月度调仓,采用日频行情聚合为月频,个股粒度。
  2. 选择数据源:Tushare 获取日线与财务数据,交易所日历对齐交易日。
  3. 字段规划:close、volume、PE、PB、ROE、行业分类。
  4. 质量校验:检查停牌、涨跌停、财务披露滞后,避免前视偏差。
  5. 存储与版本:按日期分区保存原始与清洗后数据,保留数据版本。

复盘常见问题:一是混用不同数据源的复权方式,导致价格不可比;二是忽略财务数据的披露日期,用报告期直接对齐交易日期,造成未来信息泄露;三是频率选择过高,回测换手率与成本被低估。解决方式是统一复权口径、使用公告日而非报告期、并在回测中显式建模交易成本。

数据基础工作的价值在于“可复现”:明确类型、来源、频率与粒度,并记录每一步处理,才能让研究结论经得起检验。