金融与python-基于Python的金融分析与风险管理

金融科技时代已经到来,善于将金融理论与IT技术进行深度融合的人,将成为新时代独具竞争力的金融科技类人才。无论是打算在金融领域求职的新人,还是希望进一步提升个人能力的“职场老手”,本书都值得一看。

1.内容前沿,将Python编程与金融分析、风险管理巧妙结合,引领金融科技新时代。

2.源于实践,完美整合了作者20余年的金融从业经验和Python编程实践。

3.实例丰富,提供244个金融实战案例,彰显Python在金融领域运用的简洁与高效。

4.注重效率,清晰的编程步骤和详尽的代码注释,帮你轻松理解并掌握Python编程。

5.覆盖面广,案例涵盖货币市场、债券市场、股票市场、期货市场和期权市场。

6.聚焦风控,深度剖析各类金融产品的风险,讨论风险管理的重要工具和量化模型。

Python是一门开源的编程语言,凭借其易学和灵活的特点,得到了越来越多人的认可和青睐。它在金融领域也有着很好好的应用现状和前景。

本书聚焦于Python在金融分析与风险管理的应用,全书分为入门篇、基础篇和提高篇,共12章。入门篇对Python做了介绍并结合金融场景演示了Python的基本操作;基础篇结合金融场景,讲解NumPy、Pandas、Matplotlib、SciPy等Python模块的具体运用;提高篇详细讨论运用Python分析利率、债券、股票、期货、期权以及风险价值等内容。

本书是专注于Python在金融领域运用的普及性读物,作者斯文博士在金融与风险管理方面有着深厚的积累,同时也有着丰富的编程经验,一直致力于倡导和推广Python在金融领域的运用。

本书适合想要掌握Python应用的金融学习者、金融从业者阅读,也适合想要转行到金融领域的程序员以及对Python在金融领域的实践应用感兴趣的人士阅读,并且不要求读者有Python编程基础。

斯文,笔名“华尔街先生”,浙江湖州人,经济学博士,中国注册会计师(Certified Public Accountant,CPA),特许金融分析师(Chartered Finan Analyst,CFA),金融风险管理师(Finan 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

你可能感兴趣的:(金融与python-基于Python的金融分析与风险管理)