复权数据对账调查报告:Fuyao vs Tushare(600519.SH)
日期:2026-09-13 | 结论:Fuyao 预计算复权序列(forward/backward)不符合标准复权语义,不可作为复权对账基准。
1. 标的
- 600519.SH(贵州茅台),单标的验证
- 期间含 5 次现金分红,无送股/配股(
per_share_bonus=0)
- 对照源:
- Tushare:
daily(原始价)+ adj_factor(复权因子)
- Fuyao:
/api/a-share/prices/historical(adjust=none|forward|backward)+ /api/a-share/corporate-actions/adjustment-factors(公司行为事件)
2. 数据范围
- 区间:2024-01-01 ~ 2026-09-11
- 交易日:654 天(两源行数一致)
- 除权除息日:2024-06-19、2024-12-20、2025-06-26、2025-12-19、2026-06-26
- 时区 Asia/Shanghai;复权锚点:前复权锚定最新交易日(2026-09-11)
3. 计算公式与结果
3.1 计算公式
- Tushare 后复权:
hfq_t = close_t × adj_factor_t
- Fuyao 隐含因子:
f_fy_t = bwd_t / raw_t
- 归一化因子:
f_norm_t = f_t / f_last
- 两源一致性检验:
ratio_t = f_fy_norm_t / f_ts_norm_t(标准语义下应为常数)
- 事件理论乘数:
m = P_prev × (1 + B) / (P_prev − D)(D=每股分红,B=每股送股比例,P_prev=除权前收盘)
- 事件实测乘数:
m = (X_after / X_before) / (raw_after / raw_before)
3.2 结果
A. 原始价一致性:Tushare 与 Fuyao adjust=none 收盘价 最大差 = 0.0(654 天完全一致)。
B. 事件乘数对照(5 次分红):
| 除权日 |
D(每股分红) |
B |
P_prev |
理论 m |
Tushare m |
Fuyao 隐含 m |
Fuyao 偏差 |
| 2024-06-19 |
30.876 |
0 |
1521.50 |
1.020713 |
1.020616 |
1.019817 |
-0.09% |
| 2024-12-20 |
23.882 |
0 |
1551.01 |
1.015639 |
1.015636 |
1.016105 |
+0.05% |
| 2025-06-26 |
27.673 |
0 |
1435.86 |
1.019652 |
1.019594 |
1.018293 |
-0.13% |
| 2025-12-19 |
23.957 |
0 |
1431.00 |
1.017026 |
1.017026 |
1.016659 |
-0.04% |
| 2026-06-26 |
28.024 |
0 |
1212.10 |
1.023668 |
1.023667 |
1.026550 |
+0.28% |
- Tushare 与理论一致(仅 4 位小数舍入差);Fuyao 事件乘数偏差 -0.13% ~ +0.28%。
C. 整体因子对账:
| 检验 |
结果 |
bwd / (raw × adj_factor) |
mean=0.803595,std=0.00715,min=0.788816,max=0.829398,最大相对偏差 26.77% |
归一化因子比 f_fy_norm / f_ts_norm |
mean=0.986630,std=0.00877,min=0.968485,max=1.018310(非常数) |
D. 日收益回归(标准复权仅在除权日出现跳跃,斜率应 ≈ 1.0):
| 序列 |
回归式 |
相关系数 |
| Fuyao backward |
bwd_ret = 0.8439 × raw_ret + 0.000103 |
R²=0.986 |
| Fuyao forward |
fwd_ret = 1.0399 × raw_ret |
corr=0.993 |
→ backward 日收益被系统性衰减至 84.4%;forward 被放大约 4%。
E. 隐含因子异常波动(非除权日不应变化):
- backward:159 天 |Δf| > 0.2%(其中仅 5 天为除权日)
- forward:31 天 |Δf| > 0.2%(其中 26 天为非除权日)
corr(Δf_fy, raw_ret) = -0.9801(隐含因子随当日涨跌反向变动)
典型非事件日样本:
| 日期 |
raw |
raw 日涨跌 |
Δf_fy |
| 2026-01-29 |
1437.72 |
+8.61% |
-1.44% |
| 2024-09-24 |
1372.60 |
+8.80% |
-1.19% |
| 2026-07-20 |
1327.50 |
+5.95% |
-1.14% |
| 2024-09-26 |
1529.00 |
+9.29% |
-1.14% |
| 2024-10-09 |
1595.15 |
-7.42% |
+0.90% |
F. 同日 OHLC 的 bwd/raw 比值(标准语义下同一日各字段应相同):
| 日期 |
open |
high |
low |
close |
raw close/open |
bwd close/open |
| 2024-09-24 |
6.577933 |
6.517096 |
6.592954 |
6.517355 |
1.068096 |
1.058260 |
| 2026-06-26 |
7.132126 |
7.132126 |
7.171921 |
7.171221 |
0.974671 |
0.980013 |
| 2026-09-11 |
7.031281 |
7.030190 |
7.055884 |
7.042277 |
0.992227 |
0.993778 |
→ 复权后序列的 OHLC 内部比例被改变(如 close/open 从 1.068096 变为 1.058260)。
G. 均价(VWAP)假设检验:corr(residual, Tushare vwap/close) = 0.0554 → 以 Tushare VWAP 解释不成立(不排除 Fuyao 使用其自有均价口径)。
4. 可能的问题
- 复权序列非「原始价 × 统一因子」:同日 OHLC 比值不一致、内部比例被改变 → 复权价来自不同价格基准或不同计算路径(最可能的根因)。
- 收益率系统性畸变:backward 日收益衰减至 0.844×、forward 放大至 1.04× → 用于回测/统计会产生严重偏差。
- 非除权日因子波动:backward 159 天、forward 31 天 → 排除单纯舍入误差。
- 数据源/快照不一致:复权序列与原始序列可能来自不同上游数据。
- 厂商语义待确认:需 Fuyao 明确
forward/backward 的定义(价格基准、公式、锚点、是否基于均价)。
- 已排除:原始价两源完全一致;事件分红数值合理;Tushare
adj_factor 与理论乘数一致(对照基准可信)。
5. 影响与建议
- 平台复权口径:原始价 + 因子(Tushare 已验证);Fuyao 预计算复权价禁止用于对账/入库,仅可单源展示并加显著标注。
- Fuyao 事件流:可作为因子推导输入,但必须逐事件与 Tushare 对账后使用。
- 厂商反馈:建议向 Fuyao 提交本报告证据(同日 OHLC 比值不一致、日收益斜率 0.844/1.04),要求说明复权口径并修复。
- Hub 适配器:Fuyao
adjust=qfq/hfq 输出加文档告警(或后续禁用),默认推荐 adjust=None。
- 复现方式:按本报告 §2/§3 使用 Tushare
daily+adj_factor 与 Fuyao REST(historical + corporate-actions)即可复现,不含任何凭证。
复权数据对账调查报告:Fuyao vs Tushare(600519.SH)
1. 标的
per_share_bonus=0)daily(原始价)+adj_factor(复权因子)/api/a-share/prices/historical(adjust=none|forward|backward)+/api/a-share/corporate-actions/adjustment-factors(公司行为事件)2. 数据范围
3. 计算公式与结果
3.1 计算公式
hfq_t = close_t × adj_factor_tf_fy_t = bwd_t / raw_tf_norm_t = f_t / f_lastratio_t = f_fy_norm_t / f_ts_norm_t(标准语义下应为常数)m = P_prev × (1 + B) / (P_prev − D)(D=每股分红,B=每股送股比例,P_prev=除权前收盘)m = (X_after / X_before) / (raw_after / raw_before)3.2 结果
A. 原始价一致性:Tushare 与 Fuyao
adjust=none收盘价 最大差 = 0.0(654 天完全一致)。B. 事件乘数对照(5 次分红):
C. 整体因子对账:
bwd / (raw × adj_factor)f_fy_norm / f_ts_normD. 日收益回归(标准复权仅在除权日出现跳跃,斜率应 ≈ 1.0):
bwd_ret = 0.8439 × raw_ret + 0.000103fwd_ret = 1.0399 × raw_ret→ backward 日收益被系统性衰减至 84.4%;forward 被放大约 4%。
E. 隐含因子异常波动(非除权日不应变化):
corr(Δf_fy, raw_ret) = -0.9801(隐含因子随当日涨跌反向变动)典型非事件日样本:
F. 同日 OHLC 的
bwd/raw比值(标准语义下同一日各字段应相同):→ 复权后序列的 OHLC 内部比例被改变(如 close/open 从 1.068096 变为 1.058260)。
G. 均价(VWAP)假设检验:
corr(residual, Tushare vwap/close) = 0.0554→ 以 Tushare VWAP 解释不成立(不排除 Fuyao 使用其自有均价口径)。4. 可能的问题
forward/backward的定义(价格基准、公式、锚点、是否基于均价)。adj_factor与理论乘数一致(对照基准可信)。5. 影响与建议
adjust=qfq/hfq输出加文档告警(或后续禁用),默认推荐adjust=None。daily+adj_factor与 Fuyao REST(historical+corporate-actions)即可复现,不含任何凭证。