第5章-资产组合计算
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第5章资产组合计算
资产组合是实务性比较强的内容,通过本章的学习,要求读者掌握协方差与相关系数之间的相互推导,熟悉资产组合基本理论,学会用MATLAB计算投资组合基本参数,如均值与方差、资产组合VaR,重点掌握资产组合有效前沿的计算,能够处理无风险利率以及借贷关系情况下的最优投资组合,会用MATLAB 规划工具箱求解投资组合最优化问题。
5.1 资产组合基本原理
证券投资组合理论(Portfolio Theory)主要研究如何配置各种不同的金融资产,实现资产组合的最佳投资配置。1952年美国学者马克维茨创立了资产组合理论,该理论在实践中得到广泛运用。
5.1.1 收益率序列与价格序列间的转换
1.将收益率序列转换为价格序列
在处理金融时间序列时,有时需要把收益率序列转换为价格序列。在MATLAB中将收益率序列转换为价格序列的函数是ret2tick。
调用方式
[TickSeries,TickTimes]=ret2tick(RetSeries,StartPrice,RetIntervals,Star tTime,Method)
输入参数
RetSeries %收益率序列
StartPrice %(0ptional)起始价格,默认值是1
RetIntervals %(0ptional)收益率序列的时间间隔,默认值是l
StartTime %(optional)价格开始计算的时间,默认值是0
Method %(Optionl)转换方法。Method='Simple'表示简单,)r 1(P p 1t t 1t +++=;Method ='Continous'表示连续法,1t r t 1t e P P +=+。 输出参数
TickSeries %价格序列
TickTimes %与价格对应的时间序列 例5-1己知资产收益率以及时间间隔如表5.1所示
表5.1 资产收益率及时间
起始价格为10元,起始时间为2000年12月18日,试求该资产价格时间序列,收益率采用离散方法。
在MATLAB 中执行以下命令:
RetSeries=[0.10,0.05,-0.05]'; RetIntervals=[182,91,92]'; StartPrice=10;
StartTime=datenum('18-Dec-2000');
[TickSeries,TickTime]=ret2tick(RetSeries,StartPrice,RetIntervals,StartTime)
datestr(TickTimes) ans = 18-Dec-2000 18-Jun-2001 17-Sep-2001 18-Dec-2001
这样就把收益率时间序列转换为价格时间序列,结果如表5.2所示。
表5.2 资产各时间的价格
2.将价格序列转换为收益率序列
MATLAB中将价格序列转换为收益率序列的函数是tick2ret。
调用方式
[RetSeries,RetIntervals]=tick2ret(TickSeries,TickTimes,Method) 输入参数
TickSeries %价格序列
TimeTimes % 价格序列对应的时间
Method %(Optionl)计算收益率的,Method='Simple'表示算术收益率;Method='Continous'表示连续法,即为对数计算法。
输出参数
RetSeries %收益率序列
RetIntervals %收益率时间间隔
例5-2已知股票的价格时间序列如表5.3所示。
表5.3 股票各时间对应的价格
求出该股票的收益率时日序列。
在MATLAB中执行以下命令:
TickSeries=[100;110;115;110];
TickTimes=[0;6;9;12];
[RetSeries,RetIntervals]=tick2ret(TickSeries,TickTime)
5.1.2 协方差矩阵与相关系数矩阵间的转换
MATLAB中的corr2cov函数可以把相关系数矩阵转换为协方差矩阵调用方式
Covariances=corr2cov(STDs,Correlations)
输入参数
STDs %标准差矩阵
Correlations %相关系数矩阵
输出参数
Covariance % 协方差矩阵
例5-3 已知资产组合中有3个品种,每个品种的资产收益率、标准差和相关系数如表5.5所示。
表5.5 的相关数据
Returns=[0.1,0.15,0.12];
STDs=[1,0.8,0.18];
Correlations=[1,0.8,0.4;0.8,1,0.3;0.4,0.3,1];
Covariances=corr2cov(STDs,Correlations)
5.1.3 资产组合收益率与方差
MATLAB中计算资产组合回报与方差的函数是portstats。
调用方式
[PortRisk,PortReturn]=portstats(ExpReturn,ExpCovariance,Port Wts)
输入参数
ExpReturn % 期望收益率向量
ExpCovariance % 资产的协方差矩阵
PortWts % 资产权重向量
输出参数
PortRisk % 总资产的标准差
PortReturn % % 总资产的收益
例5-4 某资产组合中有3种资产A、B、C.组合中各资产的预期收益率分别为0.1,0.2,0.15,权重分别为0.4,0.2,0.4,具体数据见程序
ExpReturn=[0.1,0.2,0.15];
ExpCovariance=[0.0100,-0.0061,0.0042;-0.0061,0.0400,-0.0252;0.0042,-0.0252,0.0225] PortWts=[0.4,0.2,0.4;0.2,0.4,0.2];
[PortRisk,PortReturn]=portstats(ExpReturn,ExpCovariance,Port Wts)
PortRisk =
0.0560
0.0550
PortReturn =
0.1400