← 返回文章库

每对相关系数都正常,拼成矩阵为什么会算出负方差

2026-10-24 · L5

两两相关系数各自正常,不足以证明拼接出的协方差矩阵合法。本例真实构造八行含缺失值的收益面板,每对都在自己的交集上计算,相关为一、一、负零点六;拼接后却能用权重负一、一、一算出负方差约负一点六三三三三三。问题出在各格没有共享同一组观测。

八行缺失面板怎样让别人逐格重建

以下为教学日序号p1至p8,数值单位是日收益百分点,负一表示负百分之一;缺失表示没有观测,绝不代表零收益。没有真实证券、行情日期或年化因子。前六行分别只记录AB、AC、BC两两资产,最后两行才同时记录三项。每项资产边际共有六个观测,而每对交集只有四行,计算前必须保存样本ID,否则仅凭一个样本数看不出交集不同。

样本IDABC
p1-1-1缺失
p211缺失
p3-1缺失-1
p41缺失1
p5缺失-11
p6缺失1-1
p7-0.500000-0.500000-0.500000
p80.5000000.5000000.500000

样本协方差先在当前选定交集内分别减去两列均值,再把乘积相加除以样本数减一;相关系数也用同一交集内两列标准差作分母。不能拿全列六行均值配四行交叉乘积,尽管本例均值恰为零,其他输入下那样会直接改变估计量。本文对角线使用各列全部可得观测,非对角线使用两列共同可得观测,这是需要诊断的两两删除流程,而不是先捏一个非法矩阵再找故事解释。

每一格的样本来源与中间量

资产对实际样本IDn左均值右均值样本协方差同交集相关
AA["p1","p2","p3","p4","p7","p8"]60.0000000.0000000.9000001.000000
AB["p1","p2","p7","p8"]40.0000000.0000000.8333331.000000
AC["p3","p4","p7","p8"]40.0000000.0000000.8333331.000000
BB["p1","p2","p5","p6","p7","p8"]60.0000000.0000000.9000001.000000
BC["p5","p6","p7","p8"]40.0000000.000000-0.500000-0.600000
CC["p3","p4","p5","p6","p7","p8"]60.0000000.0000000.9000001.000000

A、B、C各自非缺失收益平方和都为四点五,除以五得到边际样本方差零点九。AB与AC交集的乘积和均为二点五,除以三得到六分之五,约零点八三三三三三;它们在各自交集中完全同向,因此相关系数为一。BC交集前两条完全反向、末两条同向,乘积和负一点五,除以三得到负零点五,交集内相关为负零点六。每个相关都落在负一到一之间。

行ABC
A0.9000000.8333330.833333
B0.8333330.900000-0.500000
C0.833333-0.5000000.900000

这里甚至每个二乘二子矩阵都能单独通过非负行列式检查:对角线均为零点九,交叉项绝对值最大六分之五,小于零点九。只检查逐对范围或逐对二乘二小块仍然不够,三项一起可能不满足整体半正定。不要把各对相关系数与边际标准差相乘,重新制造另一套协方差后仍声称它就是上表两两协方差;两种拼法都是不同算法,必须先固定对象再检验。

一个带符号权重就能证伪整体合法性

协方差作为方差模型应使任意实权重的二次型非负。取构造见证向量A负一、B一、C一,风险权重和为一,L1为三;这里只用它作数学检验,不建议实际杠杆组合。展开时三项对角贡献各为零点九,AB与AC交叉贡献各为负三分之五,BC交叉贡献为负一。交叉项必须包含对称位置的两次乘积,下面列出的交叉项已经乘二,汇总时不能再加倍。

二次型项(交叉项已乘2)贡献
AA0.900000
AB-1.666667
AC-1.666667
BB0.900000
BC-1.000000
CC0.900000

三项对角合计二点七,两项A交叉贡献合计负三点三三三三三三,BC贡献负一,最终为负一点六三三三三三,单位百分点平方。一个实际负二次型已经足以否定半正定,不必依赖特征值软件。不能对负值强行开平方,也不能把它截成零后宣称组合没有风险;零只是掩掉了风险输入不合法的证据,优化器可能因此偏好原本不该存在的方向。

公开模型先从面板生成所有格,再以权重和矩阵逐项相乘生成证据,未把负数预填成输出。若遗漏某一对样本或把缺失补零,表二的样本数、方差和相关都会改变,本例反证将不再对应原流程。复核时最好先验证每对ID和均值,然后再核矩阵与展开项,这样能定位数据处理错误究竟发生在样本筛选还是线性代数阶段。

改为统一样本后,得到什么代价

统一删除取三列都可得的p7、p8,两个观测分别为三项同时负零点五和正零点五。每列均值为零,样本协方差全部为零点五;同一见证向量的二次型变为零点五,等于零点五乘权重和的平方。对任意权重都不小于零,因此这个共同样本矩阵半正定,但只有秩一,也不能直接求普通逆矩阵。

统一样本矩阵行ABC
A0.5000000.5000000.500000
B0.5000000.5000000.500000
C0.5000000.5000000.500000

统一样本只剩两条,相比边际六条和逐对四条,信息损失十分明显。修复矩阵合法性不等于估计质量变好,更不证明未来相关性稳定。若共同样本不足两条,本文样本分母无法使用,应返回数据不足而不是给零矩阵;若某列在共同样本中恒定,相关系数未定义,但协方差仍可以为零,需要分开处理这两个统计对象。

怎样设置矩阵进入优化器前的检查

至少保存原始缺失面板、每格使用的ID、样本数、均值和分母,先核对对称性与对角非负,再检验整体半正定。对小矩阵可以构造二次型反例,对高维模型应使用适当的矩阵分解或特征值检查并披露数值容差。发现实质负值后,要返回估计流程审计,不要只让求解器忽略检查。正定、可逆与预测准确是三件不同的事,不能凭其中一个标签替代另外两个。

CVX组合课程的风险定义将组合方差写为权重与协方差的二次型,本文以原始面板证明拼接流程可以破坏其非负性。来源不提供本例数据,也不保证统一删除在缺失机制下无偏。后续若考虑收缩,应先声明对哪个估计矩阵操作,不能给一个非法输入加任意小对角数就声称所有统计问题已经解决。

缺失并不是一种收益观测,补零需要另作数据生成假设,不能仅为了让程序运行而默认采用。共同样本对照虽然在本例恢复半正定,也应保留被舍弃的六条记录及其原因,使后续读者能区分统计估计的变化与资产真实收益的变化。

从分数到持仓的母题可了解组合构建背景;组合波动率基础工具只核给定输入的基础风险,本页新增模型在教学表中核算,不表示工具已增加优化能力。相关条件可继续核对软约束惩罚权重与协方差收缩组合权重,分别保留各题输入,避免把不同约束的结论混用。

道积君编辑组,AI辅助编写与核算。本文编号DJ4-085,构造教学数据不对应真实账户;来源支持所注明方法,不证明参数、预测或执行条件真实成立。

复算资料

本篇编号DJ4-085。下载Python复算脚本(文本)与构造输入输出JSON,按编号核对本篇。脚本改存为.py后可用Python标准库运行,数据不是实际用户记录。

这个页面有问题?

提交时会附带当前页面地址和浏览器信息,帮助我们定位问题。不填联系方式即为匿名。