书籍详情
基于Python的金融分析与风险管理
作者:斯文 著
出版社:人民邮电出版社
出版时间:2019-10-01
ISBN:9787115516114
定价:¥118.00
购买这本书可以去
内容简介
Python是一门开源的编程语言,凭借其易学和灵活的特点,得到了越来越多人的认可和青睐。它在金融领域也有着非常好的应用现状和前景。本书聚焦于Python在金融分析与风险管理的应用,全书分为入门篇、基础篇和提高篇,共12章。入门篇对Python做了介绍并结合金融场景演示了Python的基本操作;基础篇结合金融场景,讲解NumPy、Pandas、Matplotlib、SciPy等Python模块的具体运用;提高篇详细讨论运用Python分析利率、债券、股票、期货、期权以及风险价值等内容。本书是专注于Python在金融领域运用的普及性读物,作者斯文博士在金融与风险管理方面有着深厚的积累,同时也有着丰富的编程经验,一直致力于倡导和推广Python在金融领域的运用。本书适合想要掌握Python应用的金融学习者、金融从业者阅读,也适合想要转行到金融领域的程序员以及对Python在金融领域的实践应用感兴趣的人士阅读,并且不要求读者有Python编程基础。
作者简介
斯文,笔名“华尔街先生”,浙江湖州人,经济学博士,中国注册会计师(Certified Public Accountant,CPA),特许金融分析师(Chartered Financial Analyst,CFA),金融风险管理师(Financial Risk Manager,FRM)。在国内某金融控股集团担任高级风控总监,拥有在中外资银行、证券公司、信托公司等机构十余年的金融与风险管理从业经验。同时,他也是上海财经大学风险管理校友俱乐部的发起人兼理事长、《上财风险管理论坛》杂志主编、上海资产管理行业风险管理同业交流会秘书长,并担任中南财经政法大学、华东政法大学等多所国内高校的金融硕士研究生兼职导师,公开发表学术论文50 余篇,出版了专著《中国外汇衍生品市场研究》(上海人民出版社2016 年8 月出版),多次荣获***、省部级的荣誉称号。除此之外,他还历时3 年多推出了《期权、期货及其他衍生产品(第九版)》视频课程(共360讲),累计观看人次超过百万,累计撰写了10万多行与金融相关的Python 代码,长期致力于倡导并推广Python在金融领域的运用。
目录
第 1部分 入门篇
第 1章 Python概览 2
1.1 Python的定义与比较优势 3
1.1.1 Python简介 3
1.1.2 Python的比较优势 4
1.2 Python之父—吉多·范罗苏姆 5
1.3 Python的演进历史和常用版本 7
1.4 Python的安装 8
1.4.1 单独安装 8
1.4.2 集成安装 8
1.4.3 安装并启动Anaconda 9
1.4.4 Spyder的界面 12
1.5 学习Python的方法论 13
1.5.1 学习的态度 13
1.5.2 学习的原则 13
1.5.3 学习的方法 14
1.6 金融数据的获取 15
1.6.1 万得(Wind) 15
1.6.2 同花顺 15
1.6.3 CCER经济金融数据库 15
1.6.4 国泰安经济金融研究数据库 16
1.7 小结 16
1.8 拓展阅读 16
第 2章 结合金融演示Python的基本
操作 17
2.1 金融变量在Python中的赋值 18
2.2 Python的数据类型 18
2.2.1 整型 19
2.2.2 浮点型 19
2.2.3 复数 20
2.2.4 字符串 20
2.3 Python的数据结构 23
2.3.1 元组 23
2.3.2 列表 25
2.3.3 集合 28
2.3.4 字典 30
2.4 Python的运算符号 33
2.4.1 基本算术运算符号 33
2.4.2 关系运算符号 36
2.4.3 赋值运算符号 37
2.4.4 成员运算符号 38
2.5 Python的主要内置函数 39
2.6 自定义函数 43
2.6.1 运用def语法 43
2.6.2 运用lambda函数 44
2.7 Python的语句 44
2.7.1 条件语句 44
2.7.2 循环语句 46
2.7.3 条件语句和循环语句结合 48
2.8 模块的导入与math模块 49
2.8.1 模块导入的若干种方法 50
2.8.2 math模块 51
2.9 小结 53
2.10 拓展阅读 53
第 2部分 基础篇
第3章 结合金融场景演示NumPy
模块的操作 56
3.1 从一个投资案例讲起 57
3.2 N维数组 58
3.2.1 数组的结构 58
3.2.2 数组的便捷生成 60
3.3 数组的索引、切片和排序 63
3.3.1 索引 63
3.3.2 切片 64
3.3.3 排序 64
3.4 数组的相关运算 65
3.4.1 数组内的运算 65
3.4.2 数组间的运算 69
3.4.3 矩阵的操作 72
3.5 通过NumPy生成随机数 74
3.5.1 主要的统计分布 74
3.5.2 主要函数 80
3.5.3 相关示例 82
3.6 小结 85
3.7 拓展阅读 86
第4章 结合金融时间序列演示Pandas
模块的操作 87
4.1 Pandas的数据结构 88
4.1.1 序列 88
4.1.2 数据框 90
4.1.3 外部数据导入并直接生成
数据框 91
4.2 数组框的可视化 93
4.2.1 中文字体的可视化 93
4.2.2 数据框可视化的函数与参数 94
4.2.3 一个示例 95
4.3 数据框内部的操作 96
4.3.1 描述数据框的基本性质 96
4.3.2 数据框的索引与截取 98
4.3.3 数据框的排序 100
4.3.4 数据框的更改 102
4.4 数据框之间的操作 105
4.4.1 生成两个新的数据框 105
4.4.2 函数concat的运用 106
4.4.3 函数merge的运用 108
4.4.4 函数join的运用 109
4.5 数组框的主要统计函数 109
4.5.1 静态的统计函数 110
4.5.2 移动窗口与动态统计函数 114
4.6 小结 117
4.7 拓展阅读 117
第5章 结合金融场景演示Matplotlib
模块的操作 118
5.1 基本函数 119
5.2 曲线图 122
5.2.1 单一曲线图 123
5.2.2 多图绘制 124
5.3 直方图 126
5.3.1 单一样本的直方图 126
5.3.2 多个样本的直方图 128
5.4 条形图 129
5.4.1 垂直条形图 130
5.4.2 水平条形图 132
5.5 散点图 133
5.6 饼图 136
5.7 小结 138
5.8 拓展阅读 138
第6章 结合金融场景演示SciPy等
模块的操作 139
6.1 SciPy模块 140
6.1.1 求积分 141
6.1.2 插值法 142
6.1.3 求解方程组 144
6.1.4 最优化求解 146
6.1.5 统计功能 150
6.2 StatsModels模块 156
6.3 波动率模型与arch模块 159
6.3.1 估计波动率 159
6.3.2 ARCH模型 160
6.3.3 GARCH模型 161
6.3.4 arch模块 163
6.4 datetime模块 167
6.4.1 创建时间的对象 168
6.4.2 访问时间对象的属性 169
6.4.3 时间对象的运算 169
6.5 小结 171
6.6 拓展阅读 171
第3部分 提高篇
第7章 运用Python分析利率与债券 174
7.1 利率体系 175
7.1.1 中央银行利率 175
7.1.2 金融机构利率 177
7.1.3 金融市场利率 179
7.2 债券市场 182
7.2.1 债券交易场所 183
7.2.2 债券品种 185
7.3 利率的度量 188
7.3.1 利率的复利频次 189
7.3.2 连续复利 192
7.3.3 零息利率 194
7.4 债券定价与债券收益率 195
7.4.1 债券的核心要素 195
7.4.2 基于单一贴现率的债券定价 195
7.4.3 债券到期收益率 196
7.4.4 基于不同期限贴现率的债券
定价 197
7.4.5 通过票息剥离法计算零息
利率 198
7.4.6 运用零息利率对债券定价 203
7.5 远期利率与远期利率协议 204
7.5.1 远期利率 204
7.5.2 远期利率协议 207
7.6 衡量债券利率风险的线性指标—
久期 211
7.6.1 麦考利久期 212
7.6.2 修正久期 214
7.6.3 美元久期 217
7.7 衡量债券利率风险的非线性
指标—凸性 218
7.7.1 凸性的表达式 219
7.7.2 案例 219
7.7.3 重要关系式 220
7.8 小结 221
7.9 拓展阅读 221
第8章 运用Python分析股票投资 222
8.1 股票市场简介 223
8.1.1 多层次股票市场 223
8.1.2 主要的股票指数 225
8.2 股票投资组合 228
8.2.1 投资组合的主要变量 229
8.2.2 投资组合的有效前沿 235
8.2.3 资本市场线 239
8.3 资本资产定价模型 241
8.3.1 系统风险与非系统风险 241
8.3.2 模型数学表达式及运用 245
8.4 股价服从的随机过程 249
8.4.1 马尔可夫过程与有效市场假说 249
8.4.2 维纳过程与广义维纳过程 251
8.4.3 几何布朗运动 253
8.5 投资组合的绩效评估 259
8.5.1 夏普比率 259
8.5.2 索提诺比率 262
8.5.3 特雷诺比率 264
8.5.4 信息比率 266
8.6 小结 268
8.7 拓展阅读 269
第9章 运用Python分析期货套期
保值 270
9.1 期货市场的简介 271
9.1.1 期货交易所及合约品种 271
9.1.2 股指期货合约的介绍 275
9.1.3 国债期货合约的介绍 277
9.1.4 参与期货交易的动机 279
9.2 股指期货的套期保值 280
9.2.1 套期保值的类型 280
9.2.2 追加保证金的风险 282
9.2.3 基差风险 285
9.2.4 交叉套期保值 289
9.3 国债期货合约的套期保值 297
9.3.1 计息天数规则 298
9.3.2 国债的报价 300
9.3.3 国债期货最终价格 301
9.3.4 国债期货的最廉价交割 304
9.3.5 基于久期的套期保值策略 307
9.4 小结 310
9.5 拓展阅读 310
第 10章 运用Python分析期权的
定价与风险 311
10.1 A股股票期权市场简介 312
10.1.1 权证市场 312
10.1.2 股指期权合约 313
10.2 期权类型和到期时的盈亏 315
10.2.1 期权的类型和要素 315
10.2.2 看涨期权到期时的盈亏 316
10.2.3 看跌期权到期时的盈亏 318
10.2.4 看跌-看涨平价关系式 320
10.3 布莱克-斯科尔斯-默顿模型 323
10.4 期权价格与相关变量的关系 325
10.4.1 期权价格与基础资产价格的
关系 325
10.4.2 期权价格与执行价格的关系 326
10.4.3 期权价格与波动率的关系 327
10.4.4 期权价格与无风险收益率的
关系 328
10.4.5 期权价格与期权期限的关系 330
10.5 衡量期权的风险—希腊字母 331
10.5.1 期权的Delta 331
10.5.2 期权的Gamma 335
10.5.3 期权的Theta 339
10.5.4 期权的Vega 343
10.5.5 期权的Rho 347
10.6 期权的隐含波动率 351
10.6.1 运用牛顿迭代法计算隐含
波动率 351
10.6.2 运用二分查找法计算隐含
波动率 353
10.7 波动率微笑与斜偏 355
10.7.1 波动率微笑 355
10.7.2 波动率斜偏 358
10.8 小结 362
10.9 拓展阅读 362
第 11章 运用Python分析期权交易
策略 363
11.1 保本票据 364
11.1.1 一个虚拟的案例 364
11.1.2 一个真实市场的案例 366
11.2 单一期权与单一基础资产的策略 368
11.2.1 买入备兑看涨期权 369
11.2.2 卖出备兑看涨期权 371
11.2.3 买入保护看跌期权 373
11.2.4 卖出保护看跌期权 375
11.2.5 策略的期间收益 377
11.3 价差交易策略 381
11.3.1 牛市价差策略 381
11.3.2 熊市价差策略 385
11.3.3 盒式价差策略 389
11.3.4 蝶式价差策略 392
11.4 组合策略 397
11.4.1 跨式组合策略 397
11.4.2 序列组合策略与带式组合
策略 401
11.4.3 宽跨式组合策略 404
11.5 小结 412
11.6 拓展阅读 412
第 12章 运用Python测度风险价值 413
12.1 风险价值的概述 414
12.1.1 风险价值的定义 414
12.1.2 运用Python对风险价值
可视化 415
12.1.3 风险价值的优点与局限性 417
12.2 风险价值的方差-协方差法 418
12.2.1 方差-协方差法的简介 418
12.2.2 案例 420
12.3 风险价值的历史模拟法 423
12.3.1 历史模拟法的简介 423
12.3.2 案例 425
12.4 蒙特卡罗模拟法 428
12.4.1 蒙特卡罗模拟的简介 428
12.4.2 案例 430
12.5 回溯检验、压力测试与压力风险
价值 434
12.5.1 回溯检验 434
12.5.2 压力测试 437
12.5.3 压力风险价值 439
12.5.4 比较不同方法计算的风险
价值 443
12.6 小结 443
12.7 扩展阅读 443
后记 445
第 1章 Python概览 2
1.1 Python的定义与比较优势 3
1.1.1 Python简介 3
1.1.2 Python的比较优势 4
1.2 Python之父—吉多·范罗苏姆 5
1.3 Python的演进历史和常用版本 7
1.4 Python的安装 8
1.4.1 单独安装 8
1.4.2 集成安装 8
1.4.3 安装并启动Anaconda 9
1.4.4 Spyder的界面 12
1.5 学习Python的方法论 13
1.5.1 学习的态度 13
1.5.2 学习的原则 13
1.5.3 学习的方法 14
1.6 金融数据的获取 15
1.6.1 万得(Wind) 15
1.6.2 同花顺 15
1.6.3 CCER经济金融数据库 15
1.6.4 国泰安经济金融研究数据库 16
1.7 小结 16
1.8 拓展阅读 16
第 2章 结合金融演示Python的基本
操作 17
2.1 金融变量在Python中的赋值 18
2.2 Python的数据类型 18
2.2.1 整型 19
2.2.2 浮点型 19
2.2.3 复数 20
2.2.4 字符串 20
2.3 Python的数据结构 23
2.3.1 元组 23
2.3.2 列表 25
2.3.3 集合 28
2.3.4 字典 30
2.4 Python的运算符号 33
2.4.1 基本算术运算符号 33
2.4.2 关系运算符号 36
2.4.3 赋值运算符号 37
2.4.4 成员运算符号 38
2.5 Python的主要内置函数 39
2.6 自定义函数 43
2.6.1 运用def语法 43
2.6.2 运用lambda函数 44
2.7 Python的语句 44
2.7.1 条件语句 44
2.7.2 循环语句 46
2.7.3 条件语句和循环语句结合 48
2.8 模块的导入与math模块 49
2.8.1 模块导入的若干种方法 50
2.8.2 math模块 51
2.9 小结 53
2.10 拓展阅读 53
第 2部分 基础篇
第3章 结合金融场景演示NumPy
模块的操作 56
3.1 从一个投资案例讲起 57
3.2 N维数组 58
3.2.1 数组的结构 58
3.2.2 数组的便捷生成 60
3.3 数组的索引、切片和排序 63
3.3.1 索引 63
3.3.2 切片 64
3.3.3 排序 64
3.4 数组的相关运算 65
3.4.1 数组内的运算 65
3.4.2 数组间的运算 69
3.4.3 矩阵的操作 72
3.5 通过NumPy生成随机数 74
3.5.1 主要的统计分布 74
3.5.2 主要函数 80
3.5.3 相关示例 82
3.6 小结 85
3.7 拓展阅读 86
第4章 结合金融时间序列演示Pandas
模块的操作 87
4.1 Pandas的数据结构 88
4.1.1 序列 88
4.1.2 数据框 90
4.1.3 外部数据导入并直接生成
数据框 91
4.2 数组框的可视化 93
4.2.1 中文字体的可视化 93
4.2.2 数据框可视化的函数与参数 94
4.2.3 一个示例 95
4.3 数据框内部的操作 96
4.3.1 描述数据框的基本性质 96
4.3.2 数据框的索引与截取 98
4.3.3 数据框的排序 100
4.3.4 数据框的更改 102
4.4 数据框之间的操作 105
4.4.1 生成两个新的数据框 105
4.4.2 函数concat的运用 106
4.4.3 函数merge的运用 108
4.4.4 函数join的运用 109
4.5 数组框的主要统计函数 109
4.5.1 静态的统计函数 110
4.5.2 移动窗口与动态统计函数 114
4.6 小结 117
4.7 拓展阅读 117
第5章 结合金融场景演示Matplotlib
模块的操作 118
5.1 基本函数 119
5.2 曲线图 122
5.2.1 单一曲线图 123
5.2.2 多图绘制 124
5.3 直方图 126
5.3.1 单一样本的直方图 126
5.3.2 多个样本的直方图 128
5.4 条形图 129
5.4.1 垂直条形图 130
5.4.2 水平条形图 132
5.5 散点图 133
5.6 饼图 136
5.7 小结 138
5.8 拓展阅读 138
第6章 结合金融场景演示SciPy等
模块的操作 139
6.1 SciPy模块 140
6.1.1 求积分 141
6.1.2 插值法 142
6.1.3 求解方程组 144
6.1.4 最优化求解 146
6.1.5 统计功能 150
6.2 StatsModels模块 156
6.3 波动率模型与arch模块 159
6.3.1 估计波动率 159
6.3.2 ARCH模型 160
6.3.3 GARCH模型 161
6.3.4 arch模块 163
6.4 datetime模块 167
6.4.1 创建时间的对象 168
6.4.2 访问时间对象的属性 169
6.4.3 时间对象的运算 169
6.5 小结 171
6.6 拓展阅读 171
第3部分 提高篇
第7章 运用Python分析利率与债券 174
7.1 利率体系 175
7.1.1 中央银行利率 175
7.1.2 金融机构利率 177
7.1.3 金融市场利率 179
7.2 债券市场 182
7.2.1 债券交易场所 183
7.2.2 债券品种 185
7.3 利率的度量 188
7.3.1 利率的复利频次 189
7.3.2 连续复利 192
7.3.3 零息利率 194
7.4 债券定价与债券收益率 195
7.4.1 债券的核心要素 195
7.4.2 基于单一贴现率的债券定价 195
7.4.3 债券到期收益率 196
7.4.4 基于不同期限贴现率的债券
定价 197
7.4.5 通过票息剥离法计算零息
利率 198
7.4.6 运用零息利率对债券定价 203
7.5 远期利率与远期利率协议 204
7.5.1 远期利率 204
7.5.2 远期利率协议 207
7.6 衡量债券利率风险的线性指标—
久期 211
7.6.1 麦考利久期 212
7.6.2 修正久期 214
7.6.3 美元久期 217
7.7 衡量债券利率风险的非线性
指标—凸性 218
7.7.1 凸性的表达式 219
7.7.2 案例 219
7.7.3 重要关系式 220
7.8 小结 221
7.9 拓展阅读 221
第8章 运用Python分析股票投资 222
8.1 股票市场简介 223
8.1.1 多层次股票市场 223
8.1.2 主要的股票指数 225
8.2 股票投资组合 228
8.2.1 投资组合的主要变量 229
8.2.2 投资组合的有效前沿 235
8.2.3 资本市场线 239
8.3 资本资产定价模型 241
8.3.1 系统风险与非系统风险 241
8.3.2 模型数学表达式及运用 245
8.4 股价服从的随机过程 249
8.4.1 马尔可夫过程与有效市场假说 249
8.4.2 维纳过程与广义维纳过程 251
8.4.3 几何布朗运动 253
8.5 投资组合的绩效评估 259
8.5.1 夏普比率 259
8.5.2 索提诺比率 262
8.5.3 特雷诺比率 264
8.5.4 信息比率 266
8.6 小结 268
8.7 拓展阅读 269
第9章 运用Python分析期货套期
保值 270
9.1 期货市场的简介 271
9.1.1 期货交易所及合约品种 271
9.1.2 股指期货合约的介绍 275
9.1.3 国债期货合约的介绍 277
9.1.4 参与期货交易的动机 279
9.2 股指期货的套期保值 280
9.2.1 套期保值的类型 280
9.2.2 追加保证金的风险 282
9.2.3 基差风险 285
9.2.4 交叉套期保值 289
9.3 国债期货合约的套期保值 297
9.3.1 计息天数规则 298
9.3.2 国债的报价 300
9.3.3 国债期货最终价格 301
9.3.4 国债期货的最廉价交割 304
9.3.5 基于久期的套期保值策略 307
9.4 小结 310
9.5 拓展阅读 310
第 10章 运用Python分析期权的
定价与风险 311
10.1 A股股票期权市场简介 312
10.1.1 权证市场 312
10.1.2 股指期权合约 313
10.2 期权类型和到期时的盈亏 315
10.2.1 期权的类型和要素 315
10.2.2 看涨期权到期时的盈亏 316
10.2.3 看跌期权到期时的盈亏 318
10.2.4 看跌-看涨平价关系式 320
10.3 布莱克-斯科尔斯-默顿模型 323
10.4 期权价格与相关变量的关系 325
10.4.1 期权价格与基础资产价格的
关系 325
10.4.2 期权价格与执行价格的关系 326
10.4.3 期权价格与波动率的关系 327
10.4.4 期权价格与无风险收益率的
关系 328
10.4.5 期权价格与期权期限的关系 330
10.5 衡量期权的风险—希腊字母 331
10.5.1 期权的Delta 331
10.5.2 期权的Gamma 335
10.5.3 期权的Theta 339
10.5.4 期权的Vega 343
10.5.5 期权的Rho 347
10.6 期权的隐含波动率 351
10.6.1 运用牛顿迭代法计算隐含
波动率 351
10.6.2 运用二分查找法计算隐含
波动率 353
10.7 波动率微笑与斜偏 355
10.7.1 波动率微笑 355
10.7.2 波动率斜偏 358
10.8 小结 362
10.9 拓展阅读 362
第 11章 运用Python分析期权交易
策略 363
11.1 保本票据 364
11.1.1 一个虚拟的案例 364
11.1.2 一个真实市场的案例 366
11.2 单一期权与单一基础资产的策略 368
11.2.1 买入备兑看涨期权 369
11.2.2 卖出备兑看涨期权 371
11.2.3 买入保护看跌期权 373
11.2.4 卖出保护看跌期权 375
11.2.5 策略的期间收益 377
11.3 价差交易策略 381
11.3.1 牛市价差策略 381
11.3.2 熊市价差策略 385
11.3.3 盒式价差策略 389
11.3.4 蝶式价差策略 392
11.4 组合策略 397
11.4.1 跨式组合策略 397
11.4.2 序列组合策略与带式组合
策略 401
11.4.3 宽跨式组合策略 404
11.5 小结 412
11.6 拓展阅读 412
第 12章 运用Python测度风险价值 413
12.1 风险价值的概述 414
12.1.1 风险价值的定义 414
12.1.2 运用Python对风险价值
可视化 415
12.1.3 风险价值的优点与局限性 417
12.2 风险价值的方差-协方差法 418
12.2.1 方差-协方差法的简介 418
12.2.2 案例 420
12.3 风险价值的历史模拟法 423
12.3.1 历史模拟法的简介 423
12.3.2 案例 425
12.4 蒙特卡罗模拟法 428
12.4.1 蒙特卡罗模拟的简介 428
12.4.2 案例 430
12.5 回溯检验、压力测试与压力风险
价值 434
12.5.1 回溯检验 434
12.5.2 压力测试 437
12.5.3 压力风险价值 439
12.5.4 比较不同方法计算的风险
价值 443
12.6 小结 443
12.7 扩展阅读 443
后记 445
猜您喜欢