当前位置:
首页 > 计算机 > 辅助/工程设计 > MATLAB量化金融分析基础与实战pdf/doc/txt格式电子书下载

MATLAB量化金融分析基础与实战pdf/doc/txt格式电子书下载

本站仅展示书籍部分内容

如有任何咨询

请加微信10090337咨询

MATLAB量化金融分析基础与实战pdf/doc/txt格式电子书下载

书名:MATLAB量化金融分析基础与实战pdf/doc/txt格式电子书下载

推荐语:105个典型案例+4个综合案例,一本书掌握量化分析重要方法法则

作者:马萌著

出版社:机械工业出版社

出版时间:2018-07-01

书籍编号:30614004

ISBN:9787111604174

正文语种:中文

字数:91218

版次:1

所属分类:计算机-辅助/工程设计

全书内容:

MATLAB量化金融分析基础与实战pdf/doc/txt格式电子书下载


本书是一本侧重于阐述MATLAB在量化金融分析领域功能的工具书。书中精选了量化金融分析领域常见的重要函数和模型加以介绍并配有示例,以方便读者学习。本书涵盖了MATLAB基本知识、数据处理、Python交互、金融建模、高效并发程序设计和报告生成的量化分析流程,涉及量化投资中的多个重要算法,包括技术指标、线性回归、非线性回归、统计学、机器学习、投资组合模型和波动率模型等。书中强调了GPU和CPU并行计算在金融模型中的应用及将模型结果呈现为PDF或HTML等格式文件的Report Generator。最后向读者展示了如何使用书中介绍的各项MATLAB功能实现4个经典策略,即股票均线策略、小市值策略、期货套利策略和海龟交易法则。


本书适合具备一定数学、金融、计算机基础及编程经验的专业人员阅读,也可作为相关专业院校本科高年级、研究生或教师的教学参考用书。


图书在版编目(CIP)数据


MATLAB量化金融分析基础与实战/马萌编著.—北京:机械工业出版社,2018.6


(MATLAB工程应用书库)


ISBN 978-7-111-60417-4


Ⅰ.①M… Ⅱ.①马… Ⅲ.①Matlab软件-应用-金融统计-统计分析 Ⅳ.①F830.2


中国版本图书馆CIP数据核字(2018)第147276号


机械工业出版社(北京市百万庄大街22号 邮政编码 100037)


策划编辑:张淑谦 责任编辑:张淑谦 赵小花


责任校对:张艳霞 责任印制:张博


三河市宏达印刷有限公司印刷


2018年7月第1版·第1次印刷


184mm×260mm·15印张·362千字


0001—3000册


标准书号:ISBN 978-7-111-60417-4


定价:59.00元


凡购本书,如有缺页、倒页、脱页,由本社发行部调换


电话服务


服务咨询热线:(010)88361066


读者购书热线:(010)68326294


(010)88379203


封面无防伪标均为盗版


网络服务


机工官网:www.cmpbook.com


机工官博:weibo.com/cmp1952


教育服务网:www.cmpedu.com


金书网:www.golden-book.com

前言


“工欲善其事,必先利其器。”


有人说钢琴演奏是一门艺术,钢琴家用指尖将音符转换为美妙旋律来传递思想感情,与听众交流,但不要忘记这一切是建立在炉火纯青的演奏技术上的,所以钢琴演奏首先是一门技术。量化投资亦是如此,对于市场,每个人都有自己独到的见解、投资理念甚至具体的策略,但想把这些传递出来,则需要足够的编程技巧。


本书侧重的是MATLAB编程能力。编程能力可分为两个层次,一是能写出策略,二是写出高效策略。第一个层次需要掌握一门语言的基本语法和函数功能等,第二个层次则需要较多的知识储备与实际经验积累。希望读者通过学习本书至少熟练达到第一个层次以上,能够用MATLAB语言轻松表达自己的投资逻辑。本书并不侧重于揭示市场的运作原理或阐述模型和策略构建的合理性,因为策略本身的语言载体并不局限于MATLAB。


本书实战篇包括了4个经典投资策略。在12.1节讨论了一种最简单的利用市场失效的策略——均线系统,当然失效特例还有很多,也不仅局限于技术指标。市场有效理论将市场状态分为弱式、半强式和强式有效当然还有无效,实际上市场总是在这四种状态中切换而不会永远停留在一个状态,不同市场状态下有合适的应对策略且通过分形指标可捕捉市场状态变化进而做策略择时;在12.2节介绍了市值这个估值因子。这个因子为何有效以及股票投资中涉及的其他因子、择时、中性等概念,都是值得细致论述的重要知识点;在13.1节中展示了一个期货统计套利的例子——豆粕与菜粕的价差套利,这里想强调的是量化投资不仅是要寻找数字上的规律,更要理解数字背后的经济学原理;在13.2节中讲述了著名的海龟交易法则,同时也介绍了使用投资组合来分散风险的概念。


“授人以鱼,不如授人以渔。”


本书尽量选取与量化投资相关的MATLAB功能模块加以介绍,避免大而全地陈述或生涩地讲解MATLAB各个函数的功能,取而代之的是大量的简单例子,而这些例子可能是读者在做量化投资时遇到的真正需求。建议读者动手复写一遍例子的同时仔细阅读帮助文档中函数的解释以达到熟练应用的目的。为了让读者更好地再现书中例题,数据源限制在了MATLAB自带数据、Tushare开源数据和新浪网页数据。这些数据源会实时更新,读者在复写的时候由于新数据的加入可能会得到与书中不同的结果。


本书也无意将相关的数学、金融原理进行推导或详细阐述,如本书在量化投资模型篇中并未阐述模型的原理、公式推导等过程。


1.读者


本书适合具备数学、金融、计算机基础及一定编程经验的专业人员阅读,也可作为相关专业院校本科高年级、研究生或教师的教学、参考用书。


2.增值服务及资源下载


本书受MATLAB中文论坛(www.ilovematlab.cn)鼎力支持,读者可以登录网址http://www.ilovematlab.cn/forum-269-1.html与作者进行在线交流,或者登录网址http://www.ilovematlab.cn/thread-550784-1-1.html下载本书相关的程序源代码。


读者也可以关注机械工业出版社计算机分社官方微信订阅号“IT有得聊”,回复60417来下载相关代码或留言,您的反馈会帮助作者更好地改进书籍。同时作者会尽可能提供更多有用信息,以帮助读者提高量化技能。如因Tushare和新浪的数据提取方式改变而导致书中代码失效,作者会及时修正代码。


3.文字格式


代码及其输出结果以灰色底纹显示。


>>代码


代码输出


function OUT=example(IN)


OUT=IN;


4.MATLAB版本


如无特殊说明,本书所使用环境为Windows 7操作系统下的MATLAB。


>>disp(version)


8.6.0.267246(R2015b)


书中提到的“matlabroot”为MATLAB安装目录,Windows系统默认为“C:\\Program Files\\MATLAB\\R2015b”,而Linux系统默认为“/usr/local/Matlab/R2015b”。


读者需注意Windows系统下的代码有时并不能直接移植到Linux系统的MATLAB运行,比如Windows下的MATLAB支持使用‘\\’与‘/’符号表示路径,而Linux下仅支持使用‘/’表示路径。


>>loadfindemos\\disney.mat%Windows下可运行


>>loadfindemos/disney.mat%Windows和Linux下均可运行


还需注意的是Windows 7系统中的文件名不区分大小写,而Linux系统需要区分。所以,读者在有不同操作系统下代码移植需求的时候要合理规划工程中的文件名,以避免不必要的麻烦。


MATLAB虽然功能强大但为付费软件,如果读者经济能力有限可以考虑使用开源项目软件Octave。Octave与MATLAB语法格式基本相同,但部分工具箱或者函数功能可能未实现且性能表现亦可能略逊于MATLAB,详细信息可参阅http://www.gnu.org/software/octave/。


5.熟悉界面


如下图所示,MATLAB软件界面中的【应用程序】包含了诸多应用工具,如第11章的报告生成器;右上角【搜索文档】可以输入关键字检索MATLAB软件手册;【命令行窗口】用于指令的输入与执行;【工作区】用于存储变量,双击变量可查看变量的值与属性等信息,亦可修改此信息;【当前文件夹】显示当前文件夹下的所有文件目录结构;【命令历史记录】中可用<Ctrl+F>快捷键查找使用过的指令,双击选定指令可直接运行。


978-7-111-60417-4-Preface03-1.jpg


MATLAB软件界面


6.【命令行窗口】常用快捷键


<Tab> 自动补全指令


<Shift+Enter> 换行并执行所有指令


<Ctrl+C> 中断当前正在运行的指令


<↑>、<↓> 切换到之前运行过的指令,可按多次直到找到需要的指令


<Ctrl+S> 将工作区全部变量存储为“.mat”文件


<Ctrl+F> 弹出对话框,可用于寻找文件

量化投资基础篇


1章 基本数据类型


1.1 变量及其命名规则


MATLAB中变量命名必须以字母开头,可以包含数字和下画线。变量名需区分大小写,变量名长度上限可以用namelengthmax函数查看。变量命名应避免与MATLAB关键词重名,查看已有的MATLAB关键词可用iskeyword函数。对特定变量可用exist指令查看此变量是否已经存在。


例1:通过exist指令查看变量end是否已存在,返回值5表示end为内置变量,详见2.2.6节。


978-7-111-60417-4-Part01-1.jpg


1.2 数值


1.2.1 数值类型概述


MATLAB数值类型包括整数型与浮点型。整数型包括int8、int16、int32、int64、uint8、uint16、uint32和uint64,浮点型包括single和double。数值类型见表1-1。


1-1 数值类型


978-7-111-60417-4-Part01-2.jpg


1.2.2 如何查看数值类型范围


表1-2给出了MATLAB中常见的数值类型范围查看函数。


1-2 数值类型范围查看函数


978-7-111-60417-4-Part01-3.jpg


例2:查看double类型数据的范围。


>>str=double的范围精度为:从%g 到 %g\\n 和 %g 到 %g\\n


>>fprintf(str,-realmax,-realmin,realmin,realmax)


其中fprintf函数的用法可查看2.2.12节。输出为: double的范围精度为:从-1.79769e+308 到 -2.22507e-308


和 2.22507e-308 到 1.79769e+308


例3:查看single类型数据的范围。


>>str=single的范围精度为:从%g到%g\\n和 %g到 %g\\n


>>fprintf(str,-realmax(single),-realmin(single),realmin(single),realmax(single))


single的范围精度为:从-3.40282e+38 到 -1.17549e-38


和 1.17549e-38 到 3.40282e+38


例4:查看int32类型数据的范围。


>>str=int32的范围精度为:从%d 到 %d\\n


>>fprintf(str,intmin,intmax)


int32的范围精度为:从-2147483648 到 2147483647


1.2.3 实例1:当心数值类型转换中的溢出


MATLAB中的数值类型可以相互转换,常见转换函数见表1-3。


1-3 数值类型转换函数


978-7-111-60417-4-Part01-4.jpg


例5:将10000转换为int8类型。因为1000超过int8的范围上限127,故数据会截断为上限127,所以在实际程序中应注意避免数据溢出带来的舍入风险。


>>int8(10000)


ans=


127


例6:将字符1转换为int8类型。


错误转换:


>>int8(1)%int8将字符1转为其ASCII码49


ans=


49


正确转换方式为将字符1利用str2num函数转换为数字1后再转换为int8类型。


>>int8(str2num(1))


ans=


1


例7:将数字1转换为字符1


>>num2str(1)


ans=


1


1.2.4 实例2:判断与查看数值类型


语法:


isa(X,type)


如果X的类型与type相同则返回1,否则返回0。


例8:判断与查看数值类型示例。


>>isa(1,int8


ans=


0


当然可以直接利用class函数查看数值类型。


>>class(int8(1))


ans=


int8


isa与class函数针对所有MATLAB数据类型均可执行,isa函数用法详见2.2.7节。


1.3 矩阵


1.3.1 实例3:矩阵及特殊矩阵的建立方法


矩阵中元素用方括号包括起来,同一行元素用逗号间隔,换行用分号表示。


例9:建立矩阵A、B。


978-7-111-60417-4-Part01-5.jpg


例10:建立特殊矩阵。


建立空矩阵C。


978-7-111-60417-4-Part01-6.jpg


建立2×2单位矩阵。


978-7-111-60417-4-Part01-7.jpg


建立元素全为0的2×2矩阵。


978-7-111-60417-4-Part01-8.jpg


建立元素全为1的2×2矩阵。


978-7-111-60417-4-Part01-9.jpg


建立元素全为NaN的2×2矩阵。


978-7-111-60417-4-Part01-10.jpg


1.3.2 实例4:利用一维索引提取二维矩阵中的元素


提取m×n矩阵X处于第i行第j列元素,可以用二维索引:


X(i,j)


也可以用一维索引S:


X(S)


其中一维索引S由二维索引逐列

....

本站仅展示书籍部分内容

如有任何咨询

请加微信10090337咨询

本站仅展示书籍部分内容
如有任何咨询

请加微信10090337咨询

再显示