实证资产定价(Empirical asset pricing)已经发布于Github和Pypi. 包的具体用法(Documentation)博主将会陆续在CSDN中详细介绍,也可以通过Pypi直接查看。

Pypi: pip install --upgrade EAP

Github: GitHub - whyecofiliter/EAP: empirical asset pricing

张成分析(spanning)用于分析新加入的资产或投资组合是否会使得资产配置更加有效,即是否可以使投资组合有效前沿向前移动,或者说使得在同等收益的情况下新加入的资产形成的投资组合可以带来更低的风险。

张成分析是一种基于回归的统计检验,它进行下面的回归

即用已有的资产对新加入的资产做回归。如果我们得到alpha=0,beta的总和等于1,那么说明新加入的资产可以通过已有资产的线性组合得到,并且在同等收益的情况下,新资产具有更高的风险,则新资产对投资组合的改善没有贡献。如果上述的原假设没有被满足,则说明新加入的资产对投资组合具有改善贡献,且以往的资产无法有效复制出新资产。

综上所述,张成分析的原假设为

针对原假设可以构建四个假设检验和相应的的统计量,统计量分别为三个渐进统计量和一个小样本统计量。三个渐进统计量的假设检验分别为似然比检验LR,Wald检验W,拉格朗日乘子检验LM, 这三个统计量都满足自由度为2N的卡方分布,N是新加入资产的个数。一个小样本统计检验为F检验。当N>1时,F分布的参数为(2N, 2(T-K-N));当N=1时, F分布的参数为(2, T-K-1)。T是时间序列长度,K是已有资产个数。

由于张成检验是基于投资组合有效前沿构建的,根据均值方差构建的投资组合有效前沿对于参数是极其敏感的,所以张成检验对于检验新资产是否更有效并不是一个很准确的检验,这反映在这个检验犯第一类错误的概率远大于理论值,即新资产并不是一个更有效的资产但被归为一个更有效的资产的概率远大于理论值,这时对新资产的判断需要结合回归的alpha值和计算的delta值。但是这种检验的第二类错误的概率(统计势)是可以得到保证的,即如果新资产是有效资产那么它被认为是无效资产的概率是非常低的,就是说将有效资产误判为无效资产的概率是非常低的。

综上所述,运用张成分析时是要针对具体问题判断是否适用的。

想要更进一步了解张成分析参考

R. Kan, G. Zhou, Test of Mean-Variance Spanning, Annals of Economics and Finance, 2012, 13-1, 145-193.

举例

# %% test Spanning test
def test_spanning_test():'''This function is for testing spanning test'''import numpy as npfrom portfolio_analysis import Spanning_test as spanfactor1 = np.random.normal(loc=0.1, scale=1.0, size=(240, 1))factor2 = np.random.normal(loc=0.2, scale=2.0, size=(240, 1))factor3 = np.random.normal(loc=0.5, scale=4.5, size=(240, 1))factor4 = 0.1 * factor1 + 0.5 * factor2 + 0.4 * factor3factor5 = -0.2 * factor1 - 0.1 * factor2 + 1.3 * factor3factor6 = 1.0 * factor1 - 0.5 * factor2 + 0.5 * factor3factor7 = 0.2 * factor1 + 0.1 * factor2 + 0.7 * factor3factor8 = -0.1 * factor1 -0.1 * factor2 + 1.2 * factor3factor9 = -0.3 * factor1 - 0.2 * factor2 + 1.5 * factor3factor10 = 0.9 * factor1 - 0.5 * factor2 + 0.6 * factor3factor11 = 0.2 * factor1 - 0.1 * factor2 + 0.9 * factor3factornew1 = np.random.normal(loc=0.3, scale=2.0, size=(240, 1))factork = np.block([factor1, factor2, factor3, factor4, factor5, factor6, factor7, factor8, factor9])factorn = np.block([factor10, factor11])model1 = span(factorn, factork)model1._regress()model1._build_statistics()model1.fit()model1.summary()model2 = span(factornew1, factork)model2._regress()model2._build_statistics()model2.fit()model2.summary()test_spanning_test()================================================================================================================================
+--------+----------+---------+----------+---------+-----------+----------+------------+----------+-----------+----------+------------+-----+---+---+
| asset  |  alpha   | p-value |  delta   |  F-test | p-value-F |    LR    | p-value-LR |    W     | p-value-W |    LM    | p-value-LM |  T  | N | K |
+--------+----------+---------+----------+---------+-----------+----------+------------+----------+-----------+----------+------------+-----+---+---+
| asset0 | -0.00000 | 0.13810 | -0.00000 | 3.10291 |  0.01543  | 12.83472 |  0.01211   | 13.14587 |  0.01058  | 12.53381 |  0.01379   | 240 | 2 | 9 |
| asset1 | -0.00000 | 0.97109 | -0.00000 | 3.10291 |  0.01543  | 12.83472 |  0.01211   | 13.14587 |  0.01058  | 12.53381 |  0.01379   | 240 | 2 | 9 |
+--------+----------+---------+----------+---------+-----------+----------+------------+----------+-----------+----------+------------+-----+---+---+
+--------+---------+---------+---------+----------+-----------+----------+------------+----------+-----------+----------+------------+-----+---+---+
| asset  |  alpha  | p-value |  delta  |  F-test  | p-value-F |    LR    | p-value-LR |    W     | p-value-W |    LM    | p-value-LM |  T  | N | K |
+--------+---------+---------+---------+----------+-----------+----------+------------+----------+-----------+----------+------------+-----+---+---+
| asset0 | 0.47970 | 0.00029 | 1.04366 | 10.56632 |  0.00004  | 21.09647 |  0.00003   | 22.05146 |  0.00002  | 20.19584 |  0.00004   | 240 | 1 | 9 |
+--------+---------+---------+---------+----------+-----------+----------+------------+----------+-----------+----------+------------+-----+---+---+

张成分析(spanning test):portfolio_analysis.Spanning_test相关推荐

  1. 更新:持续性分析(EAP.portfolio_analysis.Persistence)

    实证资产定价(Empirical asset pricing)已经发布于Github和Pypi. 包的具体用法(Documentation)博主将会陆续在CSDN中详细介绍,也可以通过Pypi直接查看 ...

  2. 【笔记】因子投资:方法与实践

    文章目录 历史 宏观综述 研究角度 关于β'λ 关于α 截面角度vs时序角度 学术理论 基础概念 金融理论 MM定理 资产定价模型 多因子模型 研究方法论 投资组合排序法 排序 检验 多重排序法 多因 ...

  3. 矩阵论 - 9 - 线性无关、基、维数

    线性无关.基.维数 线性无关 Independence 假定有 \(m\times n\) 的矩阵 \(A\) ,以列向量形式表示:\(\begin{bmatrix}v_1 & v_2 &am ...

  4. 应用矩阵分析1 子空间分析1 线性子空间基础

    应用矩阵分析1 子空间分析1 线性子空间基础 基本理论 正交分解 子空间的正交投影 应用举例 离散信号的Casorati矩阵 正交多分辨率分析 Orthogonal Procrustes Proble ...

  5. KCF目标跟踪方法分析与总结

    KCF目标跟踪方法分析与总结 两个竖杠是什么数学符号    就是这个 | |  这个符号叫做范数,它事实上是由线性赋范空间到非负实数的映射 在线性赋范空间中,它可以表示空间中的点与原点间的距离,两点间 ...

  6. kylin KV+cube方案分析

    2019独角兽企业重金招聘Python工程师标准>>> 前言   在使用Kylin的时候,最重要的一步就是创建cube的模型定义,即指定度量和维度以及一些附加信息,然后对cube进行 ...

  7. 主成分分析(PCA)和独立成分分析(ICA)相关资料

    来源:知乎:独立成分分析(ICA)与主成分分析(PCA)的区别在哪里(https://www.zhihu.com/question/28845451) - 一楼:魏天闻 首先回答题主的问题:不管是PC ...

  8. RAID原理分析总结

    Raid全称" 独立磁盘冗余阵列", 有时也简称磁盘阵列(Disk Array). RAID是一种把多块独立的硬盘(物理硬盘)按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提 ...

  9. Docker 部署ELK 日志分析

    Docker 部署ELK 日志分析 elk集成镜像包 名字是 sebp/elk 安装 docke.启动 yum install docke service docker start Docker至少得 ...

  10. 决策树模型回归可视化分析_【时间序列分析】在论文中用向量自回归(VAR)模型时应注意哪些问题?...

    在论文的写作中,向量自回归(VAR)模型是经常用的一个模型,同时它也是多维时间序列模型的最核心内容之一. 首先要清楚,VAR模型主要是考察多个变量之间的动态互动关系,从而解释各种经济冲击对经济变量形成 ...

最新文章

  1. Android版本更新踩坑,Android Studio 3.0升级后踩到的坑
  2. XNA Billboard(公告板技术)
  3. python3 json解析_Python3 JSON编码解码方法详解
  4. 自己动手写一个 strace
  5. 架构设计 之 你为啥只垂直切子系统没分层呢?
  6. IDEA常用的风格设置
  7. ActionItemBadge:在actionbar上显示badge数字提示
  8. javascript 未来新方法的介绍
  9. 用堆栈和用递归分别实现倒序打印
  10. odbc中不显示oracle,oracle:odbc无法提供初始化
  11. 操作系统以及Linux起源
  12. 基于CNN的SEEG/EEG脑电数据处理分析
  13. elementUI 表格宽度自适应、不换行
  14. 跪求大神定制类似苹果助手管理软件
  15. 【数据去噪】SG-多项式平滑算法
  16. ARM SMMUv3 architecture
  17. soot基础 -- soot 中的处理阶段
  18. CSDN官方力推的《用户社区》,值得你来逛逛
  19. 台式键盘计算机,一种台式计算机键盘的制作方法
  20. 谷歌浏览器插件-jsonView插件

热门文章

  1. 【WiFi 6E】WiFi 6E信道分布
  2. 2-网络编程学习环境搭建
  3. 史上首次!个人所得税退税来了!如何退?怎么操作?
  4. TiDB v5.3.0->v5.4.2->v6.1.0升级、TiDB/PD/TiKV/TiFlash扩缩容、TiSpark部署指北
  5. python簇状柱形图_使用Matplotlib绘制堆积条形图
  6. php 白鹭对接,微信好友排行榜 - 白鹭对接
  7. 【深入理解计算机系统】CSAPP-实验四:ArchLab全网最详细
  8. [CSAPP]Architecture Lab实验笔记
  9. 网易邮箱客户端服务器设置
  10. springboot+Vue+Elementui医院网上预约挂号系统java项目