- 1、本文档共38页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4.1 基金相关性的计算 M程序如下: [typ, desc, fmt] = xlsfinfo(funddata.xls) %文件信息 [data,textdate]= xlsread(funddata.xls); %读取数据 R = corrcoef(data) %计算相关性 [status, message] = xlswrite (funddata.xls, R, sheet2, B2:E5) %写入到excel数据 textdate=textdate(2,2:5) %行名称与列名称 [status, message] = xlswrite (funddata.xls, textdate, sheet2, B1:E1) [status, message] = xlswrite (funddata.xls, textdate’, sheet2, A2:A5‘) %textdate’?表示转置即将行变为列 4.1 基金相关性的计算 运行结果: R =?1.0000????0.9039????0.9988????0.9658 ???? 0.9039????1.0000????0.8862????0.9730 ??? ?0.9988????0.8862????1.0000????0.9548 ???? 0.9658????0.9730????0.9548????1.0000 textdate = 沪深300????博时主题行业????嘉实沪深300????南方绩优成长 4.2 多个文件的读取和写入 在实际的项目编程中,很多时候遇到从很多文件中读取数据,若逐个文件进行手工操作不仅身心疲惫,而且容易出错。例如,指数成分股与权重数据每天一个Excel,文件名为:000016weightnextdaxls、000016weightnextdaxls,……,000016weightnextdaxls等,程序化读取的关键是将文件名自动化。 4.2 多个文件的读取和写入 DataNum=9; %要读取文件数量 Data.Code=zeros(50,DataNum); %定义变量并分配内存 Data.ClosePrice=zeros(50,DataNum); Data.CFMValue=zeros(50,DataNum); Data.Weight=zeros(50,DataNum); fileName=000016weightnextday; %文件名固定部分 fileDate=201006302010123120120104]; %文件名变化部分,若变化部分由规律可以自动生成。 for i=1:DataNum ????TfileName=[fileName,num2str(fileDate(i)),.xls];%组合文件名,i不同文件名称不同 ????%读取文件中所需的数据 ????Data.Code(:,i)=xlsread(TfileName,Index Constituents Data,E2:E51 ); ????Data.ClosePrice(:,i)=xlsread(TfileName,Index Constituents Data,M2:M51 ); ????Data.CFMValue(:,i)=xlsread(TfileName,Index Constituents Data,P2:P51 ); ????Data.Weight(:,i)=xlsread(TfileName,Index Constituents Data,Q2:Q51 ); end 5 数据的平滑处理 在对时间序列数据(如信号数据或股票价格数据)进行统计分析时,或许存在数据的缺失或奇异(例如ST股票反复的停牌),?往往需要对数据进行平滑处理。 本节介绍基于MATLAB的数据平滑方法,主要介绍smooth函数、smoothts函数和medfilt1函数的用法。 5.1 smooth函数 MATLAB曲线拟合工具箱中提供了smooth函数,用来对数据进行平滑处理,其调用方式如下: yy = smooth(y) yy = smooth(y,span) yy = smooth(y,method) yy = smooth(y,span,method) yy = smooth(y,sgolay,degree) yy = smooth(y,span,sgol
文档评论(0)