数据与因子工程 · 四层构建与质检

原始数据清洗 → 基础因子计算 → 高阶因子合成 → 标准化正交化 · 因子体检三道关 · 与BII/RCS/S模型全链路对接 · v3.2
L1 数据清洗 L2 基础因子 L3 高阶合成 L4 标准正交 质检体检

四层流水线总览

因子不是"拿来就能用"的——从原始宏观数据到最终送入回撤方程的标准化因子,需经过四层严格处理。每一层都有明确的工程目标和质量控制。本页系统阐述本模型25项宏观因子从数据源到最终入模的全链路构建过程。
L1 原始数据清洗
日历对齐 · 频次拼接 · 异常值稳健化
L2 基础因子计算
增长 · 价格 · 货币 初级信号
L3 高阶因子合成
FCI · 惊喜指数 · 期限利差 · 信贷脉冲
L4 标准化正交化
Z-Score · 中性化 · 施密特正交 · 体检

与本模型的对接关系

处理层输出物→ BII 泡沫强度→ RCS 真实约束→ S 可持续度→ FRAG 脆弱性
L1 数据清洗对齐后的原始序列CAPE/市值GDP/私人信贷/央行资产/保证金油价/EROI→EI_REAL(总能耗TETCBUS/GDPC1实测·2026-09-03替代)/TFR/抚养比/能源生产消耗量/电力需求供给/退休后期望寿命/移民净流入率/耕地面积/虚拟土地贸易发电量/原油/M2/准备金SOFR-OIS/信用利差
L2 基础因子初级经济信号估值偏离 · 信贷扩张 · 货币宽松 · 杠杆存量能源约束v2.1(6分量) · 人口约束v3双层(流量5+2分量/上限7国)E配分 · P配分 · M配分管道压力 · 风险定价
L3 高阶合成组合逻辑因子超额货币(M2−GDP) · 信贷脉冲能源v2.1/v2.2双轨约束(价格0.20+质量位0.17:EROI→EI_REAL实测·2026-09-03+G0.17+D0.13+D_e0.18+A_idr0.15) · 人口v3约束[0.90×v2五分量 + 0.10×(D_land+V_land) + 土地承载力上限(饱和值9.5→国别8.5-9.8)]S=(E+P)/2−MFCI金融条件指数
L4 标准正交入模因子(ρ=0)送入回撤方程 v3.2:8.54×BII + 6.15×RCS + 5.62×FRAG − 17.59×(BII×RCS/10) + δ(S)

第一层 · 原始数据清洗

数据到手后,第一步不是算因子,而是清洗。日历对齐杜绝未来函数,频次拼接消除混频失真,异常值稳健化防止极端年份带偏模型。

1.1 日历对齐(避免未来函数) 关键

央行常在周末或节假日公布数据(如降准)。模型必须精确记录"数据实际发布时间",而非"数据所属月份"。
本模型数据源发布频率发布滞后日历对齐处理未来函数风险
Shiller CAPE月度T+5个交易日以IMF数据发布日为准,T月数据在T+1月15日后方可使用已消除
Fed H.4.1 央行资产周度(周四)T+1日周四19:00后方可使用当日数据;周五模型更新已消除
BIS 私人信贷季度T+45日Q1数据在5月中旬发布,5月15日前不得使用已消除
EIA 原油库存周度(周三)T+1日周三10:30发布,模型在周三14:00后才可引用已消除
CFTC 基差交易周度(周五)T+3日周五发布截至周二的持仓,下周一方可使用已消除
BEA 核心 PCE月度T+30日T月数据在T+1月末发布,模型在T+2月初方可使用已消除
规则:若某因子在T月5日才公布T-1月数据,模型在T月1日绝不能用它。
实现:每个数据点附带 `publish_date` 字段,回测引擎在 `date < publish_date` 时返回 `NaN`,确保不引入未来信息。

1.2 频次拼接(混频处理)

GDP是季度数据,PMI是月度数据,利率是日频数据。专业做法是采用Chow-Lin插值法或MIDAS回归,确保所有因子在同一时间维度上"对齐"。
原始频率数据项降频/升频方法目标频率处理细节
季度GDP · 私人信贷/GDP · 债务/GDPChow-Lin插值法月度以工业增加值作为高频指标变量,将季度GDP分解为月度代理
月度CPI · PMI · M2 · 社融 · TFR保持月频月度月底发布,与BII月度更新周期一致
周度EIA库存 · 央行资产 · 基差交易月末取值月度取每月最后一个交易日的周度数据,避免周内噪声
日频SOFR-OIS · 10Y收益率 · DXY · VIX · BDI · 原油月均化月度计算月内交易日的简单算术平均,消除单日异常波动
十年频人口结构(EROI 已退役)线性插值年度→月度人口数据按年线性内插;EROI 文献插值管道已于 2026-09-03 退役——能源质量位改用 EI_REAL 实测月度(总能耗/GDPC1,1949 起连续),无需插值(v2.2 双轨,替代理由见 quant-paper 式 18b)
Chow-Lin插值公式:β̂_monthly = β̂_quarterly × (X_monthly / X_quarterly)
其中 X 为高频指示变量(本模型使用工业增加值或发电量),确保插值后序列与低频原始数据的季度加总一致。

1.3 异常值稳健化

不简单用3倍标准差截尾,而是采用MAD(中位数绝对偏差)法。因为宏观数据常有极端值(如2020年GDP骤降),均值会被带偏,而中位数更稳健。
MAD稳健化流程
① 计算中位数:M = median(x₁, x₂, ..., xₙ)
② 计算绝对偏差:dᵢ = |xᵢ − M|
③ 计算 MAD:MAD = median(d₁, d₂, ..., dₙ)
④ 稳健Z分:Zᵢ = (xᵢ − M) / (1.4826 × MAD)
⑤ 截尾:|Zᵢ| > 3.5 的值用 3.5 × sign(Zᵢ) 替代
数据项传统3σ截尾MAD稳健化差异
2020Q2 GDP(−31.4%年化)被截尾→丢失信号Z=4.1→截为3.5保留大部分信号
2008Q4 工业增加值(−12.7%)被截尾Z=3.8→截为3.5保留信号
2022 油价($130峰值)未被截尾(在3σ内)Z=2.1→保留两者一致
2020 VIX(85峰值)被截尾→低估风险Z=5.2→截为3.5保留风险信号
1.4826 = 1/Φ⁻¹(0.75),是将MAD转化为与标准差等价尺度的常数。MAD方法的关键优势:即使50%的数据是异常值,中位数仍然不受影响——这在宏观历史数据中极为重要。

第二层 · 基础因子计算

将清洗后的数据转化为经济学含义明确的初级因子。不是简单取"同比",而是构建有经济学组合逻辑的基础信号。

2.1 增长类基础因子 → BII估值偏离验证 · RCS能源流量

因子公式为何优于简单同比模型用途当前值
季调环比折年率[(Xₜ / Xₜ₋₁)⁴ − 1] × 100%(月度数据)同比滞后12个月,环比折年率领先6-9个月捕捉拐点工业增加值→出清深度估算−0.3%(收缩)
PMI新订单-库存比PMI新订单指数 / PMI库存指数单看PMI指数不够——订单减库存分离需求与供给,比值<1=去库存周期BII估值偏离维度的先行验证0.96
发电量同比(Xₜ − Xₜ₋₁₂) / Xₜ₋₁₂ × 100%绕开价格扭曲的实物产出指标——三笔跨期存量支取中E的流量端RCS能源约束的流量验证 · S模型E维度+2.8%

2.2 价格类基础因子 → RCS能源约束验证 · BII货币宽松

因子公式为何优于CPI绝对值模型用途当前值
核心CPI(剔除食品能源)CPI中剔除食品和能源分项后的加权平均央行利率决策看核心CPI,而非整体CPI——核心才是利率走向的决定变量BII货币宽松维度 · 5y5y通胀预期校准3.3%
CPI−核心CPI剪刀差CPI同比 − 核心CPI同比差值为正=能源/食品向核心传导=结构性通胀(RCS能源约束的通胀映射)RCS能源约束维度的通胀验证+0.5%
PPI−CPI剪刀差PPI同比 − CPI同比PPI < CPI = 企业利润压缩=不当投资的利润率信号转负→6个月后ROIC恶化BII估值偏离维度的盈利验证−1.2%

2.3 货币类基础因子 → BII货币宽松核心 · S模型M维度

因子公式为何优于直接用M2模型用途当前值
M2−社融增速剪刀差M2同比 − 社融存量同比当M2 > 社融,钱淤积在金融体系没进入实体→债券牛市先行信号;反之社融 > M2→实体融资需求旺盛BII货币宽松维度的信贷传导效率修正−3.3%(社融>M2)
超额货币M2同比 − 名义GDP同比直接度量"印了多少钱vs实体需要多少钱"——差值为正=货币超发未被吸收BII货币宽松维度核心输入 · S模型M维度+3.2%
实际短端利率联邦基金利率 − 核心CPI同比名义利率不变但通胀变动时,实际利率才是ABCT中"低于自然利率"的信号BII货币宽松维度 · S模型M维度+0.2%
央行资产/GDP美联储总资产 / 名义GDP × 100%三笔跨期存量支取M维度的直接存量度量——不是增速,而是透支的绝对水平BII货币宽松维度 · S模型M维度核心28%

第三层 · 高阶因子合成

这是拉开普通研究员与顶级量化团队差距的关键。把基础因子"相加减乘除",构建出有经济学组合逻辑的高阶因子。本模型的BII、RCS、S均为高阶合成因子。

3.1 金融条件指数(FCI) → FRAG脆弱性系数核心

不单一盯利率或汇率,而是将多个融资条件变量加权合成一个指数。FCI收紧时,未来3个月股市大概率承压。
FCI 构成公式
实际利率(TIPS 10Y)权重 0.30
实际有效汇率(DXY / 10年均值)权重 0.20
信用利差(IG OAS / 历史中位数)权重 0.25
股票波动率(VIX / 20)权重 0.15
期限利差(10Y−2Y,取绝对值)权重 0.10
FCI = Σ(权重 × 标准化分量)当前: +0.8(偏紧)
FCI > 0 = 金融条件偏紧 → FRAG系数上调;FCI < 0 = 宽松 → FRAG下调。当前FCI=+0.8,对应FRAG=5.0/10(中等偏高脆弱性)。

3.2 宏观惊喜指数(Macro Surprise) → 出清倒计时验证

每日抓取分析师一致预期,实时计算"实际值 − 预期值"的累积和。持续为正=经济屡超预期(看多);持续为负=看空。
惊喜指数构成
非农就业 · 实际值 − 预期值(万)权重 0.25
CPI · 实际值 − 预期值(%)权重 0.20
ISM PMI · 实际值 − 预期值权重 0.25
零售销售 · 实际值 − 预期值(%)权重 0.15
GDP · 实际值 − 预期值(%)权重 0.15
惊喜指数 = Σ(权重 × Z-Score(实际−预期))当前: −0.4(略低于预期)
惊喜指数持续3个月 < −0.5 = 出清倒计时加速信号;持续3个月 > +0.5 = 泡沫存续期延长信号。当前 −0.4,接近加速信号阈值。

3.3 期限利差与信贷脉冲 → BII核心 · 出清倒计时

期限利差(Term Spread)
= 10Y国债收益率 − 2Y国债收益率
当利差<0(倒挂)且持续扩大时,模型将其编码为"衰退风险因子",BII权重自动放大1.2倍
当前:−0.35%(倒挂14个月)
领先期:12-18个月
信贷脉冲(Credit Impulse)
= 2年Δ(私人信贷/GDP) × 100
由正转负=信贷扩张见顶→18个月后资产价格承压。BIS认证的金融危机领先指标
当前:−2.1%(已转负)
领先期:12-18个月
高阶因子构成经济学组合逻辑→ 模型维度
BII 泡沫强度0.28×估值 + 0.12×信贷 + 0.18×货币 + 0.22×杠杆 + 0.20×非传统信贷五维加权合成——估值偏离+信贷扩张+货币宽松+杠杆存量+非传统信贷共同决定泡沫强度(v3.0升级:新增非传统信贷维度捕捉AI轻资本范式)回撤方程主项
RCS 真实约束0.50×能源v2.1/v2.2双轨 + 0.50×人口v3两维合成——能源v2.1/v2.2双轨(6物理量) + 人口v3双层(流量5+2分量/土地承载力上限7国)决定真实维度上的"到期"压力回撤方程主项
S 可持续度(E+P)/2 − M三笔跨期存量支取合成——真实背书(能源+人口)减去货币透支,S<0=清算风险区回撤方程δ(S′′′)修正
FRAG 脆弱性FCI + SOFR-OIS + 信用利差 + VIX金融条件综合——多维度融资条件合成,衡量支付体系脆弱程度回撤方程主项

第四层 · 标准化与正交化

生产出几十个高阶因子后,它们量纲不同且高度共线,必须做最后的提纯。标准化消除量纲差异,中性化剔除Beta噪音,正交化杜绝系数"精神分裂"。

4.1 Z-Score 标准化 消除量纲差异

将每个因子转化为均值为0、标准差为1的标准分。"利率下降0.5%"和"PMI上升2个点"才能在数学上公平比拼对股市的影响力。
Z-Score 公式
Z = (X − μ) / σ
μ = 滚动120个月均值
σ = 滚动120个月标准差


本模型BII标准化:所有子维度输入先做min-max缩放至[0,10],再加权合成。
S模型标准化:E/P/M配分在[−3,+3]尺度上赋值,S在[−6,+3]尺度上合成。
因子原始量纲标准化后滚动窗口
CAPE绝对值(25-45)Z-Score(−2…+2)120月
期限利差%(−0.5…+3)Z-Score(−2…+2)120月
PMI绝对值(35-65)Z-Score(−2…+2)120月
SOFR-OISbp(0-30)Z-Score(−1…+3)60月

4.2 中性化处理 剔除Beta噪音

剔除"Beta噪音"。比如"期限利差"因子往往受全球美债走势影响,模型先对美债收益率做回归,取残差作为"特定国家的独立信用扩张信号"。
因子中性化对象回归方法残差含义模型用途
各国期限利差对美国10Y收益率回归OLS · 滚动60月该国特有的信用扩张/收缩信号(剔除全球利率Beta)各国BII货币宽松维度
各国CPI对油价回归OLS · 滚动36月剔除能源冲击后的核心通胀趋势RCS能源约束的通胀验证
各国股市回报对美国市场Beta回归OLS · 滚动24月该国特有的Alpha(超额收益/损失)出清深度国别修正
SOFR-OIS对VIX回归OLS · 滚动12月剔除市场恐慌因子后的纯管道压力5票退出系统第3票
中性化公式:Factor_pure = Factor_raw − β × Factor_global
其中 β = Cov(Factor_raw, Factor_global) / Var(Factor_global)
残差 Factor_pure 即为"剔除全球Beta后的纯国家/特定信号"。

4.3 对称正交化(关键一步) 杜绝系数"精神分裂"

针对共线性问题,用施密特正交化。假设"增长因子"与"通胀因子"有相关,模型强行将通胀因子分解为【与增长无关的纯通胀部分】。最终送入模型的每一个因子,两两相关系数均为0,各自贡献独立归因。
施密特正交化流程
① 选择基准因子:f₁ = BII(最先正交)
② 正交化 f₂ = RCS:f₂⊥ = f₂ − (f₂·f₁)/(f₁·f₁) × f₁
③ 正交化 f₃ = FRAG:f₃⊥ = f₃ − (f₃·f₁)/(f₁·f₁) × f₁ − (f₃·f₂⊥)/(f₂⊥·f₂⊥) × f₂⊥
④ 正交化 f₄ = δ(S):f₄⊥ = f₄ − 上述三项投影
⑤ 结果:corr(f₁, f₂⊥) = corr(f₁, f₃⊥) = corr(f₂⊥, f₃⊥) = 0
因子对正交前 ρ正交后 ρ影响
BII ↔ RCS0.320.00消除"泡沫强度与真实约束同步"的共线
BII ↔ FRAG0.480.00消除"泡沫越大越脆弱"的内生性
BII ↔ S−0.410.00消除"泡沫强度与可持续度反向"的共线
RCS ↔ FRAG0.210.00消除"约束越大越脆弱"的共线
RCS ↔ S−0.550.00消除"约束与可持续度反向"的共线
FRAG ↔ S−0.180.00消除"脆弱性与可持续度"的弱共线
为何关键:未正交化时,BII和FRAG相关0.48,回撤方程中BII系数(8.54)和FRAG系数(5.62)会"精神分裂"——BII吸收了本应属于FRAG的解释力,导致FRAG系数被低估。正交化后,每个系数纯粹反映该因子的边际贡献,系数解释性恢复正确。

因子构建完工"体检单"

一个高质量的宏观因子池,在入库前必须通过三项严苛体检。任一项不通过则一票否决。

体检一 · 经济学逻辑

系数符号必须符合常识
因子预期方向回测方向判定
PMI↑ → 股市↑正相关正相关(r=0.42)✓ 通过
信贷脉冲↓ → 股市↓正相关正相关(r=0.38)✓ 通过
期限利差倒挂 → 衰退负相关负相关(r=−0.35)✓ 通过
S<0 → 回撤↑负相关负相关(r=−0.51)✓ 通过
超额货币↑ → 泡沫↑正相关正相关(r=0.44)✓ 通过
规则:若回测显示PMI涨股市暴跌,即使IC再高,也因"逻辑崩塌"被一票否决。

体检二 · 统计显著性

滚动36个月IC均值 > 0.03,IR > 0.5
因子IC均值IC标准差IR判定
信贷脉冲0.0610.0890.69✓ 通过
超额货币0.0520.0810.64✓ 通过
期限利差0.0580.0940.62✓ 通过
S可持续度0.0670.0850.79✓ 通过
PMI新订单/库存0.0410.0720.57✓ 通过
SOFR-OIS0.0280.0650.43✗ 未通过
SOFR-OIS的IC=0.028 < 0.03阈值,但因领先期极短(2-3周)且与5票退出系统强绑定,保留为"辅助因子"而非"主因子"。

体检三 · 换手率适中

月频因子自相关系数 > 0.8
因子自相关ρ(1)月翻转率判定
S可持续度0.973%✓ 通过
信贷脉冲0.945%✓ 通过
超额货币0.954%✓ 通过
期限利差0.926%✓ 通过
PMI比值0.898%✓ 通过
VIX×相关性0.7218%✗ 噪音因子
VIX×相关性的自相关0.72 < 0.8阈值,判定为"噪音因子"——但因其作为系统性风险的前置信号,保留为"预警辅助因子",权重降低50%。

25因子体检汇总

因子经济学逻辑统计显著性换手率综合判定入模权重
⑥ 信贷脉冲✓ IC=0.061✓ ρ=0.94主因子1.0
⑤ 超额货币✓ IC=0.052✓ ρ=0.95主因子1.0
⑬ 期限利差✓ IC=0.058✓ ρ=0.92主因子1.0
S 可持续度✓ IC=0.067✓ ρ=0.97主因子1.0
① PMI比值✓ IC=0.041✓ ρ=0.89主因子0.8
② OECD CLI✓ IC=0.045✓ ρ=0.91主因子0.8
⑪ PPI−CPI✓ IC=0.038✓ ρ=0.88主因子0.7
⑯ 实际利率✓ IC=0.036✓ ρ=0.93主因子0.7
⑦ 央行资产/GDP✓ IC=0.043✓ ρ=0.96主因子0.8
⑨ 社融同比(中国)✓ IC=0.039✓ ρ=0.90主因子0.7
⑩ CPI−核心CPI✓ IC=0.034✓ ρ=0.87主因子0.6
⑭ IG信用利差✓ IC=0.037✓ ρ=0.85主因子0.6
⑲ 原油/10年均值✓ IC=0.035✓ ρ=0.92主因子0.7
⑱ BDI✓ IC=0.033✓ ρ=0.86主因子0.6
⑫ 5y5y通胀预期✓ IC=0.031✓ ρ=0.94主因子0.5
⑰ DXY✓ IC=0.032✓ ρ=0.88主因子0.5
③ 工业增加值△ IC=0.029✓ ρ=0.90辅助因子0.4
④ 发电量△ IC=0.027✓ ρ=0.91辅助因子0.4
⑮ SOFR−OIS✗ IC=0.028✓ ρ=0.82辅助因子0.3
⑳ VIX×相关性△ IC=0.030✗ ρ=0.72预警辅助0.25
16项主因子(权重≥0.5)+ 3项辅助因子(权重0.3-0.4)+ 1项预警辅助(权重0.25)。辅助因子虽未通过全部体检,但因特定功能(领先期极短/实物验证)保留低权重。

数据源与公式构成全表

本模型所有数据来源、采集频率、处理方式和最终用途的完整映射。
数据源数据项频率L1清洗L2基础因子L3高阶因子→ 模型维度
ShillerCAPE · 实际股价月度T+5日对齐 · MAD稳健估值偏离 = 0.6×CAPE[15,45]+0.4×市值/GDP[70,210%]BII估值偏离维度BII
Fed H.4.1央行总资产 · 准备金 · RRP周度周四对齐 · 月末取值央行资产/GDP · 准备金/RRP比率超额货币 · S模型M维度BII · S
BIS私人信贷/GDP季度Chow-Lin月度化 · T+45日信贷扩张 = 0.5×私人信贷/GDP+0.5×信贷脉冲信贷脉冲(2yrΔ) · BII信贷维度BII · 出清倒计时
BEAGDP · PCE · 核心PCE季度/月度Chow-Lin · T+30日超额货币(M2−GDP) · 核心CPI5y5y通胀预期 · S模型M维度BII · S
EIA原油库存·产量·一次能源生产/消耗周度/月度周三对齐 · 月末取值原油/10年均值 · 页岩产量 · 存量缺口G · 增速剪刀差DRCS能源约束v2.1 · S模型E维度RCS · S
IEA电力需求/供给·数据中心用电季度/年度季度滚动·T+90日电力剪刀差D_e · 电网并网排队RCS能源约束v2.1电力分量 · AI泡沫监测RCS(v2.1)
ISMPMI · 新订单 · 库存月度T+1日 · MAD稳健PMI新订单/库存比BII估值验证 · 周期相位BII验证
OECDCLI 综合领先指标月度T+45日CLI水平(<100=收缩)周期相位定位S · 相位
Fed NYSOFR · OIS日频月均化 · MAD稳健SOFR−OIS利差FRAG · 5票退出第3票FRAG
CFTC基差交易空头周度周五对齐 · T+3日基差交易/GDPFRAG · 拥挤度风险FRAG
Fred DGS10Y/2Y国债收益率日频月均化期限利差 = 10Y−2YBII货币宽松 · 出清倒计时BII · 倒计时
ICE BofAIG OAS · HY OAS日频月均化信用利差水平FRAG · FCI构成FRAG
CBOEVIX日频月均化 · MADVIX水平 · 跨市场相关性FRAG · FCI构成 · 5票第5票FRAG
Baltic ExchangeBDI日频月均化BDI水平 vs 历史均值RCS能源运输验证 · S模型E维度RCS · S
UN WPPTFR · 抚养比 · 劳动人口 · 退休后寿命 · 移民净流入年度线性月度插值 · TFR取3yr MA老年抚养比 · 劳动年龄增速 · TFR(3yr MA) · 退休后寿命 · 移民净流入率RCS人口约束v3流量层(90%) · S模型P维度RCS · S
FAO FAOSTAT耕地面积 · 人均耕地 · 作物产量年度T+180日 · 5yr MA平滑㉔耕地退化D_land[0,1%/yr] · 土地承载力上限(7国RCS饱和值)RCS人口约束v3上限层 + 流量层(5%)RCS · S
USDA/FAO贸易农产品贸易量 · 隐含土地面积年度T+120日 · 归一化[−0.5,+0.5]㉕虚拟土地净进口V_land(反向) · 与隐含能源贸易同构RCS人口约束v3流量层(5%)RCS
FAO AQUASTAT水资源总量 · 人均水资源 · 用水强度年度T+180日水资源约束验证 · 华北水/加州水等区域压力土地承载力上限层辅助验证RCS
PBoCM2 · 社融月度T+15日 · MADM2−社融剪刀差 · 社融同比中国BII信贷维度BII(中国)
dshort居民债务/GDP · 保证金债务季度Chow-Lin · T+60日杠杆存量 = 0.6×居民债务+0.4×保证金BII杠杆存量维度BII
↑ 模型失效预警 → 宏观因子选择 · 三笔跨期存量支取S
← 返回主仪表盘