编辑推荐
长期以来,量化分析师面临着诸多挑战,但相应的待遇也很好丰厚,行业里有名的公司和投资银行都在积极争夺相关人才。假如你想让自己掌握相关技能,并学会应用流行的R语言来解决量化金融世界中真实涌现的各式难题,那么本书就是为你量身定制的宝贵资源。 本书基于R语言进行讲解,循序渐进地教读者如何构建量化金融模型,如何通过R编程高效地解决金融难题,同时还将机器学习算法、时间序列分析、预测建模、风险分析等重要技术点纳入其中。书中展示了诸多易于理解的示例和应用级案例,这些内容有助于读者更好地理解相关的主题以及如何在R中通过编程实现。 阅读本书后,你将能够: (1)了解R语言的基础知识及其在量化金融领域中的应用; (2)用R处理数据和构建模型; (3)探究不同类型的分析技术, 如统计分析、时间序列分析、预测建模和计量分析等; (4)用真实世界的数据和案例来构建和分析量化金融模型; (5)学习用真实世界的案例来开发交易策略; (6)在基于模型做出决策前,要先确定合适的绩效测度指标; (7)深入了解基于机器学习的量化交易; (8)掌握算法交易及其优化方法; (9)学会管理和对冲金融工具的风险。
内容简介
R既是统计、挖掘、计算、分析、制图等方面的工具,也是一个强大的开发与应用平台。在大数据时代,任何与数据相关的难题,都可以借助R语言来解决。而金融领域正是与数据密切相关的行业,可以通过R这一工具来实现量化金融建模与量化交易。 本书包括9章内容,书中包含诸多真实的金融案例,旨在通过循序渐进的讲解帮助读者了解R,并学会在量化金融与量化交易中使用R。本书还介绍了有关统计建模、计量分析与小波分析、时间序列建模、算法交易、基于机器学习的交易、风险管理、衍生品定价等重要内容。 本书适合对R及其应用感兴趣的读者阅读,尤其适合想要在量化交易中使用R的读者学习。本书并不要求读者具备R编程的知识,但希望读者对数学分析有一些了解。
作者简介
Param Jeet从印度理工学院马德拉斯分校(IITM)获得数学博士学位。Param Jeet博士在多个靠前刊物上发表多篇数学方面的研究论文。过去几年,Param Jeet博士进入数据分析行业,并以数据科学家的身份为多家跨国公司工作或提供咨询服务。 Prashant Vats从印度理工学院获得数学硕士学位。Prashant进入数据分析行业已有10年时间,作为数据科学家供职于多家跨国公司,提供多领域的咨询服务。
目录
- 第 1章 R语言入门 1
- 1.1 为什么要用R 1
- 1.2 下载并安装R软件 2
- 1.3 安装R程序包 3
- 1.3.1 直接从CRAN安装 3
- 1.3.2 手动安装 4
- 1.4 数据类型 4
- 1.4.1 向量 5
- 1.4.2 列表 6
- 1.4.3 矩阵 7
- 1.4.4 数组 7
- 1.4.5 因子 7
- 1.4.6 数据框 8
- 1.5 导入和输出不同类型的数据 8
- 1.5.1 读取和存储CSV格式文档 9
- 1.5.2 XLSX文档 10
- 1.5.3 网络数据或在线数据资源 11
- 1.5.4 数据库 12
- 1.6 编写表达式 13
- 1.6.1 表达式 13
- 1.6.2 符号和赋值 15
- 1.6.3 关键词 15
- 1.6.4 变量命名 15
- 1.7 函数 16
- 1.7.1 调用函数(无需参数) 17
- 1.7.2 调用函数(需要参数) 17
- 1.8 如何执行R程序 18
- 1.8.1 在R代码窗中运行存盘的脚本文档 18
- 1.8.2 加载R脚本文档 18
- 1.9 循环与条件 19
- 1.9.1 if语句 19
- 1.9.2 if … else语句 20
- 1.9.3 for循环 20
- 1.9.4 while循环 21
- 1.9.5 apply()函数 21
- 1.9.6 sapply()函数 21
- 1.10 循环控制语句 22
- 1.10.1 break语句 22
- 1.10.2 next语句 22
- 1.11 问题 23
- 1.12 小结 23
- 第 2章 统计建模 25
- 2.1 概率分布 25
- 2.1.1 正态分布 26
- 2.1.2 对数正态分布 28
- 2.1.3 泊松分布 30
- 2.1.4 均匀分布 31
- 2.1.5 极值理论 31
- 2.2 抽样 33
- 2.2.1 随机抽样 33
- 2.2.2 分层抽样 35
- 2.3 统计量 36
- 2.3.1 均值 36
- 2.3.2 中位数 36
- 2.3.3 众数 36
- 2.3.4 概览 37
- 2.3.5 矩 37
- 2.3.6 峰度 37
- 2.3.7 偏度 38
- 2.4 相关性 38
- 2.4.1 自相关性 38
- 2.4.2 偏自相关性 39
- 2.4.3 交叉相关性 40
- 2.5 假设检验 40
- 2.5.1 总体均值的下侧单尾检验(方差已知) 40
- 2.5.2 总体均值的上侧单尾检验(方差已知) 41
- 2.5.3 总体均值的双尾检验(方差已知) 42
- 2.5.4 总体均值的下侧单尾检验(方差未知) 43
- 2.5.5 总体均值的上侧单尾检验(方差未知) 44
- 2.5.6 总体均值的双尾检验(方差未知) 44
- 2.6 参数估计 45
- 2.6.1 极大似然估计 45
- 2.6.2 线性模型 47
- 2.7 异常值侦测 48
- 2.7.1 箱形图 48
- 2.7.2 LOF算法 48
- 2.8 标准化 49
- 2.9 归一化 50
- 2.10 问题 50
- 2.11 小结 51
- 第3章 计量分析与小波分析 52
- 3.1 简单线性回归 53
- 3.1.1 散点图 53
- 3.1.2 可决系数 55
- 3.1.3 显著性检验 55
- 3.1.4 置信区间 56
- 3.1.5 残差图 56
- 3.1.6 误差项正态分布 57
- 3.2 多元线性回归 58
- 3.2.1 可决系数 59
- 3.2.2 置信区间 60
- 3.2.3 多重共线性 60
- 3.3 ANOVA 60
- 3.4 特征选择 61
- 3.4.1 考察相关系数矩阵 62
- 3.4.2 逐步法变量选择 63
- 3.4.3 用分类技术进行变量选择 63
- 3.4.4 变量排序 64
- 3.5 小波分析 64
- 3.6 快速傅里叶变换 70
- 3.7 希尔伯特变换 71
- 3.8 问题 73
- 3.9 小结 74
- 第4章 时间序列建模 75
- 4.1 时间序列概述 76
- 4.2 将数据转化为时间序列 76
- 4.3 zoo包 78
- 4.3.1 构建zoo对象 78
- 4.3.2 用zoo包读入外部数据 79
- 4.3.3 zoo对象的优点 79
- 4.3.4 zoo对象的缺点 81
- 4.4 xts包 81
- 4.4.1 调用as.xts()构建xts对象 81
- 4.4.2 从头开始构建xts对象 82
- 4.5 线性过滤器 83
- 4.6 AR模型 84
- 4.7 MA模型 85
- 4.8 ARIMA模型 86
- 4.9 GARCH模型 90
- 4.10 EGARCH模型 91
- 4.11 VGARCH模型 92
- 4.12 动态条件相关性模型 94
- 4.13 问题 96
- 4.14 小结 96
- 第5章 算法交易 97
- 5.1 动量或方向性交易 98
- 5.2 配对交易 106
- 5.2.1 基于距离的配对交易 106
- 5.2.2 基于相关性的配对交易 112
- 5.2.3 基于协整关系的配对交易 115
- 5.3 资本资产定价模型 118
- 5.4 多因子模型 120
- 5.5 构建投资组合 126
- 5.6 问题 130
- 5.7 小结 130
- 第6章 基于机器学习的交易 131
- 6.1 逻辑回归 132
- 6.2 神经网络 138
- 6.3 深度神经网络 146
- 6.4 K均值算法 148
- 6.5 K近邻法 151
- 6.6 支持向量机 154
- 6.7 决策树 156
- 6.8 随机森林 157
- 6.9 问题 160
- 6.10 小结 161
- 第7章 风险管理 162
- 7.1 市场风险 162
- 7.2 投资组合风险 164
- 7.3 风险值 167
- 7.3.1 参数VaR 167
- 7.3.2 历史VaR 168
- 7.4 蒙特卡罗模拟 170
- 7.5 风险对冲 171
- 7.6 巴塞尔监管 172
- 7.7 信用风险 173
- 7.8 欺诈识别 177
- 7.9 负债管理 180
- 7.10 问题 180
- 7.11 小结 181
- 第8章 *优化 182
- 8.1 动态再平衡 182
- 8.2 前行测试 185
- 8.3 网格测试 185
- 8.4 遗传算法 188
- 8.5 问题 192
- 8.6 小结 192
- 第9章 衍生品定价 193
- 9.1 期权定价 193
- 9.1.1 Black-Scholes模型 194
- 9.1.2 Cox-Ross-Rubinstein模型 195
- 9.1.3 希腊字母 198
- 9.2 隐含波动率 200
- 9.3 *定价 201
- 9.4 信用利差 204
- 9.5 信用违约互换 207
- 9.6 利率衍生品 208
- 9.7 奇异期权 209
- 9.8 问题 213
- 9.9 小结 213