科技>计算机>计算机科学
量化投资与FOF投资:以MATLAB+Python为工具  

量化投资与FOF投资:以MATLAB+Python为工具  "

作者:李洋(Faruto)
ISBN:9787121436352
定价:¥178.0
字数:885千字
页数:632
出版时间:2022-06
开本:16开
版次:01-01
装帧:
出版社:电子工业出版社
简介

本书分为基础篇和高级篇两部分。基础篇通过Q&A的方式介绍MATLAB和Python的主要功能、基本命令、数据处理等内容,使读者对MATLAB和Python有一个基本的了解。高级篇分为24章,介绍MATLAB和Python结合具体量化投资的相关案例,包括MATLAB处理优化问题和数据交互、绘制交易图形、构建行情软件和交易模型、基于MATLAB的BP神经网络和广义极值分布、基于MATLAB的正则表达式基础教程、FQuantToolBox 股票期货数据获取&量化回测工具箱的介绍与使用等内容,通过丰富的实例和图形帮助读者理解和运用MATLAB和Python作为量化投资的工具。本书的特色在于不仅能满足理论学习的需要,还可以帮助读者边学边练,做到理论与实践相结合。 本书适合经济金融机构的研究人员和从业人员、进行量化投资的交易员、具有统计背景的科研工作者、高等院校相关专业的教师和学生及对量化投资和MATLAB感兴趣的人士阅读。

前言

写在前面的话 《量化投资:以MATLAB为工具》一书于2014年出版,2016年进行修订出版第2版。不知不觉,距离第1版面世已经有8年的时光了,我现在仍能收到很多读者的邮件,真的由衷地感谢大家多年来持续的关注和支持。 我深知该书无法满足所有层次的读者朋友,我也知道该书有着诸多可以完善的地方,我还知道现在又有了新的知识点可以补充进书里,所以经过一番重新整合,希望这本书可以对在投资道路上探索的朋友有一点点启发和帮助。 此次改版,主要是新增了Python语言和FOF投资的相关案例,从书籍的名字也可以看出来。 关于新增Python语言的相关案例,可能会引来“编程语言之争”。我想说的是,不论是MATLAB语言、Python语言,还是R语言,都仅仅是个工具,对其进行纯粹的效率对比或者语言对比没有实际意义,而把工具用好,达到自己的目的则更为重要。就我个人而言,实际工作中MATLAB用得最多,毕竟是多年工作经验的积累,其次Python也经常会用,所以在本书里新增了一些Python的案例,希望读者朋友也能把自己提升成“多面手”。 关于新增FOF投资相关案例,是因为我在金融领域从业10年左右,先后在期货公司、保险资管、公募基金、银行理财、大型财富管理公司工作过,对各种金融业态和打法还算熟悉,核心的两块工作就是量化投资和FOF投资,所以想结合实际把量化投资与FOF投资结合在一起介绍给大家,以飨读者。 本书内容框架 本书分为基础篇和高级篇两部分。 基础篇采用了Q&A的写作方式,目的是想让刚刚接触的读者能快速有效地了解MATLAB和Python。基础篇内容来源多样,既有来自各种官方的帮助文档,又有我个人的一些总结,还有若干来自MATLAB技术论坛的讨论。 高级篇介绍了MATLAB和Python结合具体量化投资及FOF投资的相关实践案例,该部分可以帮助读者通过具体量化投资及FOF投资案例掌握MATLAB和Python的相关应用与程序包。 本书既有复杂的模型(支持向量机相关模型)介绍,又有简单的模型(品种简单波动性模型)介绍。无论模型复杂与否,我想说的是投资本身更像一门艺术,并不是复杂的模型才是“好”模型,简单的模型就是“差”模型,所有的回测都只是检测模型的历史表现,所有的模型都有其生命周期和适用条件,终极意义上的模型检验只能是“实战”。 阅读本书时,我建议读者按照“先通读章节内容,后调试程序,再精读章节内容”的顺序进行。本书的章节之间没有特别的顺序要求,读者可以选择任何感兴趣的章节开始阅读。如果您是一名量化投资和FOF投资的初学者,建议按照章节顺序通读全书。 面向读者对象 ● 经济金融机构的研究人员和从业人员。 ● 进行量化投资、FOF/MOM投资的从业者。 ● 具有统计背景的科研工作者。 ● 高等院校理工科、经济金融学科等相关专业的本科生、研究生及教师。 勘误和交流 由于笔者水平有限,书中难免会出现一些错误或不严谨的地方,恳请读者批评指正。本书在MATLAB技术论坛的“读书频道”有专门的交流板块,方便读者与笔者进行沟通。如果您在阅读过程中有任何疑问,可以在上述书籍交流板块发帖留言,笔者会尽力为您提供最满意的解答。本书的全部源代码和测试数据也可以在上述书籍交流板块下载。本书为黑白印刷,对于书中的测试和展示图片,读者可以运行源代码得到彩色图片进行查看。 如果您有什么宝贵意见,欢迎发邮件给笔者进行交流,期待能得到您真挚的反馈。 笔者邮箱:farutoliyang@foxmail.com 笔者微博:http://weibo.com/faruto 笔者博客:http://blog.sina.com.cn/faruto 笔者微信公众号:FQuantStudio 致谢 本书得到了笔者的朋友和同事的帮助,借本书出版之际,一并向他们表示真诚的感谢。 感谢电子工业出版社李冰、徐萍等编辑的支持与合作。 感谢我之前曾经共事过的量化投资和FOF投资团队成员:张冰博士、钱文博士、陈星、宋腾;周剑博士、赵婉西、陈雪莹;刘文希、伍侃、刘霁;谢鑫、白圭尧。在量化投资和FOF投资这条路上,我们要一直前行。 感谢MATLAB技术论坛的兄弟们:詹福宇博士、王小川博士、郁磊、吴鹏、谢中华和史峰,怀念自2008年开始一起走过的MATLAB岁月。 感谢连祥斌、伍侃、吴云峰、张琨、张馨元、彭安迅、张宇霖,该书部分章节由我邀请他们撰写,最后修改完善而成,在此对他们表示由衷的感谢。 感谢我的家人尤其是我的妻子,感谢她对我工作上的支持和生活上的照顾!感谢我的儿子,希望他茁壮成长! 谨以此书献给我最爱的家人、众多量化投资和FOF投资的从业者! 李 洋 2022年4月于北京中关村

目录

基 础 篇 第0章 N分钟学会MATLAB(60<N<180) 1 0.1 引言 1 0.2 基础知识 1 0.3 输入/输出 11 0.4 数据处理 13 0.5 数学运算 19 0.6 字符操作 27 0.7 日期时间 29 0.8 绘图相关 30 0.9 数学、金融、统计相关 36 0.10 其他 50 第1章 Python快速入门与进阶提高 53 1.1 快速入门 53 1.1.1 环境准备 53 1.1.2 开发工具 53 1.1.3 一张图学Python 54 1.1.4 Jupyter Notebook启动目录 55 1.1.5 国内镜像源 56 1.1.6 虚拟环境 56 1.1.7 包的安装 57 1.1.8 TA-Lib安装 57 1.1.9 Pandas显示控制选项 57 1.1.10 Notebook显示控制 58 1.2 进阶提高 58 1.2.1 批处理中切换到虚拟环境 58 1.2.2 GitHub仓库包的安装 59 1.2.3 包的引入 59 1.2.4 在线平台引入自定义包 60 1.2.5 pd.read_csv编码 61 1.2.6 pd.read_csv中文路径 61 1.2.7 pd.read_csv示例 62 1.2.8 pd.read_csv高级玩法 62 1.2.9 pickle技巧 63 1.2.10 MultiIndex多重索引的切片 63 1.2.11 星期 65 1.2.12 魔术命令 67 1.2.13 隐藏Notebook代码区 67 1.2.14 完全屏蔽Jupter Notebook源代码 67 1.2.15 Python源代码保护 68 1.2.16 Python加速 69 1.2.17 多进程 69 1.2.18 绘图内存泄露问题 70 1.2.19 ipynb转html 70 1.2.20 TA-Lib中的EMA计算 71 1.2.21 绩效指标计算 72 1.2.22 动态图表 75 高 级 篇 第2章 基于Python的优化问题 76 2.1 数值优化 76 2.1.1 线性规划 76 2.1.2 非线性优化 79 2.2 组合优化 80 2.2.1 风险预算 80 2.2.2 风险平价 84 2.2.3 bt库风险平价示例 86 第3章 资产配置中如何分配资金 89 3.1 由分配奖金说起 89 3.2 整体框架 89 3.3 组合优化动物园 91 3.3.1 零输入 91 3.3.2 价格外信息加权 93 3.3.3 方差协方差 94 3.3.4 均值-方差优化 99 3.4 其他 103 3.4.1 权重约束 103 3.4.2 方差协方差估计 103 3.4.3 多优化器 104 3.5 总结 105 第4章 K线图及常用技术指标的MATLAB实现 106 4.1 K线图的MATLAB实现 107 4.1.1 MATLAB内置函数candle实现 107 4.1.2 自己编写函数实现 108 4.2 常用技术指标的MATLAB实现 113 4.2.1 简单移动平均线(SMA)和指数移动平均线(EMA) 113 4.2.2 自适应移动平均线(AMA) 118 4.2.3 指数平滑异同移动平均线(MACD) 122 4.2.4 平均差(DMA) 125 第5章 基于MATLAB的行情软件 128 5.1 基于MATLAB的行情软件使用介绍 130 5.1.1 面板介绍 130 5.1.2 功能介绍 130 5.2 基于MATLAB的行情软件建立过程 133 5.2.1 GUI版面布局设计 133 5.2.2 核心函数编写 135 5.3 扩展阅读 144 5.3.1 MATLAB通过网页抓取从雅虎网站获取股票历史数据 145 5.3.2 MATLAB通过网页抓取从新浪网站获取股票实时数据 148 第6章 含衍生品的投资组合风险度量——基于嵌套随机仿真方法 153 6.1 金融风险度量 153 6.1.1 常见的几种金融风险度量 153 6.1.2 衍生品投资组合的损失及风险 155 6.2 嵌套随机仿真方法 156 6.2.1 嵌套随机仿真的框架 156 6.2.2 基于自助采样法的计算量分配方法 159 第7章 基于MATLAB的风险管理 164 7.1 背景介绍 164 7.1.1 VaR模型 164 7.1.2 VaR计算方法 167 7.2 MATLAB实现 167 7.2.1 数据读取 167 7.2.2 数据处理 177 7.2.3 历史模拟法程序 179 7.2.4 参数模型法程序 181 7.2.5 蒙特卡罗模拟程序 182 7.2.6 计算结果比较 186 第8章 期权定价模型的MATLAB实现 187 8.1 概述 187 8.1.1 关于布莱克、斯科尔斯和莫顿的故事 187 8.1.2 Black-Scholes定价模型 188 8.2 Black-Scholes定价模型及希腊字母研究 189 8.2.1 Black-Scholes微分方程的推导 189 8.2.2 希腊字母研究及MATLAB仿真测试 195 8.3 二叉树定价模型研究 214 8.3.1 期权定价的数值方法概述 214 8.3.2 二叉树定价模型 216 8.3.3 二叉树模型下的希腊字母计算和测试 221 8.3.4 美式期权与欧式期权的风险指标对比 225 8.4 BAW定价模型研究 229 8.4.1 美式期权定价模型方法概述 229 8.4.2 BAW定价模型 229 8.4.3 BAW定价模型仿真测试 233 第9章 基于MATLAB的支持向量机(SVM)在量化投资中的应用 235 9.1 背景介绍 235 9.1.1 SVM概述 235 9.1.2 LibSVM工具箱 237 9.2 上证指数开盘指数预测 239 9.2.1 模型建立 239 9.2.2 MATLAB实现 240 9.3 上证指数开盘指数变化趋势和变化空间预测 247 9.3.1 信息粒化简介 247 9.3.2 模型建立 250 9.3.3 MATLAB实现 251 9.4 基于C-SVM的期货交易策略 256 9.4.1 引言 256 9.4.2 模型建立 257 9.4.3 MATLAB实现 258 9.5 扩展阅读 273 9.5.1 MATLAB自带的SVM实现函数与LibSVM的差别 273 9.5.2 关于SVM的学习资源汇总 273 第10章 MATLAB与其他金融平台终端的通信 277 10.1 DataHouse平台MATLAB接口介绍 277 10.1.1 DataHouse平台简介 277 10.1.2 MATLAB接口简介 279 10.2 Wind平台MATLAB接口介绍 294 10.2.1 Wind平台简介 294 10.2.2 MATLAB接口简介 295 第11章 基于MATLAB的交易品种选择分析 300 11.1 品种的流动性 300 11.2 品种的波动性 303 11.3 小结 307 第12章 基于MATLAB的交易品种相关性分析 308 12.1 背景介绍 308 12.2 MATLAB实现 311 12.2.1 计算相关性的时间长度和时间周期的选择 312 12.2.2 不同交易品种(资产)的时间轴校正 314 12.2.3 全市场品种的相关性图形展示 314 12.3 扩展阅读 317 第13章 基于MATLAB的国内期货证券交易解决方案 321 13.1 国内期货柜台系统介绍 321 13.2 MATLAB对接CTP的各种方式 323 13.3 开发前准备 324 13.3.1 文档下载 324 13.3.2 MATLAB安装 325 13.3.3 监控工具 325 13.3.4 开发工具 326 13.4 C# 版对接原理 326 13.5 XAPI版项目介绍 327 13.6 MATLAB对接期货接口介绍(XAPI项目.NET版) 329 13.6.1 导入C# 库 330 13.6.2 启动行情连接 330 13.6.3 显示连接状态 334 13.6.4 订阅行情 338 13.6.5 行情连接参数 338 13.6.6 启动交易连接 338 13.6.7 交易的相关事件 339 13.6.8 下单 340 13.6.9 撤单 341 13.6.10 退出 342 13.6.11 改进 342 13.7 MATLAB对接期货接口介绍(XAPI项目COM版) 343 13.7.1 COM组件注册 343 13.7.2 COM组件运行 344 13.7.3 COM事件注册 346 13.7.4 下单 348 13.8 MATLAB对接证券接口 349 13.9 MATLAB对接个股期权接口 350 第14章 构建基于MATLAB的 回测系统 352 14.1 基于MATLAB的量化回测平台框架介绍 353 14.1.1 回测平台实现细节思考 353 14.1.2 回测平台框架 354 14.2 简单均线系统的MATLAB实现 355 14.3 基于MATLAB的策略回测模板样例 361 14.3.1 模板结构 361 14.3.2 相关回测变量和指标的定义 361 14.3.3 策略描述 363 14.3.4 数据准备 365 14.3.5 回测计算 366 14.3.6 策略评价 372 14.4 其他基于MATLAB的回测平台展示 379 14.4.1 HTS1.0——基于MATLAB设计的回测平台体验版 379 14.4.2 GreenDragon期货交易算法研发平台 381 14.4.3 交易策略回测GUI(Trading Strategy Back Tester) 381 第15章 基于MATLAB的多因子选股模型的实现 383 15.1 多因子模型介绍 383 15.1.1 背景 383 15.1.2 因子种类 383 15.1.3 因子库 384 15.1.4 全局参数 385 15.1.5 初始股票池 385 15.1.6 股票组合 386 15.1.7 情景分析 387 15.1.8 测试流程 387 15.1.9 评价体系 388 15.2 MATLAB实现 389 15.2.1 主脚本 389 15.2.2 提取数据 391 15.2.3 因子选股 393 15.2.4 回测 394 15.2.5 策略评价 398 15.3 总结 400 第16章 基于MATLAB和Wind的量化交易终端AsTradePlatform 介绍与使用 401 16.1 背景介绍 401 16.2 面板介绍 401 16.3 模块介绍 403 16.3.1 前期准备 403 16.3.2 初始化 407 16.3.3 登录/退出模块 408 16.3.4 策略控制模块 415 16.3.5 标的池模块 442 16.3.6 策略监控模块 452 16.3.7 账户信息模块 462 16.3.8 手动交易 464 16.3.9 选股模型 465 16.4 总结与改进 469 第17章 基于MATLAB的BP神经网络在量化投资中的应用 470 17.1 基础简介 470 17.1.1 BP神经网络概述 470 17.1.2 基于MATLAB的BP神经网络的非线性系统建模 477 17.2 基于MATLAB的BP神经网络对股指连续收盘价进行预测 481 17.2.1 数据与指标选取 481 17.2.2 基于BP神经网络的股指连续的预测实现 482 第18章 基于MATLAB的广义极值分布在量化投资中的策略挖掘与回测 485 18.1 背景介绍 485 18.1.1 广义极值分布 485 18.1.2 GEV分布与目标价格的突破概率 488 18.2 GEV策略与回测的MATLAB实现 494 18.2.1 策略准则 494 18.2.2 GEV策略构建 499 18.2.3 HS300回测 507 18.2.4 股指期货5分钟连续主力合约回测 511 第19章 基于MATLAB的正则 表达式基础教程 516 19.1 引言 516 19.2 单个字符的匹配 517 19.2.1 句点符号 517 19.2.2 方括号符号 518 19.2.3 方括号中的连接符 518 19.2.4 特殊字符 519 19.2.5 类表达式 519 19.3 字符串的匹配 520 19.3.1 多次匹配 520 19.3.2 逻辑运算符 521 19.3.3 左顾右盼——利用上下文匹配 522 19.4 标记(tokens) 523 19.4.1 什么是标记 523 19.4.2 如何使用标记 524 19.5 多行字符串与多正则表达式 525 19.5.1 多个字符串与单个正则表达式匹配 525 19.5.2 多个字符串与多个正则表达式匹配 526 19.5.3 多字符串的替换 526 19.6 应用实例 526 第20章 FQuantToolBox股票期货数据获取&量化回测工具箱的 介绍与使用 528 20.1 FQuantToolBox是做什么用的 528 20.2 FQuantToolBox工具箱内容简介 529 20.3 行情数据和基本面数据获取函数 530 20.4 工具箱各版本更新说明 556 第21章 双动量模型在资产配置 中的作用 559 21.1 背景 559 21.2 他山之石 560 21.2.1 鲁棒资产配置(Robust Asset Allocation) 561 21.2.2 中信大类资产趋势策略指数(CSI CITIC Multi 562 Asset Trend Index) 562 21.2.3 全球战术资产配置(Global Tactical Asset Allocation) 563 21.2.4 自适应资产配置策略(Adaptive Asset Allocation) 565 21.2.5 全球权益动量(Global Equities Momentum) 565 21.2.6 综合双动量模型(Composite Dual Momentum) 566 21.2.7 分散的双动量模型(Diversified Dual Momentum) 567 21.2.8 加速双动量(Accelerating Dual Momentum) 567 21.2.9 保护型资产配置(Protective Asset Allocation) 568 21.2.10 警惕型资产配置(Vigilant Asset Allocation) 569 21.2.11 防御型资产配置(Defensive Asset Allocation) 570 21.2.12 主动型混合资产配置(Active Combined Asset) 571 21.2.13 Mozaic指数 571 21.3 可以攻玉 572 21.3.1 数据 572 21.3.2 基本统计 573 21.3.3 横截面动量 575 21.3.4 时间序列动量 576 21.3.5 双动量 577 21.4 结论 578 第22章 基于低滞后均线在沪深300指数上的量化择时模型 580 22.1 低滞后均线介绍 580 22.2 低滞后均线策略回测的MATLAB实现 583 第23章 从量化角度详解美国ETF行业大奖的Buffer ETF创新产品 593 23.1 Buffer ETF基础知识 593 23.2 Buffer ETF的投资策略 596 第24章 量化FOF组合构建和分析技术在基金投顾中的应用 600 24.1 基金研究 600 24.1.1 基金评价方法 600 24.1.2 基金经理评价方法 601 24.2 大类资产配置与FOF组合构建 602 24.2.1 大类资产配置方法 602 24.2.2 大类资产配置方法的Python实现 604 24.2.3 FOF组合构建策略 607 24.2.4 FOF组合策略的Python实现 608 24.3 FOF组合分析 609 24.3.1 FOF组合分析概述 609 24.3.2 FOF组合分析举例 611 24.4 基金投顾与智能FOF 612 24.4.1 智能FOF 612 24.4.2 萝卜理财 613

作者简介

编辑推荐

作者寄语

电子资料

www.luweidong.cn

下一个