基于Markowiz理论的证券组合收益与风险分析
- 格式:pdf
- 大小:103.14 KB
- 文档页数:3
最优投资组合--马科维茨投资组合理论<代码已经过期,其中爬⾍链接已经失效>⼀:马科维茨投资组合理论投资组合(Portfolio)是由投资⼈或⾦融机构所持有的股票、、产品等组成的集合。
投资组合的⽬的在于分散风险,按粗略的分类有三种不同的模式可供运⽤,即积极的、中庸的和保守的。
投资组合理论[1]:若⼲种组成的,其收益是这些证券收益的加权平均数,但是其不是这些证券风险的加权平均风险,投资组合能降低。
⼈们进⾏投资,本质上是在不确定性的收益和风险中进⾏选择。
投资组合理论⽤均值-⽅差来刻画这两个关键因素。
其中均值是指投资组合的期望收益率,它是单只证券的期望收益率的加权平均,权重为相应的投资⽐例。
⽅差是指投资组合的收益率的⽅差。
我们把收益率的标准差称为波动率,它刻画了投资组合的风险。
那么在证券投资决策中应该怎样选择收益和风险的组合呢?投资组合理论主要通过研究"理性投资者"优化投资组合。
所谓理性投资者:是指在给定期望风险⽔平下对期望收益进⾏最⼤化,或者在给定期望收益⽔平下对期望风险进⾏最⼩化。
⼆:求解最优投资组合过程本⽂最优投资组合思想是:在给定期望收益⽔平下对期望风险进⾏最⼩化的投资。
利⽤的是马克维茨的均值-⽅差模型:本⽂实现最优投资组合的主要步骤:1:得到夏普⽐率最⼤时的期望收益2:得到标准差最⼩时的期望收益3:根据1,2所得的期望收益,获取预估期望收益范围,在预估期望收益范围内取不同值,获取其最⼩⽅差,得到预估期望收益与最⼩⽅差的关系即获得最⼩⽅差边界。
4:最⼩⽅差边界位于最⼩⽅差资产组合上⽅为有效边界5;获取最⼩⽅差边界上最⼤夏普⽐率,绘出CML6:得到最⼩⽅差边界上最⼤夏普⽐率处各股票权重三:实证数据⽤例:1:获取10股股票历史收盘价记录(2014.07.01—2017.07.01)(附件:stocks.xlsx)stocks=['601166', #兴业银⾏'600004', #⽩云机场'300099', #精准信息'601328', #交通银⾏'601318', #中国平安'601398', #中设股份'000333', #美的集团'600036', #招商银⾏'600016', #民⽣银⾏'601818'] #光⼤银⾏1.1:股票历史收盘价趋势折线图如下:2:计算预期收益率:连续复利收益率即对数收益率(附件:stock_revs.xlsx)revs=np.log(data/data.shift(1))3:⽤蒙特卡洛模拟产⽣⼤量随机组合,得到随机权重投资组合散点图如下:4:最优投资组合步骤:4.1:得到夏普⽐率最⼤时的期望收益def max_sharpe(weights):return -getPortfolioInformation(weights)[2]opts=sco.minimize(max_sharpe,numb * [1. / numb,], method='SLSQP',bounds=bnds, constraints=cons)getPortfolioInformation(opts['x']).round(4) #opts['x'] :得到夏普⽐率最⼤时的权重,收益率,标准差,夏普⽐率#此时权重:[ 3.21290938e-01 5.00704152e-02 8.67642540e-02 0.00000000e+00 5.41874393e-01 0.00000000e+00 0.00000000e+00 0.00000000e+000.00000000e+00 5.15579333e-16]# [收益率= 0.478 标准差=0.251 夏普⽐率=1.904]4.2: minimize:优化,最⼩化风险:⽅差最⼩化def min_variance(weights):return getPortfolioInformation(weights)[1] ** 2optv=sco.minimize(min_variance, numb * [1. / numb,],method='SLSQP', bounds=bnds,constraints=cons)#此时权重:[ 1.18917047e-01 1.00755105e-01 1.04406546e-01 4.08438380e-02 4.53999968e-02 0.00000000e+00 0.00000000e+00 9.16150836e-18 5.89677468e-01 1.52059355e-17]# [收益率= 0.309 标准差= 0.22 夏普⽐率=1.405]4.3:获取有效边界4.3.1:获取最⼩⽅差边界曲线图,最⼩⽅差资产组合,随机组合散点图:指定收益率范围 [0.1545, 0.5736 ],求最⼩⽅差:def min_sd(weights):return getPortfolioInformation(weights)[1]tvols = []infor_min_sd=[]#获取在指定期望收益下的最⼩标准差:for tret in trets:cons = ({'type': 'eq', 'fun': lambda x: getPortfolioInformation(x)[0] - tret},{'type': 'eq', 'fun': lambda x: np.sum(x)-1})res = sco.minimize(min_sd, numb * [1. / numb,], method='SLSQP',bounds=bnds, constraints=cons)infor_min_sd.append(res) # tret 唯⼀的tvols.append(res['fun']) #获取函数返回值,即最⼩标准差tvols = np.array(tvols)ind_min_sd = np.argmin(tvols) #最⼩⽅差组合处进⾏划分,分两段evols = tvols[:ind_min_sd]erets = trets[:ind_min_sd]tck = sci.splrep(erets,evols ) #B-Spline样条曲线函数 #前⼀个必须是唯⼀y2 = np.linspace(np.min(erets), np.max(erets), 100)x2 = sci.splev(y2, tck)evols = tvols[ind_min_sd:]erets = trets[ind_min_sd:]tck = sci.splrep(evols, erets)x3 = np.linspace(np.min(evols), np.max(evols), 100)y3 = sci.splev(x3, tck)plt.figure(figsize=(10, 8))plt.scatter(pvols, prets, c=prets/pvols,s=5, marker='.')plt.plot(x2, y2,'g',label=u"最⼩⽅差边界")plt.plot(x3, y3,'g',label=u"最⼩⽅差边界")plt.axhline(y=rev_min_variance,color='b',label=u"最⼩⽅差资产组合") #最⼩⽅差资产组合plt.plot(getPortfolioInformation(opts['x'])[1], getPortfolioInformation(opts['x'])[0],'r*', markersize=5.0)#最⼤夏普⽐率plt.plot(getPortfolioInformation(optv['x'])[1], getPortfolioInformation(optv['x'])[0],'y*', markersize=5.0)#最⼩⽅差plt.grid(True)plt.xlabel('Expect Volatility')plt.ylabel('Expect Return')plt.show()结果显⽰如下4.3.2:获取有效边界曲线图:plt.figure(figsize=(10, 8))plt.scatter(pvols, prets, c=prets/pvols,s=5, marker='.')plt.plot(x3, y3,'g',label=u"有效边界")plt.plot(getPortfolioInformation(opts['x'])[1], getPortfolioInformation(opts['x'])[0],'r*', markersize=8.0)#最⼤夏普⽐率plt.plot(getPortfolioInformation(optv['x'])[1], getPortfolioInformation(optv['x'])[0],'y*', markersize=8.0)#最⼩⽅差plt.grid(True)plt.xlabel('Expect Volatility')plt.ylabel('Expect Return')plt.show()5:获取最⼩⽅差边界上最⼤夏普⽐率,绘出CML5.1: B-Spline样条曲线的参数tck = sci.splrep(evols, erets)5.2: B-Spline样条曲线函数def f(x):return sci.splev(x, tck, der=0)5.3: B-Spline样条曲线函数⼀阶导数def df(x):return sci.splev(x, tck, der=1)5.4:构造⾮线性函数,使函数fun(x)⽆限逼近0向量, risk_free_return:⽆风险收益,默认为0.00def fun(x, risk_free_return=0.00):e1 = risk_free_return - x[0]e2 = risk_free_return + x[1] * x[2] - f(x[2])e3 = x[1] - df(x[2])return e1, e2, e35.5 利⽤最⼩⼆乘法⽆限逼近0,⽆风险收益率:0,斜率:0.5,初始⾃变量:zoneX = sco.fsolve(fun, [0.00, 0.50, zone])plt.figure(figsize=(12, 6))#圆点为随机资产组合plt.scatter(pvols, prets,c=prets/ pvols,s=5, marker='.')#随机组合散点集plt.plot(x3, y3,'g',label=u"有效边界")plt.plot(getPortfolioInformation(opts['x'])[1], getPortfolioInformation(opts['x'])[0],'g*', markersize=5.0)#最⼤夏普⽐率plt.plot(getPortfolioInformation(optv['x'])[1], getPortfolioInformation(optv['x'])[0],'y*', markersize=5.0)#最⼩⽅差#设定资本市场线CML的x范围从0到1.5最⼤夏普利率时标准差值x = np.linspace(0.0, 1.5*zone)#带⼊公式a+b*x求得y,作图plt.plot(x, X[0] + X[1] * x, lw=1.5)#标出资本市场线与有效边界的切点,绿星处plt.plot(X[2], f(X[2]), 'r*', markersize=5.0)plt.grid(True)plt.axhline(0, color='k', ls='--', lw=2.0)plt.axvline(0, color='k', ls='--', lw=2.0)plt.xlabel('expected volatility')plt.ylabel('expected return')plt.colorbar(label='Sharpe ratio')plt.show()#最⼤夏普⽐率点: (0.251241778282 ,0.478266895458) #切点: (0.251147161667, 0.4781282509275755)结果图如下:6: 得到最⼩⽅差边界上最⼤夏普⽐率处各股票权重:根据收益率差绝对值最⼩选取权重进⾏投资:rev_result=f(X[2])flag=0temp=abs(trets[0]-rev_result)length=len(trets)for i in range(1,length):if abs(trets[i]-rev_result)<temp:temp=trets[i]-rev_resultflag=iweight_result=infor_min_sd[flag]['x']all=0 #最终为 1.0for i in range(10):all=all+weight_result[i]print('{:.5f}'.format(weight_result[i]))# weight_result=[ 0.00000 0.04802 #⽩云机场0.00000 0.85880 #交通银⾏ 0.00000 0.00000 0.00000 0.00000 0.09318 #民⽣银⾏ 0.00000 ]故最终投资股票是:0.04802 #⽩云机场0.85880 #交通银⾏0.09318 #民⽣银⾏。
马克威茨投资组合理论在我国证券市场的应用研究摘要:本文对马克威茨(Markowitz)的均值——方差理论进行阐述,深入分析该理论在中国证券市场实际应用中的局限性。
为更好地发挥均值——方差理论的指导作用,本文针对该理论的局限性,提出构建完善证券市场的建议,并对均值——方差模型提出相关的改进措施。
关键词:均值——方差理论;投资组合;局限性;证券市场马克威茨(Markowitz)的投资组合理论将期望和方差引入投资管理的分析框架,建立了均值——方差模型,奠定了现代投资组合理论的基础。
由于该理论建立在一系列严格的假设条件下,在肯定其科学性及理论价值的同时,正确认识该理论的局限性,对发挥该理论在我国证券市场的指导作用具有一定的理论和实际意义。
一、马克威茨的均值——方差理论马克威茨在1952年发表的《Portfolio Selec,tions》一文中,提出了均值——方差理论,该理论是现代资产组合理论的开端,第一次将数理统计和线性规划应用于投资组合选择问题上,是金融投资理论进入定量化分析阶段的标志。
其模型的假设条件有:(一)证券市场是有效的,证券的价格反映了证券的内在经济价值,每个投资者都掌握了充分的信息,了解每种证券的期望收益率及标准差。
不存在交易费用和税收,投资者是价格接受者,证券是无限可分的,必要的话可以购买部分股权。
(二)证券投资者的目标是在给定的风险水平上收益最大或在给定的收益水平上风险最低。
(三)投资者将基于收益的均值和标准差或方差来选择最优资产投资组合,如果要他们选择风险(方差)较高的方案,他们都要求有额外的收益作为补偿。
(四)投资者追求财富期望效用的极大化,投资者具有单周期视野,不允许买空与卖空。
马科威茨证券组合理论认为,投资者进行决策时总希望以尽可能小的风险获得尽可能大的收益,或在收益率一定的情况下,尽可能降低风险,即研究在满足预期收益率一定的情况下,使其风险最小;或在满足既定风险一定的情况下,使其收益最大。
马科维茨证券组合理论的贡献与缺陷Pros: 1. 在马科维茨的那个时代,很多投资者或证券组合管理者靠的只是经验判断,很少定量分析。
而马科维茨选择方差作为衡量风险的尺度是一个非常好的方法.2. 马科维茨用均值和方差来确定风险和收益,使得数理统计成为研究证券选择强有力的工具。
有一套精密的客观的定量分析。
半方差,下偏距,几何谱风险测度GM3. 马科维茨认为投资者根据以往的数据和个人判断来选择所需的均值,方差以及协方差来组合证券。
他对投资风险的数量化和理论研究的深入,为证券组合理论在这几十年间的迅速发展奠定了基础4. 另外,传统方法往往注重收益分析,对于风险的分析却很少。
传统的分析家也知道分散可以减少风险,但是分散如何减少风险,风险分散对收益的影响,把风险降到什么程度,则缺乏精密的数据可以解释。
Cons: 1 有人对马科维茨关于投资者是风险厌恶的假设以及方差就是衡量风险的最有效量度等问题提出质疑。
2. 在实践中,由于许多投资者不熟悉有关的数学知识,不习惯于估计证券间的协方差,以及计算机计算均值的期望收益率不很准确等因素将导致无效的证券资产组合。
3. 对于均值相同、且方差也相同的两个组合来说,由于其偏度的不同,其风险程度仍然大不一样。
因此,基于均值-方差模型思路的现有研究则仍有待完善。
如用“均值-方差-偏度”三因素优化。
CAPM模型假设:1.投资者是风险规避者和最大财富追求者。
他们根据对证券行为的预期-期望收益、收益的方差及收益率的相关系数行事。
2.所有投资者均可按无风险利率任意借入或贷出无风险资产,且借入、贷出利率相同。
3. 市场上不存在交易成本和税金,卖空不受限制。
4. 证券的交易单位可以无限分割。
所有投资者都是价格的接受者,投资者的证券买卖活动不影响市场价格。
5. 投资者对每种证券行为的预期是一致的。
6. 投资者的投资期限相同。
内容:当完善的资本市场达到均衡时,任何风险资产的超回报和市场证券组合的超回报成比例关系。
马科维茨投资组合理论马科维茨(Harry M.Markowitz,)1990年因其在1952年提出的投资组合选择(Portfolio Selection)理论获得诺贝尔经济学奖。
主要贡献:发展了一个在不确定条件下严格陈述的可操作的选择资产组合理论:均值方差方法 Mean-Variance methodology.主要思想:Markowitz 把投资组合的价格变化视为随机变量,以它的均值来衡量收益,以它的方差来衡量风险(因此Markowitz 理论又称为均值-方差分析);把投资组合中各种证券之间的比例作为变量,那么求收益一定的风险最小的投资组合问题就被归结为一个线性约束下的二次规划问题。
再根据投资者的偏好,由此就可以进行投资决策。
基本假设:H1. 所有投资都是完全可分的。
每一个人可以根据自己的意愿(和支出能力)选择尽可能多的或尽可能少的投资。
H2. 一个投资者愿意仅在收益率的期望值和方差(标准差)这两个测度指标的基础上选择投资组合。
p E =对一个投资组合的预期收益率p σ=对一个投资组合的收益的标准差(不确定性)H3. 投资者事先知道投资收益率的概率分布,并且收益率满足正态分布的条件。
H4. 一个投资者如何在不同的投资组合中选择遵循以下规则:一,如果两个投资组合有相同的收益的标准差和不同的预期收益,高的预期收益的投资组合会更为可取; 二,如果两个投资组合有相同的收益的预期收益和不同的标准差,小的标准差的组合更为可取;三,如果一个组合比另外一个有更小的收益标准差和更高的预期收益,它更为可取。
基本概念1.单一证券的收益和风险:对于单一证券而言,特定期限内的投资收益等于收到的红利加上相应的价格变化,因此特定期限内的投资收益为:11P P P t t t r --==价格变化+现金流(如果有)持有期开始时的价格-+CF 假定投资者在期初时已经假定或预测了该投资期限内的投资收益的概率分布;将投资收益看成是随机变量。
组合证券的投资风险分析摘要:本文主要根据Markowitz理论,研究组合证券的总风险大小。
关键词:组合证券;投资风险;Markowitz理论;投资组合1引言随着中国经济的日益增强和证券市场的不断完善,越来越多的人把他们闲散的资金投到证券市场中。
在众多基础分析和技术分析的结果下,如何衡量风险,如何选择投资组合才是最优,是现在投资者所注重的重要问题。
1952年,美国人H.M.Markowitz提出了一个创新理论─投资组合理论。
Markowitz的现代投资组合理论,提出了用均值衡量投资组合的收益,用方差衡量该投资组合的风险的原则,并据此建立了一套用于分析和选择最优投资组合数学方法和模型。
本文正是利用数学知识和Markowitz理论中的模型对风险进行衡量。
2组合证券投资的风险2.1 证券投资风险的概念投资者从事证券投资的目的,主要在于获取适当的预期收益。
但是在证券投资过程中,投资者的行为结果与他们的预期有一定的偏差,这种偏差(不确定因素)就称为证券投资的风险。
2.2 证券投资风险的类别证券投资风险,按其影响范围和能否避免可分为系统性风险和非系统性风险两类。
系统性风险是指某种对市场上所有的证券都会带来损失可能性的风险。
如:重大政治变动,政府有关政策的出台等等。
非系统性风险指对市场上某一单个或几个证券造成损失的可能性的风险。
如:某一企业的经营状况恶化,市场供求关系的变化等等。
由于这不是本文研究的重点,故不详细分析。
2.3组合证券的投资风险在证券市场中,收益与风险是并存的。
而且通常是收益越大,风险也越大;反之亦然。
所以投资者追求的只能是,在一定风险下收益最大的投资决策或在一定收益下风险最小的投资决策或收益与风险按一定的比例组合最优的投资决策。
不管是哪一种决策都必须考虑投资的风险因素。
证券投资的风险不能消除,不能避免,但可以降低。
Markowitz的现代投资组合理论,提出了一套证券风险分散的方法,可使投资者把组合证券的风险减少到最低程度,并使投资者选出一个有最小风险的最有效的投资组合。
读书报告之一(现代风险投资组合理论简介)第四章马科维茨投资组合理论马科维茨(Harry M.Markowitz,)1927年生于美国,1952年获芝加哥大学博士学位。
他曾任职于兰德公司,后为纽约市立大学巴鲁齐学院教授。
1990年因其在1952年提出的投资组合选择(Portfolio Selection)理论获得诺贝尔经济学奖。
Markowitz 诺贝尔奖演说结语“Finally, I would like to add a comment concerning portfo lio theory as a part of the microeconomics of action under uncertainty. It has not always been considered so. For ex ample, when I defended my dissertation as a student in the Economics Department of the University of Chicago, Profes sor Milton Friedman argued that portfolio theory was not E conomics, and that they could not award me a Ph.D. degree in Economics for a dissertation which was not in Economics . I assume that he was only half serious, since they did a ward me the degree without long debate. As to the merits o f his arguments, at this point I am quite willing to conce de: at the time I defended my dissertation, portfolio theo ry was not part of Economics. But now it is.”“当我作为芝加哥大学经济系的学生为我的博士论文答辩时,米尔顿·弗里德曼教授认为证券组合理论不是经济学,因而他们不能为一篇不是经济学的论文授予经济学的博士学位。