金融MATLAB-第3章.ppt
《金融MATLAB-第3章.ppt》由会员分享,可在线阅读,更多相关《金融MATLAB-第3章.ppt(38页珍藏版)》请在三一办公上搜索。
1、金融数量分析基于MATLAB编程,第3章 MATLAB与Excel文件的数据交换,金融MATLAB,Excel是一款非常优秀的通用表格软件,在学习、工作与科研中大量的数据可能都是以excel表格的方式存储的。Excel在矩阵计算、数据拟合与优化算法等方面的功能尚不足,Excel与Matlab相结合是处理复杂数据问题的有效方法。如何利用matlab强大的数值计算功能处理excel中的数据,首要解决的问题就是如何将excel中的数据导入到matlab中或将matlab数值计算的结果转存入excel中。本章主要介绍以函数方式与exlink宏的两种方法实现matlab与excel的数据交互。,2023
2、/10/19,2,1 案例背景,2023/10/19,3,2 数据交互函数,2.1 获取文件信息xlsfinfo函数xlsinfo函数语法:typ,desc,fmt=xlsfinfo(filename)输入参数:filename:目标文件地址输出参数:typ:目标文件类型desc:目标文件内部表名称(sheetname)fmt:支持目标文件的软件版本,2023/10/19,4,2.1获取文件信息xlsfinfo函数,typ,desc,fmt=xlsfinfo(excel.xls)结果输出:typ=Microsoft Excel Spreadsheet%文件类别为excel文件desc=Shee
3、t1Sheet2Sheet3%文件中数据表为Sheet1Sheet2Sheet3fmt=xlExcel8%文件版本为xlExcel8版本对应的为excel 972003版本,2023/10/19,5,2.2 读取数据xlsread函数,xlsread函数语法:1.data,textdate=xlsread(filename)输入参数:filename:目标文件地址输出参数:data:数值数据textdate:文字数据,2023/10/19,6,2.2 读取数据xlsread函数,%调用xlsread函数data,textdate=xlsread(excel.xls)%textdate的第一列为
4、日期文本,第一行为列名称。Hs300Date=textdate(2:14,1)结果输出:,data=1.0e+003*1.00000.99400.98280.41800.99260.17400.96750.18300.97470.97300.96720.3140,textdate=datepriceVol2005-1-42005-1-52005-1-192005-1-20,2023/10/19,7,2.2 读取数据xlsread函数,xlsread函数语法:2.data=xlsread(filename,sheet,range)输入参数:filename:目标文件地址sheet:数据表名称,例
5、如excel默认表名称sheet1。range:数据所在位置,例如A1,B13等输出参数:data:数值数据,2023/10/19,8,2.2 读取数据xlsread函数,%数据位置为excel.xls文件表1位置为B3:B14的列数据Hs300Price=xlsread(excel.xls,1,B3:B14)Hs300Vol=xlsread(excel.xls,1,C3:C14)结果输出:,Hs300Price=982.7900 992.5600 967.4500 974.6900 967.2100,Hs300Vol=418 994 740 183 973 314,2023/10/19,9,
6、2.3 写入数据xlswrite函数,xlswrite函数语法:status,message=xlswrite(filename,M,sheet,range)输入参数:filename:目标文件地址M:写入excel中的数据,M存储数据的变量名称;Sheet:写入excel中的sheet名称(若空默认sheet1);Range:写入excel中的单元格区域(若空默认 A1);输出参数:status:写入状态。“1”表示写入成功“0”表示写入失败message:若失败,则显现失败信息,2023/10/19,10,2.3 写入数据xlswrite函数,%生成随机数据X=randn(1,10);%将
7、X随机数据写入excel文件,表“sheet2”中status,message=xlswrite(excel.xls,X,sheet2)结果输出status=1%表示写入成功message=message:identifier:,2023/10/19,11,2.3 写入数据xlswrite函数,如果写入的是字符,使用aa与aa的效果完全不同,aa得到的结果是excel两个单元格都是a,aa得到的结果是excel一个单元格是aa。status1,message1=xlswrite(funddata0.xls,aa,sheet1)status2,message2=xlswrite(funddata
8、0.xls,aa,sheet2),2023/10/19,12,2.4 交互界面uiimport函数,uiimport函数的语法1.uiimport 在命令窗口输入uiimport命令,出现文件选择窗口;2uiimport(filename)表示打开数据文件filename;3uiimport(-file)表示在当前文件夹内选择数据文件;4uiimport(-pastespecial)表示打开当前剪贴板中的数据;5s=uiimport(.)表示将数据文件按结构存储在s中,2023/10/19,13,2.4 交互界面uiimport函数,2023/10/19,14,3 Excel-Link宏,如果
9、excel文件数据量太大(1GB)以上,使用函数进行数据交互存在一定问题,例如Java内存溢出等等。数据量较大的时候可以使用Excel-Link宏进行数据交互。Matlab提供使其能与excel互动操作的Excel-link宏。Excel-link使得数据在matlab与excel之间随意交换,以及在excel下调用matlab的函数。Excel-link将matlab的强大的数值计算功能、数据可视化功能与excel的数据Sheet功能结合在一起。,2023/10/19,15,3.1加载Excel-link宏,加载方法:在excel工具-加载宏-浏览(matlab的安装路径)-toolbox文
10、件夹-exlink文件夹-excllink.xla文件(双击打开)回到加载宏界面:在Excel link2.3 for use with matlab选项上打勾,点击确定。若excel的左上方出现startmatlab、putmatrix、getmatrix、evalstring等选项,说明excel-link加载成功。,2023/10/19,16,3.2 使用Excel-link宏,startmatlab:点击启动matlabputmatrix:将Excel的数据传输到matlab中 在matlab中:可看到传入到matlab中的矩阵x,计算y=sin(x)getmatrix:将matlab
11、的数据传输到excel中,2023/10/19,17,3.3 Excel2007加载与使用宏,加载方法:点击excel的office按钮-点击excel选项-在加载项中点击转到 浏览(matlab的安装路径)-toolbox文件夹-exlink文件夹-excllink.xla文件(打开)使用方法:在excel2007加载项下可以发现exlink相关的按钮,具体使用方法与exlink在excel2003中的使用方法一样。,2023/10/19,18,4 交互实例,4.1基金相关性的计算例:funddata.xls中存储着沪深300指数的价格与博时主题行业、嘉实沪深300、南方绩优成长的复权数据,
12、要求计算出每只基金的与沪深300指数的相关性。注:基金的收益率、波动率的计算应该采用基金的复权净值(即分红再投资净值)。由于基金存在分红,即分红前后基金净值存在较大差距,将对基金收益率与波动率计算造成影响,所以要使用复权净值进行计算。,2023/10/19,19,4.1 基金相关性的计算,M程序如下:typ,desc,fmt=xlsfinfo(funddata.xls)%文件信息data,textdate=xlsread(funddata.xls);%读取数据R=corrcoef(data)%计算相关性status,message=xlswrite(funddata.xls,R,sheet2,
13、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表示转置即将行变为列,2023/10/19,20,4.1 基金相关性的计算,运行结果:R=1.00000.90390.99880.9658 0.90391.00000.88620.9730 0.99880.88621.00000.9548 0.96
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 金融 MATLAB

链接地址:https://www.31ppt.com/p-6353679.html