目录

  • 1 量化投资概论
    • 1.1 授课计划
    • 1.2 优秀结课论文分享
    • 1.3 量化鼻祖:西蒙斯
    • 1.4 量化投资的定义
    • 1.5 量化投资的特点
    • 1.6 量化投资的发展史
    • 1.7 量化投资的前景
    • 1.8 章节习题
  • 2 Python基础
    • 2.1 环境配置
    • 2.2 数据结构
    • 2.3 基本语句
    • 2.4 基本函数
    • 2.5 类与对象
    • 2.6 模块和包
    • 2.7 标准库
    • 2.8 Numpy库
    • 2.9 Pandas库
    • 2.10 Matplotlib库
    • 2.11 案例:金融数据分析之Pyhton实现
    • 2.12 章节习题
  • 3 统计学基础*
    • 3.1 统计函数库(自学)
    • 3.2 描述性统计
    • 3.3 随机变量
    • 3.4 统计推断
    • 3.5 方差分析
    • 3.6 回归分析
    • 3.7 章节习题
  • 4 金融学基础
    • 4.1 金融分析库(自学)
    • 4.2 资产收益率与风险
    • 4.3 投资组合理论
    • 4.4 资本资产定价模型
    • 4.5 Fama-French 因子模型
    • 4.6 章节习题
  • 5 金融时间序列分析*
    • 5.1 金融时间序列库(自学)
    • 5.2 基本概念
    • 5.3 基本性质
    • 5.4 金融时间序列预测
    • 5.5 波动率
    • 5.6 章节习题
  • 6 配对交易策略
    • 6.1 配对交易策略
    • 6.2 最小距离法之实战分析
    • 6.3 协整法之实战分析
    • 6.4 随机价差法之实战分析*
    • 6.5 章节习题
  • 7 技术指标策略
    • 7.1 技术指标库(自学)
    • 7.2 K线图
    • 7.3 KDJ 策略
    • 7.4 RSI 策略
    • 7.5 MACD 策略
    • 7.6 BOLL 策略
    • 7.7 DMI 策略
    • 7.8 CCI 策略
    • 7.9 MT 策略
    • 7.10 PTV 策略
    • 7.11 OBV 策略
    • 7.12 ROC 策略
    • 7.13 BIAS 策略
    • 7.14 其他技术指标策略
    • 7.15 章节习题
  • 8 机器学习在量化投资中的应用*
    • 8.1 机器学习库
    • 8.2 量化投资之逻辑回归算法模型
    • 8.3 量化投资之决策树算法模型
    • 8.4 量化投资之随机森林算法模型
    • 8.5 量化投资之支持向量机算法模型
    • 8.6 量化投资之集成算法模型
    • 8.7 量化投资之人工神经网络算法模型
    • 8.8 章节习题
  • 9 深度学习在量化投资中的应用**
    • 9.1 深度学习库
    • 9.2 量化投资之TensorFlow
    • 9.3 量化投资之PyTorch
    • 9.4 量化投资之MXNet
    • 9.5 章节习题
  • 10 附     录
    • 10.1 量化武器库大全
    • 10.2 2022年量化金融分析师全国统一考试考试大纲
深度学习库

9.1 深度学习库

基于三个指标:Github上的活跃度、Stack Overflow上的活跃度、谷歌搜索结果数量,给出23 个热门深度学习库的排名。

https://blog.csdn.net/UzV80PX5V412NE/article/details/78714380?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param

9.1.1 TensorFlow

TensorFlow最初于2015年发布,是一款开源 机器学习 框架,易于在各种平台上使用和部署。它是机器学习中维护得最好和广泛使用的框架之一。

谷歌为支持其研究和生产目标而创建,目前TensorFlow已被多家公司广泛使用,包括Dropbox,eBay,Intel,Twitter和Uber等。TensorFlow可用于Python,C ++,Haskell,Java,Go,Rust以及Java等。当然,还可以找到其他编程语言的第三方软件包。该框架允许你使用流程图开发神经网络,甚至是其他计算模型。

在线学习

安装方式:

9.1.2 PyTorch


在线学习:https://mofanpy.com/tutorials/machine-learning/torch/

(1)Torch

Torch 最初于2002年发布,它是一个机器学习库,提供广泛的 深度学习 算法。开源框架在处理机器学习项目时为你提供了优化的灵活性和速度,而不会在过程中造成不必要的复杂性。

它使用脚本语言Lua编写,并附带一个底层C实现。Torch的一些主要功能包括N维数组,线性代数例程,数值优化例程,高效GPU支持以及对iOS和Android平台的支持。

(2)PyTorch


PyTorch 是一个基于Python的科学计算包,其旨在服务两类场合:

  • 替代numpy发挥GPU潜能

  • 一个提供了高度灵活性和效率的深度学习实验性平台


(2.1)PyTorch安装




(2.2)PyTorch主要元素

  • PyTorch张量

张量只是多维数组。PyTorch中的张量类似于numpy的ndarrays,另外,张量也可以在GPU上使用。PyTorch支持各种类型的张量。

  • 数学运算

与numpy一样,科学计算库非常重要的一点是能够实现高效的数学功能。而PyTorch提供了一个类似的借口,可以使用200个以上的数学运算。

  • Autograd模块

PyTorch使用了一种叫做自动微分的技术。也就是说,它会有一个记录我们所有执行操作的记录器,之后再回放记录来计算我们的梯度。这一技术在构建神经网络时尤其有效,因为我们可以通过计算前路参数的微分来节省时间。

  • Optim模块

Torch.optim是一个实现各种优化算法的模块,用于构建神经网络。它支持大多数常用的方法,因此我们不必从头开始构建它们。

下面是使用Adam优化器的代码:

optimizer = torch.optim.Adam(model.parameters(), lr=learning_rate)

  • 神经网络模块

虽然PyTorch Autograd可以很容易的定义计算图形和使用梯度,但是对于定义复杂的神经网络来说可能有点太低级了。而这就需要神经网络模块来提供帮助。

nn包定义了一组模块,我们可以把它看作是一个神经网络层,它产生输入输出,并且可能有一些可训练的权重。

你可以把nn模块看作是PyTorch的内核!


9.1.3 Keras

Keras 是一个开源软件库,最初于2015年发布,旨在简化深度学习模型的创建。它用Python编写,可以部署在其他人工智能技术之上,如TensorFlow,微软Cognitive Toolkit(CNTK)和Theano。

Keras以其用户友好性,模块化和易扩展性而闻名。如果你需要一个机器学习库,可以实现简单快速的原型设计,同时支持卷积网络和循环神经网络,并且在CPU和GPU上运行达到最佳状态,这非常合适。




9.1.4 Theano

Theano 最初于2007年发布,它是一个开源的Python库,允许你轻松地构建各种机器学习模型。由于它是最古老的库之一,它被视为一种激发深度学习发展的行业标准。

它的核心是可以简化定义,优化和评估数学表达式的过程。Theano能够将你的结构转换为与NumPy,BLAS等高效本机库以及本地代码(C ++)集成的非常高效的代码。

此外,它针对GPU进行了优化,提供了高效的符号差异化,并且具有广泛的代码测试功能。