Python 金融大数据分析(第2版)
Yves Hilpisch
姚军 译
出版时间:2020年04月
页数:648
“Python因其易于理解的语法、与C/C++的轻松集成和多种数值计算工具,成为了金融分析的极佳选择。它正在快速替代主流金融机构使用的语言与工具,并成为事实上的标准。”
——Kirat Singh
Beacon Platform公司联合创始人兼CEO
Python已成为数据驱动、AI、金融优先选择的编程语言。现在,一些大 型的投资银行和对冲基金均使用Python及其相关技术来构建核心交易与风险管理系统。在本书中,作者向开发人员和量化分析人员介绍了使用 Python程序库与工具,完成金融数据科学、算法交易和计算金融任务的方法。
本书的多数代码已针对Python 3做了更新,为读者提供了书中使用的几乎所有示例的可执行、交互版本。本书包括以下5个方面的内容,你可以从中了解Python及其相关技术是如何为金融公司及从业者提供技术框架的。
● Python和金融:Python交互式金融分析与程序开发入门。
● 基础知识:学习Python数据类型与结构、NumPy、pandas及其DataFrame类、面向对象编程。
● 金融数据科学:探索用于金融时间序列数据、I/O操作、推断统计学和机器学习的Python技术与程序库。
● 算法交易:使用Python来验证和部署自动算法交易策略。
● 衍生品分析:开发灵活且强大的Python期权、衍生品定价和风险管理程序库。
  1. 第1部分 Python与金融
  2. 第1章 为什么将Python用于金融 
  3. 1.1 Python编程语言 
  4. 1.1.1 Python简史 
  5. 1.1.2 Python生态系统 
  6. 1.1.3 Python用户谱系 
  7. 1.1.4 科学栈 
  8. 1.2 金融中的科技
  9. 1.2.1 科技投入 
  10. 1.2.2 作为业务引擎的科技 
  11. 1.2.3 作为进入门槛的科技和人才 
  12. 1.2.4 不断提高的速度、频率和数据量 
  13. 1.2.5 实时分析的兴起 
  14. 1.3 用于金融的Python 
  15. 1.3.1 金融和Python语法 
  16. 1.3.2 Python的效率和生产率 
  17. 1.3.3 从原型化到生产 
  18. 1.4 数据驱动和人工智能优先的金融学 
  19. 1.4.1 数据驱动金融学 
  20. 1.4.2 人工智能优先金融学 
  21. 1.5 结语 
  22. 1.6 延伸阅读 
  23. 第2章 Python基础架构 
  24. 2.1 作为包管理器使用的conda 
  25. 2.1.1 安装Miniconda 
  26. 2.1.2 conda基本操作 
  27. 2.2 作为虚拟环境管理器的conda 
  28. 2.3 使用Docker容器 
  29. 2.3.1 Docker镜像和容器 
  30. 2.3.2 构建Ubuntu和Python Docker镜像 
  31. 2.4 使用云实例 
  32. 2.4.1 RSA公钥和私钥 
  33. 2.4.2 Jupyter Notebook配置文件 
  34. 2.4.3 Python和Jupyter Notebook安装脚本 
  35. 2.4.4 协调Droplet设置的脚本 
  36. 2.5 结语 
  37. 2.6 延伸阅读 
  38. 第2部分 掌握基础知识
  39. 第3章 数据类型与结构 
  40. 3.1 基本数据类型 
  41. 3.1.1 整数 
  42. 3.1.2 浮点数 
  43. 3.1.3 布尔值 
  44. 3.1.4 字符串 
  45. 3.1.5 题外话:打印和字符串替换 
  46. 3.1.6 题外话:正则表达式 
  47. 3.2 基本数据结构 
  48. 3.2.1 元组 
  49. 3.2.2 列表 
  50. 3.2.3 题外话:控制结构 
  51. 3.2.4 题外话:函数式编程 
  52. 3.2.5 字典 
  53. 3.2.6 集合 
  54. 3.3 结语 
  55. 3.4 延伸阅读 
  56. 第4章 用NumPy进行数值计算 
  57. 4.1 数据数组 
  58. 4.1.1 用Python列表形成数组 
  59. 4.1.2 Python array类 
  60. 4.2 常规NumPy数组 
  61. 4.2.1 基础知识 
  62. 4.2.2 多维数组 
  63. 4.2.3 元信息 
  64. 4.2.4 改变组成与大小 
  65. 4.2.5 布尔数组 
  66. 4.2.6 速度对比 
  67. 4.3 NumPy结构数组 
  68. 4.4 代码向量化 
  69. 4.4.1 基本向量化 
  70. 4.4.2 内存布局 
  71. 4.5 结语 
  72. 4.6 延伸阅读 
  73. 第5章 pandas数据分析 
  74. 5.1 DataFrame类 
  75. 5.1.1 使用DataFrame类的第 一步 
  76. 5.1.2 使用DataFrame类的第二步 
  77. 5.2 基本分析 
  78. 5.3 基本可视化 
  79. 5.4 Series类 
  80. 5.5 GroupBy操作 
  81. 5.6 复杂选择 
  82. 5.7 联接、连接和合并 
  83. 5.7.1 联接 
  84. 5.7.2 连接 
  85. 5.7.3 合并 
  86. 5.8 性能特征 
  87. 5.9 结语 
  88. 5.10 延伸阅读 
  89. 第6章 面向对象编程 
  90. 6.1 Python对象简介 
  91. 6.1.1 int 
  92. 6.1.2 list 
  93. 6.1.3 ndarray 
  94. 6.1.4 DataFrame 
  95. 6.2 Python类基础知识 
  96. 6.3 Python数据模型 
  97. 6.4 Vector类 
  98. 6.5 结语 
  99. 6.6 延伸阅读 
  100. 第3部分 金融数据科学
  101. 第7章 数据可视化 
  102. 7.1 静态2D绘图 
  103. 7.1.1 一维数据集 
  104. 7.1.2 二维数据集 
  105. 7.1.3 其他绘图样式 
  106. 7.2 静态3D绘图 
  107. 7.3 交互式2D绘图 
  108. 7.3.1 基本图表 
  109. 7.3.2 金融图表 
  110. 7.4 结语 
  111. 7.5 延伸阅读 
  112. 第8章 金融时间序列 
  113. 8.1 金融数据 
  114. 8.1.1 数据导入 
  115. 8.1.2 汇总统计 
  116. 8.1.3 随时间推移的变化 
  117. 8.1.4 重新采样 
  118. 8.2 滚动统计 
  119. 8.2.1 概述 
  120. 8.2.2 技术分析示例 
  121. 8.3 相关分析 
  122. 8.3.1 数据 
  123. 8.3.2 对数回报率 
  124. 8.3.3 OLS回归 
  125. 8.3.4 相关 
  126. 8.4 高频数据 
  127. 8.5 结语 
  128. 8.6 延伸阅读 
  129. 第9章 输入/输出操作 
  130. 9.1 Python基本I/O 
  131. 9.1.1 将对象写入磁盘 
  132. 9.1.2 读取和写入文本文件 
  133. 9.1.3 使用SQL数据库 
  134. 9.1.4 读写NumPy数组 
  135. 9.2 pandas的I/O 
  136. 9.2.1 使用SQL数据库 
  137. 9.2.2 从SQL到pandas 
  138. 9.2.3 使用CSV文件 
  139. 9.2.4 使用Excel文件 
  140. 9.3 PyTables的I/O 
  141. 9.3.1 使用表 
  142. 9.3.2 使用压缩表 
  143. 9.3.3 使用数组 
  144. 9.3.4 内存外计算 
  145. 9.4 TsTables的I/O 
  146. 9.4.1 样板数据 
  147. 9.4.2 数据存储 
  148. 9.4.3 数据检索 
  149. 9.5 结语 
  150. 9.6 延伸阅读 
  151. 第10章 高性能的Python 
  152. 10.1 循环 
  153. 10.1.1 Python 
  154. 10.1.2 NumPy 
  155. 10.1.3 Numba 
  156. 10.1.4 Cython 
  157. 10.2 算法 
  158. 10.2.1 质数 
  159. 10.2.2 斐波那契数 
  160. 10.2.3 π 
  161. 10.3 二叉树 
  162. 10.3.1 Python 
  163. 10.3.2 NumPy 
  164. 10.3.3 Numba 
  165. 10.3.4 Cython 
  166. 10.4 蒙特卡洛模拟 
  167. 10.4.1 Python 
  168. 10.4.2 NumPy 
  169. 10.4.3 Numba 
  170. 10.4.4 Cython 
  171. 10.4.5 多进程 
  172. 10.5 pandas递归算法 
  173. 10.5.1 Python 
  174. 10.5.2 Numba 
  175. 10.5.3 Cython 
  176. 10.6 结语 
  177. 10.7 延伸阅读 
  178. 第11章 数学工具 
  179. 11.1 逼近法 
  180. 11.1.1 回归 
  181. 11.1.2 插值 
  182. 11.2 凸优化 
  183. 11.2.1 全局优化 
  184. 11.2.2 局部优化 
  185. 11.2.3 有约束优化 
  186. 11.3 积分 
  187. 11.3.1 数值积分 
  188. 11.3.2 通过模拟求取积分 
  189. 11.4 符号计算 
  190. 11.4.1 基础知识 
  191. 11.4.2 方程式 
  192. 11.4.3 积分与微分 
  193. 11.4.4 微分 
  194. 11.5 结语 
  195. 11.6 延伸阅读 
  196. 第12章 推断统计学 
  197. 12.1 随机数 
  198. 12.2 模拟 
  199. 12.2.1 随机变量 
  200. 12.2.2 随机过程 
  201. 12.2.3 方差缩减 
  202. 12.3 估值 
  203. 12.3.1 欧式期权 
  204. 12.3.2 美式期权 
  205. 12.4 风险测度 
  206. 12.4.1 风险价值 
  207. 12.4.2 信用价值调整 
  208. 12.5 Python脚本 
  209. 12.6 结语 
  210. 12.7 延伸阅读 
  211. 第13章 统计学 
  212. 13.1 正态性检验 
  213. 13.1.1 基准案例 
  214. 13.1.2 真实数据 
  215. 13.2 投资组合优化 
  216. 13.2.1 数据 
  217. 13.2.2 基本理论 
  218. 13.2.3 最优投资组合 
  219. 13.2.4 有效边界 
  220. 13.2.5 资本市场线 
  221. 13.3 贝叶斯统计 
  222. 13.3.1 贝叶斯公式 
  223. 13.3.2 贝叶斯回归 
  224. 13.3.3 两种金融工具 
  225. 13.3.4 随时更新估算值 
  226. 13.4 机器学习 
  227. 13.4.1 无监督学习 
  228. 13.4.2 有监督学习 
  229. 13.5 结语 
  230. 13.6 延伸阅读 
  231. 第4部分 算法交易
  232. 第14章 FXCM交易平台 
  233. 14.1 入门 
  234. 14.2 读取数据 
  235. 14.2.1 读取分笔交易数据 
  236. 14.2.2 读取K线(蜡烛图)数据 
  237. 14.3 使用API 
  238. 14.3.1 读取历史数据 
  239. 14.3.2 读取流数据 
  240. 14.3.3 下单 
  241. 14.3.4 账户信息 
  242. 14.4 结语 
  243. 14.5 延伸阅读 
  244. 第15章 交易策略 
  245. 15.1 简单移动平均数 
  246. 15.1.1 数据导入 
  247. 15.1.2 交易策略 
  248. 15.1.3 向量化事后检验 
  249. 15.1.4 优化 
  250. 15.2 随机游走假设 
  251. 15.3 线性OLS回归 
  252. 15.3.1 数据 
  253. 15.3.2 回归 
  254. 15.4 聚类 
  255. 15.5 频率方法 
  256. 15.6 分类 
  257. 15.6.1 两个二元特征 
  258. 15.6.2 5个二元特征 
  259. 15.6.3 5个数字化特征 
  260. 15.6.4 顺序训练-测试分离 
  261. 15.6.5 随机训练-测试分离 
  262. 15.7 深度神经网络 
  263. 15.7.1 用scikit-learn实现DNN 
  264. 15.7.2 用TensorFlow实现DNN 
  265. 15.8 结语 
  266. 15.9 延伸阅读 
  267. 第16章 自动化交易 
  268. 16.1 资本管理 
  269. 16.1.1 二项设定中的凯利标准 
  270. 16.1.2 用于股票及指数的凯利标准 
  271. 16.2 基于ML的交易策略 
  272. 16.2.1 向量化事后检验 
  273. 16.2.2 最优杠杆 
  274. 16.2.3 风险分析 
  275. 16.2.4 持久化模型对象 
  276. 16.3 在线算法 
  277. 16.4 基础设施与部署 
  278. 16.5 日志与监控 
  279. 16.6 结语 
  280. 16.7 Python脚本 
  281. 16.7.1 自动化交易策略 
  282. 16.7.2 策略监控 
  283. 16.8 延伸阅读 
  284. 第5部分 衍生品分析
  285. 第17章 估值框架 
  286. 17.1 资产定价基本定理 
  287. 17.1.1 简单示例 
  288. 17.1.2 一般结果 
  289. 17.2 风险中立折现 
  290. 17.2.1 日期建模与处理 
  291. 17.2.2 恒定短期利率 
  292. 17.3 市场环境 
  293. 17.4 结语 
  294. 17.5 延伸阅读 
  295. 第18章 金融模型的模拟 
  296. 18.1 随机数生成 
  297. 18.2 通用模拟类 
  298. 18.3 几何布朗运动 
  299. 18.3.1 模拟类 
  300. 18.3.2 用例 
  301. 18.4 跳跃扩散 
  302. 18.4.1 模拟类 
  303. 18.4.2 用例 
  304. 18.5 平方根扩散 
  305. 18.5.1 模拟类 
  306. 18.5.2 用例 
  307. 18.6 结语 
  308. 18.7 延伸阅读 
  309. 第19章 衍生品估值 
  310. 19.1 通用估值类 
  311. 19.2 欧式行权 
  312. 19.2.1 估值类 
  313. 19.2.2 用例 
  314. 19.3 美式行权 
  315. 19.3.1 最小二乘蒙特卡洛方法 
  316. 19.3.2 估值类 
  317. 19.3.3 用例 
  318. 19.4 结语 
  319. 19.5 延伸阅读 
  320. 第20章 投资组合估值 
  321. 20.1 衍生品头寸 
  322. 20.1.1 类 
  323. 20.1.2 用例 
  324. 20.2 衍生品投资组合 
  325. 20.2.1 类 
  326. 20.2.2 用例 
  327. 20.3 结语 
  328. 20.4 延伸阅读 
  329. 第21章 基于市场的估值 
  330. 21.1 期权数据 
  331. 21.2 模型检验 
  332. 21.2.1 相关市场数据 
  333. 21.2.2 期权建模 
  334. 21.2.3 检验过程 
  335. 21.3 投资组合估值 
  336. 21.3.1 建立期权头寸模型 
  337. 21.3.2 期权投资组合 
  338. 21.4 Python代码 
  339. 21.5 结语 
  340. 21.6 延伸阅读 
  341. 附录A 日期与时间 
  342. A.1 Python 
  343. A.2 NumPy 
  344. A.3 pandas 
  345. 附录B BSM期权类 
  346. B.1 类定义 
  347. B.2 类的使用 
书名:Python 金融大数据分析(第2版)
作者:Yves Hilpisch
译者:姚军 译
国内出版社:人民邮电出版社
出版时间:2020年04月
页数:648
书号:978-7-115-52133-0
原版书书名:Python for Finance, Second Edition
原版书出版商:O'Reilly Media
Yves Hilpisch
 
Yves Hilpisch博士是Python Quants集团的创始人和管理合伙人。该集团致 力于应用开源技术来解决金融数据科学、人工智能、算法交易和计算金融 学等问题。他还是AI Machine公司的创始人和CEO,该公司的主营业务是通 过专属策略执行平台来发挥人工智能的威力。他还是Python算法交易大学 认证的在线培训项目的主管。
 
 
购买选项
定价:139.00元
书号:978-7-115-52133-0
出版社:人民邮电出版社