㈠ 投资组合A的均值收益为10%标准差为8%,组合B为15%,30%。无风险收益率为5%。选哪个投资
组合A的夏普比例=(10%-5%)/8%=0.625
组合B的夏普比例=(15%-5%)/30%=0.33
组合A的经风险调整的收益明显高于B,所以选A。
㈡ 根据马科维茨的证券投资组合理论,投资者应如何决定其最优的资产组合
1.根据马科维茨模型定义,我们得到最小风险组合中各组成资产的精确权重,如下图所示。在这个投资组合中,10 只股票样本中的资产仍然存在比重分配差异。值得注意的是,收益率最高的贵州茅台和恒瑞医药的分配比例并不高,分别占总投资组合的 0.64% 和 8.91%。获得最大权重分配的是中国银行和农业银行,分别占 28.67% 和 23.84%,其收益率分别是 -0.27% 和 -6.69%。最小风险组合的平均收益为 2.95%,风险水平为 13% 。该投资组合的夏普比率为 0.211。
2.资产配置“太祖”:马科维茨平均方差模型(1990年诺贝尔经济学奖)最早的模型只考虑了三个维度的变量:资产的预期收益,预期波动率,以及资产之间的相关性。我们知道,一个理性的投资者总是希望资产的回报越高越好,风险越小越好。也就是说,我们总是希望在风险确定的情况下使预期收益率最大化,或者在预期收益率确定的情况下使风险最小化。基于这一思想,马科维茨和威廉·夏普分别获得了诺贝尔经济学奖。事实上,这种逻辑很容易在数学上实现。我们用资产回报率除以风险的比率来衡量资产的表现。Sharp ratio, treno ratio和sotino ratio都采用了这种方法。对于一篮子股票或一篮子大型资产,我们只需要给这些资产赋予不同的权重,建立一个资产组合,计算资产组合的收益、风险和收益风险比指数,然后重复前面的步骤(例如10000次),给资产赋予不同的权重,计算资产组合的回报风险比,最后,我们比较这10000次的回报风险比的大小,其中回报风险比最大的资产组合就是我们寻找的最优组合。
3.例如,经典的股票债券模型就是由此衍生出来的60%股票+ 40%债券的经典组合。虽然这种组合分散了一些风险,但由于资产只有两种类型,降低风险是远远不够的。特别是随着炫目的金融投资产品的发展,传统的股票债券模式已经不够好。
㈢ 组合投资的建议
认清你自己并认真梳理你的资产负债人
最难以认清的就是自己,但建立长期组合投资计划的首要条件就是要认清自己,顶级的投资大师往往都是成功的做到了这一点。全面透彻的认清自己可能勉为其难,但你至少应该知道自己的风险偏好、对市场波动性的宽容度,只有这样,才能保证实施长期的投资计划不动摇,而长期投资行为没有在最终得到好的结果往往都是败在心理和情感因素上。
认清你自己可以保证在实施计划时不出现偏差和退缩,但具体要建立怎样的投资组合,就先需要清楚自己的资产状况。你可以编制一张资产负债表,这对你的投资计划很有帮助。以下是推荐的分类:
(1)付息投资工具;
(2)权益投资工具;
(3)生活类资产;
(4) 负债;
你最重要的决策就是决定付息投资工具和权益投资工具的相对配置权重,该权重大致决定了投资组合的收益/波动性的特征。在梳理你的资产负债时,注意不要把资产类别搞混,而且要从尽可能宽泛的视角来审视他们。比如你认为度假别墅不应该归为生活类资产,但是它一般只能消耗而不会创造财富,除非产生大于持有成本的租金收入从而带来正的现金流。 坚定自己的投资观
不同的投资观决定不同的资金管理方式。对于采取分散组合投资的你来说,你这类投资者认为市场分析技术无法增加价值, “战胜市场”是不切实际的投资目标。因此你必须承认这一事实,即投资组合的潜在长期增长路径就是可能实现的最佳结果。随着你愈加接近第四象限代表的世界观,技术因素便变得越来越不重要,而决策因素的重要性却在递增。后者与资产等级的选择以及资金在这些资产等级之间的相对分配权重有关。
当你坚定了自己的投资观后,就相当于为将要实施的长期组合投资计划找到了理论根据,你的一切行为才变得有意义。 明确你的需要、所受限制及投资期
只有明确了自己的需要和限制才能保证长期组合投资计划的实施执行。例如你必须考虑对投资组合流动性的需要,如果将来可能需要资金满足花销,那么最好不要参与非流动性投资,比如房产投资。
你还要明确你的投资期,投资组合面临的两大风险包括通货膨胀和收益波动性。在较长投资期内,通货膨胀风险要高于市场波动风险。因而投资期较长的投资组合应该相应地将更多资产配置给权益投资工具,这样可以保障提高购买力所需的长期资本增值。在较短投资期里,市场波动的危险性高于通货膨胀。因此,投资期较短的组合应该更加关注付息投资工具,它们的本金价值更加稳定。
很多人往往会低估自己的投资期,结果导致权益投资比重过低,从而使投资组合过度暴露于通货膨胀风险之下。之所以会这样,部分是由于大多数人喜欢用预期的退休时间来定义投资期。它让人们产生这样一种错误观点,即权益投资工具仅仅适合在退休前提高财富净值,退休时应该将其卖出并将收益投资于付息投资工具。该传统观点的问题在于,它忽视了通货膨胀在退休后仍将是一个巨大的威胁。 制定一个投资绩效参考框架
只有在你对短期债券、大公司股票、小公司股票以及通货膨胀率的长期历史数据有所了解后,你才会明白世界上没有完美的投资工具——既有高流动性,又有稳定的本金价值,还能产生足够抵消通货膨胀的高收益。对于完美投资工具的幻想一旦破灭,你就会明白构建投资组合时做出妥协的必要性。你在进行复合等级资产投资时,经常会发现某类资产最近表现很牛,而自己的投资组合却由于分散化效应无法与之相提并论,那么你的投资理念与实际情况之间就产生了矛盾。这时你的投资绩效参考框架往往是报纸或电视新闻上谈论的高收益资产,这更会加大你的心理压力。而如果你是通过组合资产的历史数据制定一个合理的投资绩效参考框架,那么会让你忽略眼前的收益而着重于更长远的利益。因此在实施长期组合投资计划前,制定一个投资绩效参考框架是关键的一步。 分配资产份额并设计投资组合
当你认清了你自己,知道自己想要什么,而又明确了投资策略后,接下来就是具体实施了。与使用资产类别较少的传统方法相比,广泛分散的复合等级资产投资能够产生更高的长期波动调整后收益。一旦你决定采用广泛分散的投资组合,那么就开始着手设计适合你自己的投资组合吧。
下面我们给出一种格式,你可以据此将当前的总现金价值(比如30万)转化成一个具体的推荐组合结构。
你首先输入投资组合当前的总现金价值(30万)。然后根据你的情况和需要,分别输入分配给短期债券、长期债券和权益投资的百分比和金额。通常情况下,这些百分比一旦确定便不再更改,除非你的波动性宽容度、投资期或者财务状况发生了重大改变。
根据广泛分散的投资策略,接下来你需要在以下5类资产之间合理配置投资权重:
短期债券
长期债券
股票和股票型基金
房地产投资工具
资产保值投资
在付息类资产(短期债券、长期债券)的选择和配置上,主要依据的是其质量和期限。投资者可以根据预期利率变动,决定短期与长期债券的相对配置。
对于权益类资产,股票和基金理所当然占据最大的权重。再进一步细分下去,大公司股票和小公司股票、成长型基金与价值型基金适当分散,以消除过度依赖某一类型权益资产带来的风险。
房产通常是国人家庭资产中最大的一部分,一般情况下,购买个人住房及度假住宅主要不是为了投资目的,因而不能列入投资组合中。它们通常出现在客户资产负债表的“生活类资产”中。
从历史数据来看,资产保值投资,例如商品关联证券与贵金属投资,具有完全不同于其他资产等级的收益形态。分配给他们的投资比重相对较小,当组合的其余部分由于严峻的经济形势而丢失城池时,也许它们反而表现优异。商品关联证券很可能是资产保值的最佳例子。商品与很多其他资产类别负向相关,因而成了有力的分散投资手段。
资产配置不仅要决定构建投资组合所用的各类资产,还要决定这些资产类别之间的相对资金配置权重。那么,如何决定这些资产类别在资产配置中的权重呢?最简单的方式是考虑它们在国内资本总额中的相对比重。但这种方法显然过于宽泛,而且不是根据每个人的具体情况设计不同的组合。
正确的方法是根据经济情境预测、自己的期望收益、对资产波动的宽容度以及各种资产类别之间的相关系数来设计组合。这种方法比较复杂,也需要投资者不断的在学习中进行调整。不管使用哪种方法,之前都最好设定每类资产的最低权重,从而保证分散投资的幅度。
你对资产波动的宽容度是影响投资组合的主要因素。
在资产配置中可以采取更积极的投资策略,为短期债券、长期债券、权益投资工具分别确定配置权重的波动范围。在该范围内进行有限的择时操作。在下表中,根据最低配置规定,至少65%的资产将配置于“核心投资组合”,该组合由25%的短期债务工具、10%的长期债券和30%的权益投资构成。
投资分类 消极管理固定百分比 积极管理百分比波动范围
短期债券 35% 25%-45%
长期债券 20% 10%-30%
权益投资 45% 30%-60%
总投资 100% 65%核心投资组合 备制投资策略书并实施投资策略
再美妙的计划也离不开坚决的执行,我们强烈建议你制定一份书面的投资策略书,这有助于组合的投资策略得到严格坚决的实施,在极好或极坏的资本市场环境中做到这一点尤为重要。
投资策略书已经备制完毕,那么就是该把策略付诸实施的时候了。若在预期投资目标和波动性宽容度下,当前配置不尽合理,那么就应当尽快使组合回到目标。另一方面,可以考虑通过成本平均策略令投资组合逐渐回到目标配置,这样经济上与心理上都将获得好处。
成本平均法并不难,只要对某项资产定期进行投资,且每次投资金额都相等。比如说想在股票上投资180000元,可以连续18个月每月投资 1000元。对本金价值不定的资产例如股票进行投资时,最理想的情况是在低价位买进。通过使用成本平均策略,股价低时买入的股份较多,而股价高时买入的股份较少。策略实施完毕后,每股平均成本将低于为这些股票支付的平均价格。我们已经知道在短期上,波动性资产的收益与长期平均期望差异可能很大。通过定期定额投资建立某种资产头寸,客户的投资绩效接近长期期望的可能性也在增加。
被投资资产的波动越剧烈,就应该在越长时间里通过成本平均法定期定额地投资。譬如,股票的波动性高于债券,可以花12到24个月使投资组合接近股票的目标权重,而对于债券这一时间可能短得多,只要6到12个月即可。当你的投资组合已经处于或接近短期债券、长期债券、权益投资之间的理想配置,只需选择其中的最优资产即可。
在实施组合投资策略过程中,随着市场变化可对投资组合进行被动调整使其恢复目标配置。如果简单的采用买入持有策略,各等级资产之间的相对比重会随市场变动而改变,这也令组合的波动水平发生我们不希望看到的变动。
对投资组合进行被动调整可使投资组合始终保持平衡的分散程度,并严格约束投资组合,防止组合在市场繁荣时为权益分配过高权重,使风险暴露加大;在市场低迷时分配过低权重,未能充分利用即将开始的市场上涨带来的好处。
㈣ 投资组合理论认为不同股票的投资组合可以降低风险,股票的种类越多,风险越小,对吗
股票的种类多到一定规模,增加股票种类不会降低风险。
非系统性风险可以通过投资组合降低,
系统性风险不能通过投资组合降低。
㈤ 股票组合投资的优缺点。
股票组合投资的优点
风险分散,个股更好的规避和降低风险,收益会相对稳定。
缺点
需要资金量大
㈥ 投资组合优化课题毕业论文好写吗
不好写
投资组合是由投资人或金融机构所持有的股票、债券、金融衍生产品等组成的集合。目的是分散风险。投资组合可以看成几个层面上的组合。
投资组合优化是指应用概率论与数理统计、最优化方法以及线性代数等相关数学理论方法。主要看对平时知识的掌握和平时的积累。 毕业论文从文体而言,它也是对某一专业领域的现实问题或理论问题进行 科学研究探索的具有一定意义的论文。一般安排在修业的最后一学年(学期)进行。
㈦ 如何用python实现Markowitz投资组合优化
多股票策略回测时常常遇到问题。
仓位如何分配?
你以为基金经理都是一拍脑袋就等分仓位了吗?
或者玩点玄乎的斐波拉契数列?
OMG,谁说的黄金比例,让我看到你的脑袋(不削才怪)!!
其实,这个问题,好多好多年前马科维茨(Markowitz)我喜爱的小马哥就给出答案——投资组合理论。
根据这个理论,我们可以对多资产的组合配置进行三方面的优化。
1.找到有效前沿。在既定的收益率下使组合的方差最小。
2.找到sharpe最优的组合(收益-风险均衡点)
3.找到风险最小的组合
跟着我,一步两步,轻松实现。
该理论基于用均值和方差来表述组合的优劣的前提。将选取几只股票,用蒙特卡洛模拟初步探究组合的有效前沿。
通过最大Sharpe和最小方差两种优化来找到最优的资产组合配置权重参数。
最后,刻画出可能的分布,两种最优以及组合的有效前沿。
注:
文中的数据API来自量化平台聚宽,在此表示感谢。
原文见【组合管理】——投资组合理论(有效前沿)(包含正态检验部分)
0.导入需要的包
import pandas as pd
import numpy as np
import statsmodels.api as sm #统计运算
import scipy.stats as scs #科学计算
import matplotlib.pyplot as plt #绘图
1.选取几只感兴趣的股票
000413 东旭光电,000063 中兴通讯,002007 华兰生物,000001 平安银行,000002 万科A
并比较一下数据(2015-01-01至2015-12-31)
In[1]:
stock_set = ['000413.XSHE','000063.XSHE','002007.XSHE','000001.XSHE','000002.XSHE']
noa = len(stock_set)
df = get_price(stock_set, start_date = '2015-01-01', end_date ='2015-12-31', 'daily', ['close'])
data = df['close']
#规范化后时序数据
(data/data.ix[0]*100).plot(figsize = (8,5))
Out[1]:
2.计算不同证券的均值、协方差
每年252个交易日,用每日收益得到年化收益。计算投资资产的协方差是构建资产组合过程的核心部分。运用pandas内置方法生产协方差矩阵。
In [2]:
returns = np.log(data / data.shift(1))
returns.mean()*252
Out[2]:
000413.XSHE 0.184516
000063.XSHE 0.176790
002007.XSHE 0.309077
000001.XSHE -0.102059
000002.XSHE 0.547441
In [3]:
returns.cov()*252
Out[3]:
3.给不同资产随机分配初始权重
由于A股不允许建立空头头寸,所有的权重系数均在0-1之间
In [4]:
weights = np.random.random(noa)
weights /= np.sum(weights)
weights
Out[4]:
array([ 0.37505798, 0.21652754, 0.31590981, 0.06087709, 0.03162758])
4.计算预期组合年化收益、组合方差和组合标准差
In [5]:
np.sum(returns.mean()*weights)*252
Out[5]:
0.21622558669017816
In [6]:
np.dot(weights.T, np.dot(returns.cov()*252,weights))
Out[6]:
0.23595133640121463
In [7]:
np.sqrt(np.dot(weights.T, np.dot(returns.cov()* 252,weights)))
Out[7]:
0.4857482232609962
5.用蒙特卡洛模拟产生大量随机组合
进行到此,我们最想知道的是给定的一个股票池(证券组合)如何找到风险和收益平衡的位置。
下面通过一次蒙特卡洛模拟,产生大量随机的权重向量,并记录随机组合的预期收益和方差。
In [8]:
port_returns = []
port_variance = []
for p in range(4000):
weights = np.random.random(noa)
weights /=np.sum(weights)
port_returns.append(np.sum(returns.mean()*252*weights))
port_variance.append(np.sqrt(np.dot(weights.T, np.dot(returns.cov()*252, weights))))
port_returns = np.array(port_returns)
port_variance = np.array(port_variance)
#无风险利率设定为4%
risk_free = 0.04
plt.figure(figsize = (8,4))
plt.scatter(port_variance, port_returns, c=(port_returns-risk_free)/port_variance, marker = 'o')
plt.grid(True)
plt.xlabel('excepted volatility')
plt.ylabel('expected return')
plt.colorbar(label = 'Sharpe ratio')
Out[8]:
6.投资组合优化1——sharpe最大
建立statistics函数来记录重要的投资组合统计数据(收益,方差和夏普比)
通过对约束最优问题的求解,得到最优解。其中约束是权重总和为1。
In [9]:
def statistics(weights):
weights = np.array(weights)
port_returns = np.sum(returns.mean()*weights)*252
port_variance = np.sqrt(np.dot(weights.T, np.dot(returns.cov()*252,weights)))
return np.array([port_returns, port_variance, port_returns/port_variance])
#最优化投资组合的推导是一个约束最优化问题
import scipy.optimize as sco
#最小化夏普指数的负值
def min_sharpe(weights):
return -statistics(weights)[2]
#约束是所有参数(权重)的总和为1。这可以用minimize函数的约定表达如下
cons = ({'type':'eq', 'fun':lambda x: np.sum(x)-1})
#我们还将参数值(权重)限制在0和1之间。这些值以多个元组组成的一个元组形式提供给最小化函数
bnds = tuple((0,1) for x in range(noa))
#优化函数调用中忽略的唯一输入是起始参数列表(对权重的初始猜测)。我们简单的使用平均分布。
opts = sco.minimize(min_sharpe, noa*[1./noa,], method = 'SLSQP', bounds = bnds, constraints = cons)
opts
Out[9]:
status: 0
success: True
njev: 4
nfev: 28
fun: -1.1623048291871221
x: array([ -3.60840218e-16, 2.24626781e-16, 1.63619563e-01, -2.27085639e-16, 8.36380437e-01])
message: 'Optimization terminated successfully.'
jac: array([ 1.81575805e-01, 5.40387481e-01, 8.18073750e-05, 1.03137662e+00, -1.60038471e-05, 0.00000000e+00])
nit: 4
得到的最优组合权重向量为:
In [10]:
opts['x'].round(3)
Out[10]:
array([-0. , 0. , 0.164, -0. , 0.836])
sharpe最大的组合3个统计数据分别为:
In [11]:
#预期收益率、预期波动率、最优夏普指数
statistics(opts['x']).round(3)
Out[11]:
array([ 0.508, 0.437, 1.162])
7.投资组合优化2——方差最小
接下来,我们通过方差最小来选出最优投资组合。
In [12]:
#但是我们定义一个函数对 方差进行最小化
def min_variance(weights):
return statistics(weights)[1]
optv = sco.minimize(min_variance, noa*[1./noa,],method = 'SLSQP', bounds = bnds, constraints = cons)
optv
Out[12]:
status: 0
success: True
njev: 7
nfev: 50
fun: 0.38542969450547221
x: array([ 1.14787640e-01, 3.28089742e-17, 2.09584008e-01, 3.53487044e-01, 3.22141307e-01])
message: 'Optimization terminated successfully.'
jac: array([ 0.3851725 , 0.43591119, 0.3861807 , 0.3849672 , 0.38553924, 0. ])
nit: 7
方差最小的最优组合权重向量及组合的统计数据分别为:
In [13]:
optv['x'].round(3)
Out[13]:
array([ 0.115, 0. , 0.21 , 0.353, 0.322])
In [14]:
#得到的预期收益率、波动率和夏普指数
statistics(optv['x']).round(3)
Out[14]:
array([ 0.226, 0.385, 0.587])
8.组合的有效前沿
有效前沿有既定的目标收益率下方差最小的投资组合构成。
在最优化时采用两个约束,1.给定目标收益率,2.投资组合权重和为1。
In [15]:
def min_variance(weights):
return statistics(weights)[1]
#在不同目标收益率水平(target_returns)循环时,最小化的一个约束条件会变化。
target_returns = np.linspace(0.0,0.5,50)
target_variance = []
for tar in target_returns:
cons = ({'type':'eq','fun':lambda x:statistics(x)[0]-tar},{'type':'eq','fun':lambda x:np.sum(x)-1})
res = sco.minimize(min_variance, noa*[1./noa,],method = 'SLSQP', bounds = bnds, constraints = cons)
target_variance.append(res['fun'])
target_variance = np.array(target_variance)
下面是最优化结果的展示。
叉号:构成的曲线是有效前沿(目标收益率下最优的投资组合)
红星:sharpe最大的投资组合
黄星:方差最小的投资组合
In [16]:
plt.figure(figsize = (8,4))
#圆圈:蒙特卡洛随机产生的组合分布
plt.scatter(port_variance, port_returns, c = port_returns/port_variance,marker = 'o')
#叉号:有效前沿
plt.scatter(target_variance,target_returns, c = target_returns/target_variance, marker = 'x')
#红星:标记最高sharpe组合
plt.plot(statistics(opts['x'])[1], statistics(opts['x'])[0], 'r*', markersize = 15.0)
#黄星:标记最小方差组合
plt.plot(statistics(optv['x'])[1], statistics(optv['x'])[0], 'y*', markersize = 15.0)
plt.grid(True)
plt.xlabel('expected volatility')
plt.ylabel('expected return')
plt.colorbar(label = 'Sharpe ratio')
Out[16]:
㈧ 股票组合在投资中真的很重要吗你怎么看
我认为股票投资组合你可以说它是非常重要的,也可以说它并不算特别重要。如果说你手里面我有大量的资金,而这一些资金是你的全部家产,那么你就非常有必要做股票投资组合。如果你手里只有一小部分资金,你能够在一年的时间里面轻易的把它赚回来,那么我认为就没有必要做投资组合,而是满仓一个。股票投资组合最重要的一个功能,就是能够分散风险。但是要知道分散风险的同时,也分散了你的收益。
一.对于大资金来说
如果你把自己全部的身家都拿来做投资的话,那么你对于风险就需要非常重视,而这个时候就非常需要使用投资组合。因为使用投资组合,你就不会因为某一只股票出现一些黑天鹅事件,而导致自己受到巨大的亏损。可能某一只股票亏损的特别多,但是另外两只股票赚钱了,所以又能够把它给弥补上来。这样对于你一个大资金来说,就是一个有效的分散风险的方式。
大家看完,记得点赞+关注+转发哦。