4、数据准备与清洗:所需数据源与处理流程

组合风险归因与人群切片复盘依赖多源异构数据的融合。数据质量直接决定归因结果的可靠性。本节梳理四大核心数据源、对齐策略、缺失值处理与异常值检测方法,确保后续分析建立在干净、一致的数据基础上。

4.1 四大核心数据源

风险归因所需数据可归纳为四类,每类承担不同的分析角色:

数据源 核心字段 分析用途 更新频率
持仓数据 组合代码、证券代码、持仓数量、持仓市值、成本价、持仓占比 计算风险暴露、行业/风格因子权重、集中度 日频 / 实时
交易数据 交易日期、证券代码、买卖方向、成交数量、成交价格、佣金、印花税 归因交易贡献、换手率、交易成本分析 日频 / T+1
行情数据 证券代码、日期、开盘价、收盘价、最高价、最低价、成交量、收益率 计算因子收益、波动率、相关性矩阵 日频 / 高频
客户信息 客户ID、风险等级、投资目标、资产规模、年龄、职业、持仓偏好 人群切片、风险偏好匹配、行为画像 月频 / 事件驱动
实践提示: 持仓与交易数据通常来自内部交易系统(OMS/EMS),行情数据依赖外部供应商(如Wind、Bloomberg),客户信息则来自CRM或KYC系统。建议为每个数据源建立独立的原始层(Raw Layer),保留全量历史快照,便于回溯与审计。

4.2 数据对齐:时间与标识的统一

多源数据在时间粒度、证券标识、组合维度上存在不一致,必须进行系统化对齐。

  • 时间对齐: 统一使用交易日历(排除非交易日),持仓与行情按日对齐;交易数据按成交日期归属;客户信息按快照日期或变更日期对齐。
  • 证券标识对齐: 建立内部证券主表(Security Master),将不同数据源中的证券代码映射为统一标识(如ISIN、内部ID),避免因代码变更或别名导致匹配失败。
  • 组合维度对齐: 持仓与交易数据必须关联到同一组合层级(账户级、产品级、客户级),确保归因结果可向上汇总。
对齐检查清单:
  1. 所有数据源是否使用同一套交易日历?
  2. 证券代码是否已映射到统一主表?
  3. 组合/账户标识是否一致?
  4. 时间戳是否已转换为统一时区(如UTC+8)?
  5. 是否存在跨数据源的时间延迟(如行情T+1、交易T+0)?
数据对齐流程 持仓数据 交易数据 行情数据 客户信息 数据对齐引擎 时间对齐 证券主表映射 组合维度匹配 时区统一 交易日历对齐 输出: 统一宽表 对齐后的分析宽表 包含:日期 | 证券ID | 组合ID 持仓量 | 收益率 | 客户标签

4.3 缺失值处理策略

缺失值在金融数据中普遍存在,需根据缺失类型与业务含义选择处理方式。

缺失类型 常见场景 处理策略 注意事项
完全随机缺失 个别交易日行情缺失(停牌) 前向填充(Forward Fill)或插值 停牌期间收益率设为0,复牌后补涨
随机缺失 部分客户风险等级未填写 中位数填充 / 模型预测填充 避免使用均值填充导致分布偏移
非随机缺失 小市值股票长期无交易 标记为“缺失”并单独分组 不可随意填充,需评估对归因的影响
结构性缺失 新上市证券无历史行情 使用行业均值或因子模型估计 需在报告中注明估计方法
风险警示: 缺失值处理不当会扭曲风险归因结果。例如,用0填充停牌期间的收益率,会低估波动率与VaR。建议在清洗报告中记录缺失比例与填充方法,供后续审计使用。

4.4 异常值检测方法

异常值可能源于数据录入错误、市场极端事件或系统故障。检测方法需兼顾统计稳健性与业务可解释性。

  • 统计方法: Z-score(|Z|>3)、IQR(超出1.5倍四分位距)、MAD(中位数绝对偏差)。适用于收益率、持仓占比等连续变量。
  • 业务规则: 收益率超过±20%(A股涨跌停限制)、持仓占比超过100%、交易价格偏离行情均价±5%。适用于强约束场景。
  • 时间序列方法: 滚动窗口均值±3倍标准差、季节性分解(STL)。适用于检测趋势中的孤立异常点。
  • 机器学习方法: Isolation Forest、LOF(局部异常因子)。适用于高维因子暴露数据的异常检测。
异常值检测流程 原始数据宽表 异常值检测模块 Z-score / IQR / MAD 业务规则引擎 滚动窗口检测 Isolation Forest 多方法投票 异常标记数据集 异常报告与日志 异常处理决策: 修正 / 剔除 / 标记保留

4.5 清洗后的数据质量检查

完成清洗后,需执行数据质量检查(Data Quality Check),确保数据可用于风险归因。

数据质量检查清单:
  • 完整性: 所有组合在分析期内是否有完整的持仓与行情记录?缺失比例是否低于阈值(如5%)?
  • 一致性: 持仓市值与行情价格计算的理论市值是否一致?差异是否在合理范围(如0.1%)?
  • 准确性: 抽样核对交易记录与清算数据,确认成交价格、数量无误。
  • 时效性: 数据是否覆盖完整的分析时间窗口?是否存在延迟或未来数据泄露?
  • 唯一性: 主键(日期+证券+组合)是否存在重复记录?

通过上述数据准备与清洗流程,可构建一个干净、对齐、可追溯的分析数据集,为后续的组合风险归因与人群切片复盘奠定坚实基础。