持仓行业标签更新了,如何避免历史配置贡献被改写
证券行业标签更新,不应悄悄覆盖历史归因。先保存证券级旧类、新类和生效边界,再并列“当时分类”与“统一新分类重述”两套结果。本例只改变分类,组合和基准总回报不变,配置、选择、交互的分配却改变;这正是映射版本需要独立审计的原因。
六只证券的标识、价格与分类有效日是什么?
本篇构造六证券A至F,不是真实代码,人民币单币种、无杠杆、税费或分红。观察二〇二五年两个半年,一至六月与七至十二月;各半年起点组合与基准按给定权重再平衡,故第二期继续使用表内权重,不假装它们自然漂移后仍恰好相同。价格初值均一百,后续价格按明确的两期收益生成。
X、Y是自定义教学行业,不采用任何现实行业机构字典。A、B始终X,D、E、F始终Y,C在七月一日由X转Y。有效区间前闭后开:上半年包含六月三十日结束的收益,七月开始使用新标签;同一证券同一时点只有一个类别,不能两边各计一次。
| 证券 | 原分类 | 新分类 | 生效边界 | 组合权重 | 基准权重 | 期初价 | 6月末价 | 12月末价 |
|---|---|---|---|---|---|---|---|---|
| A | X | X | 全期不变 | 30.000000% | 20.000000% | 100.00 | 110.00 | 107.80 |
| B | X | X | 全期不变 | 20.000000% | 20.000000% | 100.00 | 100.00 | 106.00 |
| C | X | Y | 2025-07-01 | 10.000000% | 20.000000% | 100.00 | 95.00 | 102.60 |
| D | Y | Y | 全期不变 | 15.000000% | 10.000000% | 100.00 | 104.00 | 104.00 |
| E | Y | Y | 全期不变 | 15.000000% | 15.000000% | 100.00 | 102.00 | 97.92 |
| F | Y | Y | 全期不变 | 10.000000% | 15.000000% | 100.00 | 98.00 | 100.94 |
组合权重三十、二十、十、十五、十五、十个百分点,合一百;基准二十、二十、二十、十、十五、十五个百分点,同样合一百。每一行同时保留稳定证券标识、映射版本与有效日,避免同名异券或一券改名制造假跨类。缺标签不等于该证券收益零,也不能直接从归因样本删掉。
当时分类与统一重述,是哪两种不同提问?
当时分类用上半年旧字典、下半年新字典,回答各期当时政策下如何分组。统一新分类重述把C在上半年也放Y,回答若整段都按新字典,历史分项会怎样。这是两套有版本标签的报告,后者不是当时真实可得的分类,不能回填旧报告后宣称从来如此。
本例C的价格与证券收益完全不变,只有分组归属变化,所以改变的是归因桶,不是经济损益。真实跨类也可能同时伴随业务重组,但不能单凭字典更新的日期认定收益原因。分类变更事实和经济解释需要不同证据,这张交叉表只证明何时按哪把尺归类。
行业组内回报与三项贡献如何保持口径?
组权重是所属证券权重之和,组内回报用证券权重乘收益求和后,再除本组权重。这里的组内回报是条件收益,不能把未归一的组合贡献当回报再次乘组权重,否则多乘一次。组合和基准分别按自己的组内比例计算,不能共用一方的分母。
采用BHB教学分解:配置为组合组权重减基准组权重,再乘基准组回报;选择为基准组权重乘组合与基准组回报差;交互为权重差乘回报差。各组相加闭合到组合总回报减基准。本例所有组两边权重都正;空组或无映射时不自行补零收益,需要另定政策。
| 半年段 | 分类政策 | 行业 | 组合组权重 | 基准组权重 | 组内组合回报 | 组内基准回报 | 配置百分点 | 选择百分点 | 交互百分点 |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 当时分类 | X | 60.000000% | 60.000000% | 4.166667% | 1.666667% | 0.000000 | 1.500000 | 0.000000 |
| 1 | 当时分类 | Y | 40.000000% | 40.000000% | 1.750000% | 1.000000% | 0.000000 | 0.300000 | 0.000000 |
| 1 | 统一新分类重述 | X | 50.000000% | 40.000000% | 6.000000% | 5.000000% | 0.500000 | 0.400000 | 0.100000 |
| 1 | 统一新分类重述 | Y | 50.000000% | 60.000000% | 0.400000% | -1.000000% | 0.100000 | 0.840000 | -0.140000 |
| 2 | 当时分类 | X | 50.000000% | 40.000000% | 1.200000% | 2.000000% | 0.200000 | -0.320000 | -0.080000 |
| 2 | 当时分类 | Y | 50.000000% | 60.000000% | 1.000000% | 2.416667% | -0.241667 | -0.850000 | 0.141667 |
| 2 | 统一新分类重述 | X | 50.000000% | 40.000000% | 1.200000% | 2.000000% | 0.200000 | -0.320000 | -0.080000 |
| 2 | 统一新分类重述 | Y | 50.000000% | 60.000000% | 1.000000% | 2.416667% | -0.241667 | -0.850000 | 0.141667 |
表的用途是暴露C搬家影响了哪些组权重与组内均值,而不是再次教授母题里已有的四象限。只有证券级明细、中间组账与总体三层同时留存,复核者才能判断差额来自价格、权重还是字典。
为什么上半年配置从零变成零点六个百分点?
| 半年段 | 政策 | 总组合 | 总基准 | 配置百分点 | 选择百分点 | 交互百分点 | 总差百分点 | 残差百分点 |
|---|---|---|---|---|---|---|---|---|
| 1 | 当时分类 | 3.200000% | 1.400000% | 0.000000 | 1.800000 | 0.000000 | 1.800000 | 0.000000 |
| 1 | 统一新分类重述 | 3.200000% | 1.400000% | 0.600000 | 1.240000 | -0.040000 | 1.800000 | 0.000000 |
| 2 | 当时分类 | 1.100000% | 2.250000% | -0.041667 | -1.170000 | 0.061667 | -1.150000 | 0.000000 |
| 2 | 统一新分类重述 | 1.100000% | 2.250000% | -0.041667 | -1.170000 | 0.061667 | -1.150000 | 0.000000 |
上半年旧分类下X、Y两组的组合与基准总权重分别都相等,配置为零,选择一点八个百分点,交互为零。统一新分类后,上半年配置变零点六、选择一点二四、交互负零点零四,合计仍一点八。上半年组合总回报百分之三点二、基准百分之一点四,没有被“行业更名”改写。
下半年两政策都已经使用新类,因此各项一致:组合百分之一点一,基准百分之二点二五,总差负一点一五个百分点。表中分项显示六位可能有末位相消,内部精度先核闭合,最后才格式化,不把显示舍入残差写成策略交易利润。
总收益不变,是否证明任意映射都正确?
不证明。把C错放另一个类,总收益仍然可能守恒,因为证券没丢,分类加总依旧是一项全分区。总额守恒只排查遗漏或重复,无法证明类别在事实和政策上正确。还需核稳定标识、字典版本、有效起止与变更依据;本例自定义X/Y明确用于实验,没有真实行业合法性结论。
若删除一个缺映射的证券,再把其余权重重新归一,表格可能重新合一百,却改掉了原始组合。若把同一证券同时分X和Y,组权重或收益会重复。遇一对多拆分,需要证券级拆分比例与生效事实,不能仅凭名称相似自动匹配。作者模型对缺标签明确拒算,而非让收益为零通过。
历史标签更新后,应怎样保存可复核版本?
至少保存原始证券收益与权重快照、旧字典、新字典、交叉映射、生效时间和两版输出。更正时追加重述原因,不覆盖旧标签后只保留最终曲线。某个映射修订,应重算受影响组均值、全部分项和叙述,不只修改行业名而保留旧数字。
行业输入核好后,跨期贡献再用多期归因链接;若静态持仓无法解释实际组合回报,要查持仓与交易残差桥,不能让分类重述吞掉缺失交易。背景见业绩归因母题。夏普工具只提供现有基础统计,不管理历史行业字典或自动恢复旧映射。本例总额与分项都可复算,但不证明管理者具有行业配置能力。
分类生效日与文件下载日不一致,该记哪一个?
两者都记。下载日说明何时取得这份字典,生效日说明它适用于哪个收益区间。七月才下载一份注明一月生效的修订字典,也不能无说明覆盖一月当时报告;应保留当时可得版和事后修订版,区分数据更正与主动重述。仅在文件名写年份,无法表达这种差别。
若一条映射的旧有效结束与新有效开始之间有空档,程序应标记该时点无确定标签;若区间重叠,则同一证券可能被双重归属,先拒绝而不是随机保留最后一行。总权重合一与各组数值闭合都不能替代区间唯一性。证券C是本例唯一跨类对象,读者可定位到底哪些报告段受影响,不用重算无关时期来掩盖边界问题。
来源核对日:2026-10-24。Yang Lu、David Kane,Performance Attribution for Equity Portfolios,The R Journal,2013-09-23,实读第3节类别与Brinson定义;论文范围为多头单币种权益。历史字典、有效日与证券表是本站构造,不是该论文数据或pa包实测。
道积君编辑组|AI辅助起草,构造算例经程序复算。价格、账户与日期均为教学假设;文中计算不代表真实产品业绩、未来收益或GIPS合规。
复算资料
本篇编号DJ3-069。下载Python复算脚本(文本)与构造输入输出JSON,按编号核对本篇。脚本改存为.py后可用Python标准库运行,数据不是实际用户记录。