点赞、关注,养成良好习惯
Life is short, U need Python
量化投资基础系列,不断更新中
资本资产定价模型(Capital Asset Pricing Model,CAPM)是由美国经济学家 威廉·夏普(William Sharpe)于20世纪60年代基于 马科维茨
现代投资组合理论(均值-方差模型)率先提出来的。后来经过了 林特纳(John Lintner)、特雷诺(Jack Treynor)和 莫辛(Jan Mossin)等人发展而逐步形成的研究 证券市场
中资产的 预期收益
和 风险
之间关系的理论体系,是现代金融市场价格理论的支柱,广泛应用于 投资决策
和 公司理财
等领域。
在资本资产定价模型中,所谓资本资产主要指的是 股票 资产,而定价则是试图解释资本市场如何决定股票收益率,进而决定股票价格。
1. 模型假设
CAPM 模型是建立在一系列假设基础上的,其中主要包括:
-
(1)所有投资者均追求单期财富的期望效用最大化,并以各备选组合的期望收益和标准差为基础进行组合选择。
-
(2)所有投资者均可以无风险利率无限制地借入或贷出资金。
-
(3)所有投资者拥有同样预期,即对所有资产收益的均值、方差和协方差等,投资者均有完全相同的主观估计。
-
(4)所有资产均可被完全细分,拥有充分的流动性。
-
(5)所有投资者均没有交易成本、没有税金。
-
(6)所有投资者均为价格接受者,即任何一个投资者的买卖行为都不会对股票价格产生影响。
-
(7)所有资产的数量是给定的和固定不变的。
2. CAPM 模型
2.1 传统的CAPM模型
E ( R q ) − R f = β q m [ E ( R m ) − R f ] E(R_q)−R_f=\beta_{qm}[E(R_m)−R_f] E(Rq)−Rf=βqm[E(Rm)−Rf]
其中:
-
R m R_m Rm 是市场投资组合的收益率。它的作用是作为一个基准,评估目标投资组合相对于基准的提升量。在实际应用中,常选取大盘指数。
-
R q R_q Rq 代表投资组合的收益率。
-
R f R_f Rf 代表无风险资产收益率,比如国债等固收资产。
-
β q m = σ ( R q , R m ) σ 2 ( R m ) \beta_{q m}=\frac{\sigma\left(R_{q}, R_{m}\right)}{\sigma^{2}\left(R_{m}\right)} βqm=σ2(Rm)σ(Rq,Rm) 是投资组合 q q q 的 β \beta β 值。
- ∣ β ∣ |\beta| ∣β∣ 大于1,代表投资组合比大盘的波动更剧烈;
- ∣ β ∣ |\beta| ∣β∣ 小于1,代表投资组合的波动小于大盘的波动;
- β \beta β 值等于1,代表投资组合的波动与大盘的波动相当;
- β \beta β 为负值,代表投资组合与大盘的波动方向相反。
-
E ( R q ) − R f E(R_q)−R_f E(Rq)−Rf 是风险投资组合 q q q 比无风险资产高出的期望收益率(风险溢酬)。
2.2 流行的CAPM模型
E
(
R
i
)
=
R
f
+
β
i
[
E
(
R
m
)
−
R
f
]
E(R_i)= R_f + \beta_{i}[E(R_m)−R_f]
E(Ri)=Rf+βi[E(Rm)−Rf]
其中,
β
i
=
σ
(
R
i
,
R
m
)
σ
2
(
R
m
)
\beta_{i}=\frac{\sigma\left(R_{i}, R_{m}\right)}{\sigma^{2}\left(R_{m}\right)}
βi=σ2(Rm)σ(Ri,Rm) 可以反映出单个股票的系统风险水平。
- CAPM 模型表明:单个股票的期望收益是无风险收益和系统性风险溢酬之和,而非系统风险可以通过分散化投资消除。
3. CAPM 模型的应用
Jensen(1968)在研究共同基金表现时,将CAPM模型写成如下形式:
R i t − R f t = α i + β i ( R m t − R f t ) + ϵ i t R_{it} - R_{ft} = \alpha_i + \beta_i(R_{mt} - R_{ft}) + \epsilon_{it} Rit−Rft=αi+βi(Rmt−Rft)+ϵit
常见的分析方法
- 基本面分析
- 通过研究公司的财务状况判别公司是否具有价值
- 经济环境分析
- 产业分析
- 公司分析
- 技术面分析
- 基本信仰:“历史重演”
- 分析市场价格判别股价走势
- 消息面分析
- 分析股票价格是否受消息面的影响
- A l p h a \mathbf{Alpha} Alpha 策略
- 出发点:CAPM 模型
- 核心思想:构建投资组合对冲系统风险,获得Alpha超额收益。
3.1 单资产之Python实现
- R i R_i Ri:新安股份(600596.SH)
- R m R_m Rm:中证流通指数(000902.SH)
- R f R_f Rf:无风险利率(一年期国债利率)
数据集:“Index_data.csv” + “xinan_data.csv”
# 读取数据集
import pandas as pd
df = pd.read_csv('datas\Index_data.csv',index_col='Trddt')
df.index = pd.to_datetime(df.index)
df.head(2)
# 获取指数数据:R_m
df_mkt = df[df.Indexcd==902]
df_mkt.head(2)
省略代码详见资源包!
# 画出散点图
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['simhei']
plt.rcParams['axes.unicode_minus'] = False
plt.figure(figsize=(8,4))
plt.scatter(Rets_rf.values[:,0],Rets_rf.values[:,1])
plt.title('图1 新安股份和中正物流指数日收益率',loc='center')
plt.show()
接下来,利用上述数据集拟合CAPM模型!
不含截距项情形下
省略代码详见资源包!
-
CAPM模型(不含截距项)为:
R i − R f = 1.1096 ( R m − R f ) + ϵ i R_i - R_f = 1.1096(R_m - R_f) + \epsilon_i Ri−Rf=1.1096(Rm−Rf)+ϵi -
结论:beta值表明新安股份的波动率大于对应的大盘指数(版块指数)。Beta值表示大盘波动带来的收益。
含截距项情形下
- CAPM模型(含截距项)为:
R i − R f = − 0.0017 + 1.1293 ( R m − R f ) + ϵ i R_i - R_f = -0.0017 + 1.1293(R_m - R_f) + \epsilon_i Ri−Rf=−0.0017+1.1293(Rm−Rf)+ϵi - 结论:Alpha值并不显著地异于0,且Beta值表明新安股份的波动率大于对应的大盘指数(版块指数)。Alpha值 表示自身价值的收益;Beta值 表示大盘波动带来的收益。
3.2 多资产之Python实现
- R p R_p Rp:多个资产的投资组合收益率
- R m R_m Rm:中证流通指数(000902.SH)
- R f R_f Rf:无风险利率(一年期国债利率)
提示:首先,根据 均值–方差模型 构建多个资产的投资组合模型;其次,把投资组合收益率看成单个资产类似上述方法建立模型即可!
4. CAPM模型的评价
CAPM 模型形式上简单明了、思想上易于理解,它把任何一种风险证券的价格都划分为三个因素:无风险收益率、风险的价格和风险的计算单位,并把这三个因素有机结合在一起。CAPM 简单的线性结构令其在学术界和业界被广泛使用,并成为现代金融市场价格理论的基础。
CAPM 建立在 Markowitz 投资组合模型基础之上,也建立在 Markowitz 模型的假设之上。总结起来,CAPM模型需要满足如下假设:
-
(1)投资者希望财富越多越好,效用是财富的函数,财富又是投资收益率的函数,因此可以认为效用为收益率的函数;
-
(2)投资者能事先知道投资未来收益率的概率分布为正态分布,且所有投资者对资产未来收益率概率分布的看法是一致的;
-
(3)投资风险用投资收益率的方差或标准差度量,影响投资决策的主要因素为期望收益率和风险两项;
-
(4)所有投资者具有相同的投资期限;
-
(5)所有的证券投资可以无限制地细分,在任何一个投资组合里都可以含有非整数股份;
-
(6)投资者都遵守占优准则(Dominance Rule),即在同一风险水平下选择收益率较高的证券,在同一收益率水平下选择风险较低的证券;
-
(7)可以在无风险折现率的水平下无限制地借入或贷出资金,买卖证券时没有税负及交易成本;
-
(8)所有投资者可以及时免费获得充分的市场信息;
-
(9)不存在通货膨胀,且折现率不变。
上述假设表明再次要求投资者是理性的,且严格按照马科威茨模型的规则进行多样化的投资,并将从有效边界的某处选择投资组合;此外,资本市场是完全有效的市场,没有任何磨擦阻碍投资。可以看出,CAPM 的假设前提是难以实现的,不过与任何理论模型相似,只要理论模型重点强调的内容可以代表现实,其他部分用假设来简化是无伤大雅的。不过,CAPM 中的 Beta 值是非常不确定的,相同股票在不同时期估计 Beta 值会得到截然不同的结果,特别是现在几乎都在用历史数据进行计算 Beta 值,这样的 Beta 对投资的指导意义并不是很大。
5. 参考资料
- 蔡立耑. 量化投资以Python为工具[M]. 北京:电子工业出版社,2017.
- PyQuant. 量化投资基础[M]. 北京:科学出版社,2024.
6. 资源包下载
- 链接:https://pan.baidu.com/s/1pUzosRHZB9aAUW7PXhNDXA
- 提取码:1234
- 写作不易,切勿白剽
- 点赞关注,最大鼓励
- 持续更新,未完待续…