金融科技系列 Python金融实战案例精粹
作者:斯文 著
出版时间:2020年版
内容简介
随着金融科技时代的到来,Python在金融领域的影响力已经有目共睹。掌握Python在金融实务中的应用,已经成为金融科技达人们必备的技能之一。本书作为《基于Python的金融分析与风险管理》一书的配套案例集,整合了源于现实金融市场和日常实务工作的88个原创案例,涉及308项编程任务,包括超过6000行的Python代码。本书囊括了丰富多样的金融场景,涵盖利率、汇率、债券、股票、基金、远期、股指期货、外汇期货、国债期货、股票期权、商品期权等金融产品,还涉及商业银行、证券公司、期货公司、保险公司、信托公司、资产管理公司、基金管理公司、金融控股公司等各类型的金融机构,既介绍了包括我国在内的新兴市场,又介绍了欧美成熟的金融市场,囊括金融实务中可能涉及Python编程的各种场景。 本书着眼于一系列从业者可能涉及的金融实务案例,并结合Python编程给出了高效的解决方案。通过阅读本书,读者能够全方位地了解金融市场的运作,深刻洞察各类职务背后的工作技巧。
目录
第 1章 Python基础编程的金融案例 1
1.1 数据结构之元组—以科创板股票为分析对象 2
1.2 数据结构之列表—以全球股票指数为分析对象 6
1.3 数据结构之集合—以股票类型为分析对象 10
1.4 数据结构之字典—以人民币汇率为分析对象 13
1.5 基本算术运算—以交通银行股票为分析对象 16
1.6 高级赋值运算与成员运算—以中国平安股票为分析对象 19
1.7 关系运算—以四大国有银行的财务指标为分析对象 22
1.8 Python内置函数—以券商股为分析对象 25
1.9 Python自定义函数和for语句—以市场利率为分析对象 29
1.10 条件语句和循环语句—以全球重要股指为分析对象 32
1.11 math模块—以保险理赔为分析对象 36
1.12 本章小结 39
第 2章 NumPy模块编程的金融案例 40
2.1 创建N维数组—以美国纳斯达克的科技股为分析对象 41
2.2 数组索引和切片—以互联网公司发行的港股为分析对象 45
2.3 数组内部运算(一)—以保险公司股票为分析对象 48
2.4 数组内部运算(二)—以A股指数为分析对象 52
2.5 数组间运算—以中资银行股为分析对象 55
2.6 矩阵运算(一)—以全球主要股指为分析对象 59
2.7 矩阵运算(二)—以科创板股票为分析对象 64
2.8 二项分布与几何分布随机抽样—以保险业务为分析对象 68
2.9 正态分布和对数正态分布随机抽样—以石油公司股票为分析对象 72
2.10 伽玛分布和贝塔分布随机抽样—以债券违约率与回收率为分析对象 77
2.11 本章小结 82
第3章 Pandas模块编程的金融案例 83
3.1 创建序列和数据框—以开放式基金为分析对象 84
3.2 导入外部数据文件和导出生成数据文件—以Shibor利率为分析对象 88
3.3 数据框可视化—以上证50指数为分析对象 92
3.4 数据框检索—以沪港通股票为分析对象 98
3.5 数据框缺失值处理—以金砖四国的股票指数为分析对象 102
3.6 数据框拼接—以纽交所上市的央企股票为分析对象 106
3.7 Pandas模块的统计功能(一)—以QDII基金为分析对象 111
3.8 Pandas模块的统计功能(二)—以全球大型银行股票为分析对象 116
3.9 Pandas模块的统计功能(三)—以创业板股票为分析对象 121
3.10 移动窗口与动态统计—以全球主要股指为分析对象 128
3.11 本章小结 133
第4章 Matplotlib模块编程的金融案例 134
4.1 绘制曲线图—以住房按揭贷款为分析对象 135
4.2 绘制垂直条状图和双轴图—以货币政策为分析对象 140
4.3 绘制K线图—以上证综指与深证成指为分析对象 145
4.4 绘制直方图—以同时发行A股和美股的公司股票为分析对象 152
4.5 绘制条形图—以全球主要股指为分析对象 158
4.6 绘制雷达图—以四大国有银行的财务监管指标为分析对象 162
4.7 绘制散点图—以A股和港股的股指为分析对象 167
4.8 绘制饼图—以社会融资规模的结构为分析对象 172
4.9 本章小结 177
第5章 SciPy等模块编程的金融案例 178
5.1 用SciPy模块运算积分—以上市的车企股票为分析对象 179
5.2 用SciPy模块计算插值—以Shibor利率为分析对象 184
5.3 用SciPy模块求解方程组—以中小板股票为分析对象 190
5.4 用SciPy模块求解最优值—以投资者效用为分析对象 193
5.5 SciPy模块的统计功能—以Hibor和Shibor利率为分析对象 198
5.6 用SciPy模块开展随机抽样与统计—以美国金融变量为分析对象 202
5.7 用StatsModels模块构建回归模型—以中国石油股票为分析对象 207
5.8 用arch模块构建波动率模型—以全球主要股指为分析对象 212
5.9 用datetime模块处理时间对象—以银行理财产品为分析对象 220
5.10 本章小结 223
第6章 用Python分析利率与债券的案例 224
6.1 计算不同复利频次的利息—以定期存款为分析对象 225
6.2 基于单一贴现率的债券定价—以国债为分析对象 229
6.3 基于票息剥离法计算零息利率曲线—以国债利率为分析对象 233
6.4 基于不同期限零息利率的债券定价—以金融债和地方债为分析对象 238
6.5 远期利率—以国债为分析对象 241
6.6 远期利率协议现金流—以Libor远期利率协议为分析对象 246
6.7 远期利率协议定价—以Shibor远期利率协议为分析对象 250
6.8 债券麦考利久期—以利率债为分析对象 254
6.9 债券修正久期和美元久期—以央企债券为分析对象 260
6.10 债券凸性—以地方政府债为分析对象 264
6.11 本章小结 270
第7章 用Python分析股票投资的案例 271
7.1 投资组合收益率和波动率—以金融股为分析对象 272
7.2 最优投资组合—以道琼斯指数成分股为分析对象 278
7.3 资本资产定价模型(一)—以交通银行A股为分析对象 283
7.4 资本资产定价模型(二)—以美股为分析对象 290
7.5 服从几何布朗运动的股价模拟—以互联网公司股票为分析对象 296
7.6 A股与H股套利策略—以招商银行股票为分析对象 303
7.7 投资组合绩效评估(一)—以公募基金为分析对象 309
7.8 投资组合绩效评估(二)—以QDII基金为分析对象 316
7.9 本章小结 321
第8章 用Python分析期货套期保值的案例 322
8.1 期货空头套期保值—以上证50指数期货为分析对象 323
8.2 期货多头套期保值—以美元兑人民币期货合约为分析对象 328
8.3 最优套保比率和最优合约数量—以A股股指期货为分析对象 333
8.4 国债期货可交割债券转换因子—以国债为分析对象 341
8.5 国债期货最廉价交割债券—以国债期货TS1906合约为分析对象 346
8.6 基于久期的套期保值策略—以债券和国债期货为分析对象 351
8.7 本章小结 360
第9章 用Python分析期权交易的案例 361
9.1 期权定价与到期盈亏—以腾讯公司股票期权为分析对象 362
9.2 期权希腊字母—以2只上证50ETF期权合约为分析对象 368
9.3 期权对冲策略—以50ETF沽6月2050期权为分析对象 373
9.4 期权隐含波动率—以3只上证50ETF期权为分析对象 379
9.5 单一期权与基础资产交易策略—以50ETF期权和基金为分析对象 385
9.6 期权牛市价差策略—以阴极铜期权为分析对象 391
9.7 期权熊市价差策略—以天然橡胶期权为分析对象 396
9.8 期权盒式价差策略—以4只上证50ETF期权为分析对象 402
9.9 期权蝶式价差策略—以豆粕期权为分析对象 406
9.10 跨式组合与宽跨式组合策略—以白糖期权为分析对象 412
9.11 本章小结 419
第 10章 用Python测度风险价值的案例 420
10.1 方差-协方差法—以公募基金重仓股为分析对象 421
10.2 历史模拟法—以社保基金重仓股为分析对象 427
10.3 蒙特卡洛模拟法—以QFII重仓股为分析对象 431
10.4 风险价值模型合理性检验—以保险资金重仓股为分析对象 437
10.5 投资组合压力测试—以蓝筹股和国债为分析对象 442
10.6 压力风险价值—以伯克希尔 哈撒韦公司重仓股为分析对象 448
10.7 本章小结 456