马柯维茨均值-方差模型
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
马柯维茨均值-方差模型
在丰富的金融投资理论中,组合投资理论占有非常重要的地位,金融产品本质上各种金融工具的组合。现代投资组合理论试图解释获得最大投资收益与避免过分风险之间的基本权衡关系,也就是说投资者将不同的投资品种按一定的比例组合在一起作为投资对象,以达到在保证预定收益率的前提下把风险降到最小或者在一定风险的前提下使收益率最大。
从历史发展看,投资者很早就认识到了分散地将资金进行投资可以降低投资风险,扩大投资收益。但是第一个对此问题做出实质性分析的是美国经济学家马柯维茨(Markowitz)以及他所创立的马柯维茨的资产组合理论。1952年马柯维茨发表了《证券组合选择》,标志着证券组合理论的正式诞生。马柯维茨根据每一种证券的预期收益率、方差和所有证券间的协方差矩阵,得到证券组合的有效边界,再根据投资者的效用无差异曲线,确定最佳投资组合。马柯维茨的证券组合理论在计算投资组合的收益和方差时十分精确,但是在处理含有较多证券的组合时,计算量很大。
马柯维茨的后继者致力于简化投资组合模型。在一系列的假设条件下,威廉·夏普(William F. Sharp)等学者推导出了资本资产定价模型,并以此简化了马柯维茨的资产组合模型。由于夏普简化模型的计算量相对于马柯维茨资产组合模型大大减少,并且有效程度并没有降低,所以得到了广泛应用。
1 模型理论
经典马柯维茨均值-方差模型为:
21min max ()..1p T p n i i X X
E r X R s t x σ=⎧
⎪=∑⎪⎪=⎨⎪⎪=⎪⎩
∑T 其中,
12(,,...,)T n R R R R =;()i i R E r =是第i 种资产的预期收益率;12(,,...,)T n X x x x =是投资组合的权重向量;
()ij n n σ⨯=∑是n 种资产间的协方差矩阵;()p p R E r =和2
p σ分别
是投资组合的期望回报率和回报率的方差。
点睛:马柯维茨模型以预期收益率期望度量收益;以收益率方差度量风险。在教课书中通常以资产的历史收益率的均值作为未来期望收益率,可能会造成“追涨的效果”,在实际中这些收益率可能是由研究员给出;在计算组合风险值时协方差对结果影响较大,在教课书中通常以资产的历史收益率的协方差度量资产风险与相关性,这种计算方法存在预期误差,即未来实际协方差矩阵与历史协方差矩阵间的存在偏差。
例1.以华北制药、中国石化、上海机场三只股票,如何构使用马柯维茨模型构建投资
2 收益与风险计算函数 portstats 函数计算公式:
()T p E r X R =
2p X X σ=∑T
其中,
12(,,...,)T n R R R R =;()i i R E r =是第i 种资产的预期回报率;12(,,...,)T n X x x x =是投资组合的权重向量;
()
ij n n
σ
⨯=∑是n 种资产间的协方差矩阵;()p p R E r =和2
p σ分别
是投资组合的期望回报率和回报率的方差。
函数语法:
[PortRisk, PortReturn] = portstats(ExpReturn, ExpCovariance, PortWts) 输入参数:
ExpReturn :资产预期收益率
ExpCovariance :资产的协方差矩阵 PortWts :资产权重 输出参数:
PortRisk :资产组合风险(标准差) PortReturn :资产组合预期收益(期望)
例:在例1中,假设等权重配置华北制药、中国石化、上海机场,则资产组合的风险与收益为多少? M 文件:Portstatstest.m
ExpReturn = [0.000540 0.000275 0.000236]; ExpCovariance = 0.0001*
[5.27 2.80 1.74; 2.80 4.26 1.67; 1.74 1.67 2.90 ]; PortWts=1/3*ones(1,3);
[PortRisk, PortReturn] = portstats(ExpReturn, ExpCovariance,PortWts) >>PortRisk = 0.016617 PortReturn = 3.5033e-004
注释: ones(n,m)为生产元素都为1的n ×m 矩阵, ones(1,3)=[1,1,1]. PortWts=1/3*[1,1,1]=[1/3, 1/3, 1/3]
3 有效前沿计算函数
马柯维茨均值-方差模型为经典的带约束的二次优化问题,在给定期望收益时,方差最小解唯一(可行解域为凸),frontcon 使用,matlab 优化工具箱的fmincon 函数进行求解,fmincon 函数说明请参看附录。
frontcon 函数算法:
1
1
min min =max ()..1..1p p T T
i p n
n
i i i i X X
X X
X R e E r X R s t x s t x σσ==⎧=∑⎧⎪
⎪⎪=∑⎪⎪⎪⎪⎧=⇒⎨⎨⎪⎨⎪⎪=⎪⎪⎪=⎩⎪⎪⎩
⎪⎩
∑∑T T 给定i e 计算相应风险最小的组合,即得到有效前沿上一点(有效组合),给定一系列i
e 可以有效描绘出有效前沿。组合的收益介于单个资产的最大收益与最小收益之间,例如示例中最大收益为0.0540%、最小收益为0.0236%,i e 为根据NumPorts 在最大收益与最小收益间进行等分即可。
函数语法:
[PortRisk, PortReturn, PortWts] = frontcon(ExpReturn, ExpCovariance, NumPorts, PortReturn, AssetBounds, Groups, GroupBounds, varargin)
输入参数:
ExpReturn :资产预期收益率;
ExpCovariance :资产的协方差矩阵;
NumPorts :(可选)有效前沿上输出点的个数,默认为10; PortReturn :(可选)给定有效前沿上输出回报点个数; AssetBounds :(可选)每种资产权重的上下限,例如,上海机场的最大持仓比例为10%; Groups :(可选)资产分组,Groups (i,j )=1表示第j 个资产属于第i 个群(例如,行业);
GroupBounds :每个资产群约束(例如,某个行业配置能超过20%) 输出函数:
PortRisk :资产组合风险(标准差) PortReturn :资产组合预期收益(期望) PortWts :资产组合中各资产权重
例: 在例1中,如何配置华北制药、中国石化、上海机场,则资产组合为有效组合? M 文件:frontcontest.m
程序源码:
ExpReturn = [0.000540 0.000275 0.000236]; ExpCovariance =0.0001* [5.27 2.80 1.74; 2.80 4.26 1.67; 1.74 1.67 2.90 ]; NumPorts =10;
[PortRisk, PortReturn, PortWts] = frontcon(ExpReturn,ExpCovariance,
NumPorts)
>> PortRisk = 1.0e-002* 1.5653