金融MATLAB实验报告三解析.docx

上传人:b****7 文档编号:10064908 上传时间:2023-02-08 格式:DOCX 页数:25 大小:20.27KB
下载 相关 举报
金融MATLAB实验报告三解析.docx_第1页
第1页 / 共25页
金融MATLAB实验报告三解析.docx_第2页
第2页 / 共25页
金融MATLAB实验报告三解析.docx_第3页
第3页 / 共25页
金融MATLAB实验报告三解析.docx_第4页
第4页 / 共25页
金融MATLAB实验报告三解析.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

金融MATLAB实验报告三解析.docx

《金融MATLAB实验报告三解析.docx》由会员分享,可在线阅读,更多相关《金融MATLAB实验报告三解析.docx(25页珍藏版)》请在冰豆网上搜索。

金融MATLAB实验报告三解析.docx

金融MATLAB实验报告三解析

 

安徽财经大学金融证券实验室

 

实验报告

 

实验课程名称

《金融MATLAB

开课系部

金融学院

导教师

 

2015年**月**日

 

1

 

实验名称MATLAB金融数量分析

 

学院学号姓名

 

实验准备

 

 

 

学会使用MATLAB金融工具箱进行金融数量分析,如:

期权定价分析、投资组合绩效分析、收益和风险的计算、有效前沿的计算、固定收益证券的久期和凸度计算、利率的期限结构、技术指标计算等。

 

使用MATLAB金融工具箱对下述6个主题进行数量分析,数据来源自行在网上搜寻,要求是2014年之后的数据。

(可参照各章的例题)

1.期权定价分析(第10章)

2.收益、风险和有效前沿的计算(第12章)

3.投资组合绩效分析(第13章)

4.固定收益证券的久期和凸度计算(第17章)

5.利率的期限结构(第18章)

6.技术指标分析(第22章)

 

本实验报告不指定具体的题目,请大家自行设定,同学相互之间不要出现雷同。

 

2

 

实验分析过程

 

一、收益、风险和有效前沿的计算

从Wind咨询金融终端分别下载三只股票(美好集团、石油化服和首开股份)从2013年年初至今的

日收盘价价格,经过相关处理得出三只股票的收益率均值、标准差以及协方差矩阵等数据,如下表。

现根据表格数据进行关于收益、风险和有效前沿计算。

收益率均值收益率标准差协方差矩阵

美好集团0.00180.03120.00100.00040.0005

石油化服0.00160.04110.00040.00170.0003

首开股份0.00060.03610.00050.00030.0013

1.收益率和风险计算函数

例1.假设等权重配置美好集团、石油化服、首开股份,计算资产组合的风险和收益。

解:

>>>ExpReturn=[0.0018,0.0016,0.0006];ExpCovariiance=[0.0010,0.0004,0.0005;

0.0004,0.0017,0.0003;0.0005,0.0003,0.0013];PortWts=1/3*ones(1,3);

[PortRisk,PortReturn]=portstats(ExpReturn,ExpCovariance,PortWts)

 

PortRisk=

0.0170

PortReturn=

0.0013

2.有效前沿计算函数

例2.

(1)怎样配置美好集团、石油化服和首开股份,则资产组合为最优组合?

解:

>>ExpReturn=[0.0018,0.0016,0.0006];

>>ExpCovariiance=[0.0010,0.0004,0.0005;0.0004,0.0017,0.0003;0.0005,0.0003,0.0013];

>>NumPorts=10;

>>[PortRisk,PortReturn,PortWts]=frontcon(ExpReturn,ExpCovariance,NumPorts)PortRisk=

0.0137

0.0139

0.0144

0.0151

0.0158

0.0166

0.0175

0.0184

0.0194

0.0229

 

3

 

PortReturn=

 

0.0006

0.0008

0.0009

0.0010

0.0012

0.0013

0.0014

0.0015

0.0017

0.0018

PortWts=

 

00.04390.9561

00.17240.8276

0.02750.26780.7047

0.10320.30540.5914

0.17890.34300.4781

0.25460.38060.3647

0.33030.41830.2514

0.40600.45590.1381

0.48170.49350.0248

1.000000

画图:

frontcon(ExpReturn,ExpCovariance,NumPorts)

 

4

 

(2)例2中如果各个资产投资上限为50%,求解有效前沿?

>>ExpReturn=[0.0018,0.0016,0.0006];

ExpCovariiance=[0.0010,0.0004,0.0005;0.0004,0.0017,0.0003;

0.0005,0.0003,0.0013];NumPorts=10;AssetBounds=[0,0,0;0.5,0.5,0.5];

[PortRisk,PortReturn,PortWts]=frontcon(ExpReturn,ExpCovariance,NumPorts,[],AssetBounds)

PortRisk=

 

0.0156

0.0160

0.0164

0.0168

0.0173

0.0177

0.0182

0.0187

0.0192

0.0197

 

PortReturn=

0.0011

0.0012

0.0013

0.0013

0.0014

0.0014

0.0015

0.0016

0.0016

0.0017

PortWts=

0.1196

0.3804

0.5000

0.1967

0.3519

0.4514

0.2344

0.3706

0.3949

0.2722

0.3894

0.3385

0.3099

0.4081

0.2820

0.3476

0.4268

0.2256

0.3853

0.4456

0.1691

0.4230

0.4643

0.1126

0.4608

0.4831

0.0562

0.5000

0.5000

0

5

 

frontcon(ExpReturn,ExpCovariance,NumPorts,[],AssetBounds)

 

3.约束条件下有效前沿

例3.例配置美好集团、石油化服、首开股份三个资产,美好集团最大配置60%,石油化服最大配置70%,

首开股份最大配置50%,美好集团为资产集合A,石油化服、首开股份组成资产计划B,集合A的最大

配置为70%,集合B的最大配置为50%,集合A的配置不能超过集合B的3倍,则如何配置?

解:

>>NumAssets=3;

ExpReturn=[0.0018,0.0016,0.0006];

ExpCovariiance=[0.0010,0.0004,0.0005;

0.0004,0.0017,0.0003;

0.0005,0.0003,0.0013];

NumPorts=5;

PVal=1;

AssetMin=0;

AssetMax=[0.6,0.7,0.5];

GroupA=[100];

GroupB=[011];

GroupMax=[0.7,0.5];

AtoBmax=3;

 

6

 

ConSet=portcons('PortValue',PVal,NumAssets,'AssetLims',...

AssetMin,AssetMax,NumAssets,'GroupComparison',GroupA,NaN,...

AtoBmax,GroupB,GroupMax);

[PortRisk,PortReturn,PortWts]=portopt(ExpReturn,ExpCovariance,NumPorts,[],ConSet)

PortRisk=

0.0156

0.0165

0.0176

0.0187

0.0199

PortReturn=

0.0011

0.0013

0.0014

0.0016

0.0017

PortWts=

 

0.1196

0.3804

0.5000

0.2468

0.3768

0.3764

0.3346

0.4204

0.2450

0.4225

0.4640

0.1135

0.6000

0.4000

0

画图

>>portopt(ExpReturn,ExpCovariance,NumPorts,[],ConSet)

 

7

 

二、投资组合绩效分析

从Wind咨询金融终端分别下载三只股票(华丽家族、华远地产、合肥城建)和一只指数(中证

800)从

2014年年初至今的日收盘价数据,加以处理整理。

之后根据

2013-2014年的数据,对华丽家族、华远地

产、合肥城建、中证

800进行投资组合绩效分析。

中证800

华丽家族

华远地产

合肥城建

日期

收盘价(元)

收盘价(元)收盘价(元)收盘价(元)

2013-01-04

2643.83

4.61

4.01

6.95

2013-01-07

2658.72

4.46

3.94

6.91

2013-01-08

2657.14

4.48

3.94

7.4

2013-01-09

2659.23

4.49

3.9

7.2

2013-01-10

2666.74

4.94

3.98

7.2

2013-01-11

2612.77

4.95

3.79

6.9

2013-01-14

2710.2

5.01

3.9

7.05

2013-01-15

2736.96

5.08

3.91

7.08

解:

1.读取数据

>>[typ,desc,fmt]=xlsfinfo('HHHZ.xlsX');

>>[data,textdate]=xlsread('HHHZ.xlsX');

>>HHHZ=data;

>>saveHHHZHHHZ

2.三只股票和一只指数的精致曲线

>>loadHHHZ

>>figure;

>>holdon

>>plot(HHHZ(:

1)/HHHZ(1,1),'k')

>>plot(HHHZ(:

2)/HHHZ(1,2),'r-.')

>>plot(HHHZ(:

3)/HHHZ(1,3),'bo')

>>plot(HHHZ(:

4)/HHHZ(1,4),'g--')

>>xlabel('time')

>>ylabel('price')

>>legend('中证800’,’华丽家族','华远地产','合肥城建')

 

8

 

3.Beta与Alpha计算

以中证800作为市场收益,使用portbeta函数分别计算华丽家族、华远地产、合肥城建的beta值。

过程如

下:

(1)betaj计算

loadHHHZ

Rate=price1ret(HHHZ);

BSbeta=portbeta(Rate(:

4),Rate(:

1));

(2)Alpha计算

以中证800作为市场收益,使用portalpha函数分别计算华丽家族、华远地产、合肥城建的beta值。

过程

如下:

>>loadHHHZRate=price2ret(HHHZ);zz800=Rate(:

1);hljz=Rate(:

2);

hydc=Rate(:

3);

hfcj=Rate(:

4);

daynum=fix(length(Rate)/2);

cash=(1+0.03)^(1/daynum)-1;

cash=cash*ones(daynum,1);

RatioHL2013=daynum*portalpha(hljz(1:

daynum),zz800(1:

daynum),cash,'capm')

RatioHL2014=daynum*portalpha(hljz(daynum+1:

2*daynum),zz800(daynum+1:

2*daynum),cash,'capm')

RatioHY2013=daynum*portalpha(hydc(1:

daynum),zz800(1:

daynum),cash,'capm')

RatioHY2014=daynum*portalpha(hydc(daynum+1:

2*daynum),zz800(daynum+1:

2*daynum),cash,'capm')

RatioHF2014=daynum*portalpha(hfcj(1:

daynum),zz800(1:

daynum),cash,'capm')

RatioHF2013=daynum*portalpha(hfcj(daynum+1:

2*daynum),zz800(daynum+1:

2*daynum),cash,'capm')

RatioHL2013=

0.3119

RatioHL2014=

0.2903

RatioHY2013=

0.1122

RatioHY2014=

0.1566

RatioHF2013=

0.1046

RatioHF2014=

0.0315

 

9

 

4.夏普比率

计算华丽家族、华远地产、合肥城建的夏普比率

>>loadHHHZ

Rate=price2ret(HHHZ);

hljz=Rate(:

2);

hydc=Rate(:

3);

hfcj=Rate(:

4);

daynum=fix(length(Rate)/2);

Cash=(1+0.03)^(1/daynum)-1;

RatioHL2013=sharpe(hljz(1:

daynum),Cash)

RatioHL2014=sharpe(hljz(daynum+1:

2*daynum),Cash)

RatioHYDC2013=sharpe(hydc(1:

daynum),Cash)

RatioHYDC2014=sharpe(hydc(daynum+1:

2*daynum),Cash)

RatioHF2013=sharpe(hfcj(1:

daynum),Cash)

RatioHF2014=sharpe(hfcj(daynum+1:

2*daynum),Cash)

结果:

RatioHL2013=

0.0768

RatioHL2014=

0.0549

RatioHYDC2013=

0.0493

RatioHYDC2014=

0.0460

RatioHF2013=

0.0876

RatioHF2014=

0.0377

 

5.信息比率

以中证800指数作为业绩比较基准,计算华丽家族、华远地产、合肥城建成长的信息比率编码:

>>loadHHHZRate=price2ret(HHHZ);zz800=Rate(:

1);hljz=Rate(:

2);hydc=Rate(:

3);hfcj=Rate(:

4);daynum=fix(length(Rate)/2);

RatioHL2013=inforatio(hljz(1:

daynum),zz800(1:

daynum))

RatioHL2014=inforatio(hljz(daynum+1:

2*daynum),zz800(daynum+1:

2*daynum))

RatioHYDC2013=inforatio(hydc(1:

daynum),zz800(1:

daynum))

RatioHYDC2014=inforatio(hydc(daynum+1:

2*daynum),zz800(daynum+1:

2*daynum))

RatioHF2013=inforatio(hfcj(1:

daynum),zz800(1:

daynum))

RatioHF2014=inforatio(hfcj(daynum+1:

2*daynum),zz800(daynum+1:

2*daynum))

10

 

计算结果:

RatioHL2013=

0.0115

RatioHL2014=

-0.0107

RatioHYDC2013=

-0.0279

RatioHYDC2014=

-0.0171

RatioHF2013=

-0.0455

RatioHF2014=

-0.0486

 

6.最大回撤

根据华丽家族的数据计算最大回撤

>>loadHHHZ

TRate=HHHZ(:

2)/HHHZ(1,2)-1;

[MaxDD,MaxDDIndex]=maxdrawdown(TRate,'arithmetic')

plot(TRate)

holdon

plot(MaxDDIndex,TRate(MaxDDIndex),'r-o','MarkerSize',10)

 

计算结果

MaxDD=

2.3110

MaxDDIndex=

359

417

 

11

 

7.市场指数变化的最大回撤图

根据中证800指数数据画出最大收益回撤

>>loadHHHZZZ800price=HHHZ(:

1);N=length(ZZ800price);RetraceRatio=zeros(N,1);fori=2:

N

C=max(ZZ800price(1:

i));

ifC==ZZ800price(i)

RetraceRatio(i)=0;

else

RetraceRatio(i)=(ZZ800price(i)-C)/C;

end

end

TRate=ZZ800price/ZZ800price

(1)-1;

f=figure;

fill([1:

N,N],[RetraceRatio;0],'r')

holdon

plot(TRate);

xlabel('time')

ylabel('Rate/RetraceRatio')

 

12

 

三、固定收益证券的久期和凸度计算

从wind资讯金融终端下载三只国债的相关信息如下,进行国定收益证券的久期和凸度的计算。

证券编号

固定收益证券

到期收益率

票面利率

结算日

到期日

计息方式

150007

15附息国债07

3.0450

3.5400

16-Apr-15

16-Apr-22

每年付息一次

150026

15附息国债26

3.0600

3.0500

22-Oct-15

22-Oct-22

每年付息一次

150019

15附息国债19

2.9050

3.1400

8-Sep

8-Sep-20

每年付息一次

15

1.三种债券的价格及计算日的利息计算

(1)15附息国债07的价格和结算日利息计算

>>Yield=[0.03045];

CouponRate=0.0354;Settle='16-Apr-2015';Maturity='16-Apr-2022';Period=1;

Basis=0;

[Price,AccruedInt]=bndprice(Yield,CouponRate,Settle,Maturity,Period,Basis)Price=

102.9320AccruedInt=

0

(2)15附息国债26的价格和结算日利息计算

>>Yield=[0.036];

CouponRate=0.0305;Settle='22-Oct-2015';

Maturity='22-Oct-22';

Period=1;

Basis=0;

[Price,AccruedInt]=bndprice(Yield,CouponRate,Settle,Maturity,Period,Basis)

 

Price=

96.4564

AccruedInt=

0

(2)15附息国债19的价格和结算日利息计算

>>Yield=[0.02905];

CouponRate=0.0314;Settle='8-Sep-2015';Maturity='8-Sep-2020';Period=1;

Basis=0;

[Price,AccruedInt]=bndprice(Yield,CouponRate,Settle,Maturity,Period,Basis)

Price=

100.9817

AccruedInt=

013

 

2.根据债券价格计算久期

(1)15附息国债07的久期计算

PRICE=[102.9320];

CouponRate=0.0354;

Settle='16-Apr-2015';

Maturity='16-Apr-2022';

Period=1;

Basis=0;

[ModDuration,YearDuration,PerDuration]=bnddurp(Price,CouponRate,Settle,Maturity,Period,Basis)

 

ModDuration=

6.2212

YearDuration=

6.3255

PerDuration=

12.6509

(2)15附息国债26的久期计算

>>PRICE=[96.4564];

CouponRate=0.0305;Settle='22-Oct-2015';Maturity='22-Oct-22';Period=1;Basis=0;

[ModDuration,YearDuration,PerDuration]=bnddurp(Price,CouponRate,Settle,Maturity,Period,Basis)

 

ModDuration=

6.3209

YearDuration=

6.4116

PerDuration=

12.8233

(3)15附息国债19的久期计算

>>Price=[100.9817];

CouponRate=0.0314;

Settle='8-Sep-2015';

Maturity='8-Sep-2020';

Period=1;

Basis=0;

[ModDuration,YearDuration,PerDuration]=bnddurp(Price,CouponRate,Settle,Maturity,Period,Basis)

 

14

 

M

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1