最优投资组合公式
最优投资组合--马科维茨投资组合理论

最优投资组合--马科维茨投资组合理论<代码已经过期,其中爬⾍链接已经失效>⼀:马科维茨投资组合理论投资组合(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 #民⽣银⾏。
公司理财投资组合计算公式

公司理财投资组合计算公式在今天的经济环境中,公司理财投资组合的管理变得越来越重要。
公司需要确保其投资组合能够最大限度地实现回报,并且要将风险降到最低。
为了实现这一目标,公司需要使用一些计算公式来帮助他们评估和管理其投资组合。
本文将探讨一些常用的公司理财投资组合计算公式,并讨论它们的应用。
1. 投资组合收益率计算公式。
投资组合收益率是评估一个投资组合表现的重要指标。
它可以通过以下公式来计算:投资组合收益率 = ∑(Wi Ri)。
其中,Wi代表投资组合中每个资产的权重,Ri代表每个资产的收益率。
通过计算每个资产的权重乘以其收益率,并将结果相加,就可以得到整个投资组合的收益率。
2. 投资组合标准差计算公式。
投资组合的标准差是衡量投资组合风险的指标。
它可以通过以下公式来计算:投资组合标准差 = √(∑(Wi^2 σi^2 + 2 ∑(Wi Wj σi σj ρij))。
其中,Wi代表投资组合中每个资产的权重,σi代表每个资产的标准差,ρij代表资产i和资产j之间的相关系数。
通过计算每个资产的权重的平方乘以其标准差的平方,并将结果相加,再加上每对资产之间的相关系数的乘积,最后再开根号,就可以得到整个投资组合的标准差。
3. 投资组合夏普比率计算公式。
投资组合的夏普比率是衡量投资组合风险调整后的回报的指标。
它可以通过以下公式来计算:夏普比率 = (Rp Rf) / σp。
其中,Rp代表投资组合的年化收益率,Rf代表无风险利率,σp代表投资组合的标准差。
通过计算投资组合的年化收益率减去无风险利率,再除以投资组合的标准差,就可以得到投资组合的夏普比率。
4. 投资组合最小方差组合计算公式。
投资组合的最小方差组合是指在给定一定风险水平下,能够实现最小方差的投资组合。
它可以通过以下公式来计算:最小方差组合权重 = (Σ-1 μ) / (Σ-1 ΩΣ-1)。
其中,Σ代表资产收益率的协方差矩阵,μ代表资产的期望收益率,Ω代表目标风险水平。
最优投资组合公式

最优投资组合公式在投资领域中,最优投资组合是指在给定的投资标的和风险偏好条件下,能够最大化投资者预期收益或最小化风险的投资组合。
最优投资组合公式是一种数学模型,它通过计算各种资产的权重来确定最佳的投资组合。
最常用的最优投资组合模型是马科维茨组合理论,由于这个理论的重要性,它被广泛应用于投资管理和资产配置领域。
马科维茨组合理论是由美国经济学家哈里·马科维茨在20世纪50年代提出的,该理论认为,投资组合的风险与各种资产之间的相关性有关,而不仅仅是单个资产的风险。
其基本公式如下:E(Rp) = ∑(i=1)^(N) wi * E(Ri)其中,E(Rp)表示投资组合的预期收益,N表示投资标的的数量,wi表示第i个资产在投资组合中的权重,E(Ri)表示第i个资产的预期收益。
此外,马科维茨组合理论还引入了投资组合的方差来衡量风险,方差公式如下:Var(Rp) = ∑(i=1)^(N) ∑(j=1)^(N) wi * wj * σij其中,Var(Rp)表示投资组合的方差,σij表示第i个资产和第j个资产之间的协方差。
为了达到最优投资组合,投资者需要在预期收益和风险之间做出权衡。
马科维茨通过引入风险厌恶系数(λ)来控制风险和收益的权衡关系,从而得到最优投资组合。
最优投资组合可以通过求解以下公式得到:min λ * Var(Rp) - E(Rp)约束条件如下:∑(i=1)^(N) wi = 1wi ≥ 0该优化问题需要使用数学优化算法进行求解,例如线性规划、二次规划或有效前沿算法等。
在实际应用中,投资者可以通过历史数据或专业机构提供的数据来估计资产的预期收益和风险。
通过不断调整投资组合的权重,投资者可以根据自身的风险偏好和投资目标来选择最优投资组合。
需要注意的是,最优投资组合公式仅是一个数学模型,其结果可能受到多种因素影响,包括资产预期收益和风险的准确性、相关性的变化、投资者的风险偏好以及投资时段等。
投资学必考公式范文

投资学必考公式范文在投资学中,有一些重要的公式被广泛运用来评估投资项目的风险和回报。
以下是一些必考的投资学公式,它们对于投资决策和资产组合管理都非常有用。
1. Sharpe比率(Sharpe Ratio)Sharpe比率度量了每单位超额收益所承受的单位风险。
它的公式如下:Sharpe Ratio = (R_p - R_f) / σ_p其中,R_p为投资组合的平均回报率,R_f为无风险利率,σ_p为投资组合的标准差。
2. Treynor比率(Treynor Ratio)Treynor比率度量了每单位系统风险所获得的超额回报。
它的公式如下:Treynor Ratio = (R_p - R_f) / β_p其中,R_p为投资组合的平均回报率,R_f为无风险利率,β_p为投资组合的贝塔系数。
3. 市场风险溢价(Market Risk Premium)市场风险溢价表示股票或投资组合的预期收益率与无风险利率之间的差异。
它的公式如下:Market Risk Premium = R_m - R_f其中,R_m为市场的预期回报率,R_f为无风险利率。
4. 计算投资组合的预期回报率(Expected Portfolio Return)计算投资组合的预期回报率可以通过加权所有资产的预期回报率来衡量,其中权重是资产在投资组合中的比例。
5. 计算投资组合的标准差(Portfolio Standard Deviation)计算投资组合的标准差需要考虑资产之间的协方差,公式如下:σ_p = √(w_1^2 * σ_1^2 + w_2^2 * σ_2^2 + ... + 2 * w_1 * w_2 * Cov(1, 2))其中,w_i为资产i在投资组合中的权重,σ_i为资产i的标准差,Cov(1, 2)为资产1和资产2的协方差。
6. 最优投资组合的夏普比率(Optimal Portfolio Sharpe Ratio)寻找最优投资组合的夏普比率需要通过计算不同权重下的夏普比率来确定。
投资组合值计算公式

投资组合值计算公式投资组合值是指投资者在持有多种资产组合中所拥有的总价值。
计算投资组合值的公式可以帮助投资者更好地了解他们的投资组合表现,并帮助他们做出更明智的投资决策。
在本文中,我们将讨论投资组合值的计算公式,以及如何使用这些公式来评估投资组合的表现。
首先,让我们来看看投资组合值的基本定义。
投资组合值是指投资者在持有的多种资产中所拥有的总价值,这些资产可以包括股票、债券、房地产、商品等。
投资者通常会持有多种不同类型的资产,以分散风险并实现更稳定的投资回报。
因此,了解投资组合值对于投资者来说至关重要。
投资组合值的计算公式可以根据不同的情况而有所不同。
然而,最常见的计算投资组合值的方法是加权平均法。
这种方法可以帮助投资者更好地了解他们的投资组合表现,并对不同资产的贡献进行权衡。
投资组合值的加权平均法可以使用以下公式来计算:投资组合值 = Σ(资产价值×权重)。
在这个公式中,Σ代表求和,资产价值表示每种资产的市值,权重表示每种资产在投资组合中所占的比重。
通过计算每种资产的市值乘以其权重,并将所有结果相加,投资者可以得到他们整个投资组合的总价值。
举个例子来说,假设一个投资者持有以下三种资产:股票、债券和房地产。
他们的市值分别为10000美元、5000美元和3000美元,而它们在投资组合中的权重分别为40%、30%和30%。
那么投资组合值可以通过以下公式计算得出:投资组合值 = (10000 × 0.4) + (5000 × 0.3) + (3000 × 0.3) = 4000 + 1500 + 900= 6400。
通过这个计算,投资者可以了解他们整个投资组合的总价值为6400美元。
这个数字可以帮助他们更好地了解他们的投资表现,并做出相应的投资决策。
除了加权平均法之外,投资者还可以使用其他方法来计算投资组合值,比如市值加权法和等权法。
市值加权法是指根据每种资产的市值来确定其权重,而等权法则是指每种资产在投资组合中所占的权重都是相等的。
阿尔法。贝塔 算法公式

阿尔法。
贝塔算法公式
阿尔法贝塔算法是一种用于优化投资组合的数学模型,它结合了资产的预期收益、风险和相关性来构建最优投资组合。
该算法的公式可以从不同角度进行阐述。
首先,从数学角度来看,阿尔法贝塔算法的公式可以表示为:
\[ R_p = R_f + \beta_p (R_m R_f) + \alpha_p +
\epsilon_p \]
其中,\( R_p \) 表示投资组合的预期收益率,\( R_f \) 表示无风险利率,\( \beta_p \) 表示投资组合相对于市场的风险敞口,\( R_m \) 表示市场的预期收益率,\( \alpha_p \) 表示投资组合的阿尔法值,\( \epsilon_p \) 表示随机误差。
其次,从投资组合优化的角度来看,阿尔法贝塔算法的公式涉及到了资产配置和风险管理,通过最小化风险和最大化收益来构建最优投资组合。
这涉及到对各种资产的预期收益、协方差矩阵和投资限制进行建模和优化。
另外,从实际应用角度来看,阿尔法贝塔算法的公式需要考虑
到市场的实际情况和数据,包括历史收益率、市场指数、资产的相
关性等因素。
同时,还需要考虑投资者的风险偏好和投资目标,以
及市场的预期表现等因素。
总的来说,阿尔法贝塔算法的公式涉及到了数学建模、投资组
合优化和实际市场应用等多个方面,需要综合考虑资产的预期收益、风险和相关性,以及投资者的偏好和市场情况,才能得出有效的投
资组合构建和优化策略。
凯利公式 投资组合

凯利公式投资组合
凯利公式是一种用于计算投资组合中每个资产的最优投资比例的公式。
它的数学表达式如下:
f* = (bp - q) / b
其中,
- f*是投资组合中每个资产的最优投资比例(以资产价值的百分比表示)
- b是资产的赔率(即投资获胜时的回报与投资失败时的损失比例)
- p是资产获胜的概率
- q是资产失败的概率
该公式的目标是最大化投资组合的长期增长率,即最大化每次投资的期望价值。
然而,需要注意的是,凯利公式并不适用于所有情况,特别是当投资回报的分布不满足正态分布时。
凯利公式的应用需要对资产的赔率和概率有准确的估计。
在实际应用中,这些参数通常是基于历史数据或专业分析的预测得出的。
然而,由于市场的不确定性和变动性,这些参数的估计可能存在误差,因此在使用凯利公式时需要谨慎考虑。
此外,凯利公式还有一些变体和扩展,以适应不同的投资场景和风险偏好。
这些变体可能考虑到其他因素,如资产
之间的相关性、风险限制等。
因此,在实际应用中,可能会根据具体情况对凯利公式进行调整和改进。
最优投资组合的计算

最优投资组合的计算案例:设风险证券A 和B 分别有期望收益率%201=-r ,%302=-r ,标准差分别为%301=σ,%402=σ,它们之间的协方差%612=σ,又设无风险证券的收益率f r =6%,求切点处风险证券A 、B 的投资比例及最优风险资产投资组合的期望收益率和标准差;再求效用函数为()2005.0σA r E U -=,A=4时,计算包含无风险资产的三种资产最优组合的结构。
求解:第一步,求风险资产的最优组合及该组合的收益率与标准差。
随意指定一个期望收益率%14=-P r ,考虑达到-P r 的最小方差的投资比例(因为无风险证券的方差以及与其他风险证券的协方差也都等于零,所以包括无风险证券在内的投资组合的方差实际上就等于风险证券组合的方差):min (1221222221212σσσx x x x ++),S 。
T 。
---=--++P f r r x x r x r x )1(212211。
令L=(1221222221212σσσx x x x ++)+[λ--Pr ])1(212211f r x x r x r x ------, 由一阶条件: =∂∂λL --P r 0)1(212211=------f r x x r x r x 0)(2211222111=--+=∂∂-f r r x x x L λσσ 0)(2221212222=--+=∂∂-f r r x x x L λσσ 代入上述数字解得26825.8,268521==x x 。
风险证券A 、B 的组合结构为62.0,38.0212211=+=+x x x x x x ,这就是风险证券内部的组合结构和比例。
如果投资者比较保守,不追求那么高的收益率,比如选择%8=-P r ,则解得风险证券内部的组合结构和比例,仍然不变(忽略计算).说明投资者的风险偏好无论怎样,只是改变资金在无风险证券和风险证券之间的分配比例,风险资产投资的内部结构不会改变。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
最优投资组合公式
最优投资组合的公式可以是根据投资者的目标和约束条件来确定。
其中,目标可以是最大化投资组合的收益、最小化风险或在收益与风险之间寻找一个平衡点。
约束条件可以包括资金限制、资产配置限制、风险限制等。
一种常见的最优投资组合的公式是马科维茨-投资组合理论公式。
该公式由美国经济学家哈里·马科维茨于1952年提出,用
于决定投资组合中各个资产的权重。
公式如下:
minimize (0.5 * X^T * Σ * X) + (μ^T * X)
subject to:
X^T * 1 = 1 (总投资比例为1)
X > 0 (无杠杆投资)
其中,X表示投资组合的权重向量,Σ表示资产间的协方差矩阵,μ表示资产的预期收益率向量,1表示全1向量。
这个公式的目标是最小化投资组合的风险,即协方差的二次项,并同时最大化投资组合的收益,即预期收益率的一次项。
约束条件包括总投资比例为1和无杠杆投资,即权重向量中的元素均大于或等于0。
实际应用中,投资者可以根据自己的情况和偏好进行调整,如增加约束条件、引入收益目标等,以得到最适合自己的最优投资组合公式。