VII
目 录
第1章 小瓦的故事—从零开始
1.1 何以解忧,“小富”也行 1
1.1.1 那些年,那些交易 2
1.1.2 自动化交易和高频交易 2
1.1.3 因子投资悄然兴起 3
1.2 机器学习崛起 4
1.2.1 量化投资风生水起 4
1.2.2 没有数据是不行的 5
1.2.3 交易策略和阿尔法因子 5
1.3 要想富,先配库 6
1.3.1 Anaconda的下载和安装 6
1.3.2 Jupyter Notebook的基本使用方法 8
1.3.3 用真实股票数据练练手 11
1.4 小结 15
第2章 小瓦的策略靠谱吗—回测与经典策略
2.1 对小瓦的策略进行简单回测 16
2.1.1 下载数据并创建交易信号 16
2.1.2 对交易策略进行简单回测 18
2.1.3 关于回测,你还需要知道的 20
2.2 经典策略之移动平均策略 21
2.2.1 单一移动平均指标 21
2.2.2 双移动平均策略的实现 23
2.2.3 对双移动平均策略进行回测 26
2.3 经典策略之海龟策略 28
2.3.1 使用海龟策略生成交易信号 28
2.3.2 根据交易信号和仓位进行下单 29
2.3.3 对海龟策略进行回测 31
2.4 小结 34
第3章 AI来了—机器学习在交易中的简单应用
3.1 机器学习的基本概念 35
3.1.1 有监督学习和无监督学习 35
深入浅出Python量化交易实战
VIII
3.1.2 分类和回归37
3.1.3 模型性能的评估37
3.2 机器学习工具的基本使用方法 37
3.2.1 KNN算法的基本原理 38
3.2.2 KNN算法用于分类 38
3.2.3 KNN算法用于回归 43
3.3 基于机器学习的简单交易策略 47
3.3.1 获取股票数据47
3.3.2 创建交易条件49
3.3.3 使用分类算法制定交易策略 50
3.4 小结 54
第4章 多来点数据—借助量化交易平台
4.1 数据不够,平台来凑 55
4.1.1 选择量化交易平台 56
4.1.2 量化交易平台的研究环境 57
4.1.3 在研究环境中运行代码 58
4.2 借助财务数据筛选股票 59
4.2.1 获取股票的概况60
4.2.2 获取股票的财务数据 62
4.2.3 通过财务指标进行选股 64
4.3 谁是幕后“大佬” 65
4.3.1 找到的股东66
4.3.2 大股东们增持了还是减持了 67
4.3.3 资金净流入还是净流出 69
4.4 小结 71
第5章 因子来了—基本原理和用法
5.1 “瓦氏因子”了解一下 72
5.1.1 获取主力资金流向数据 73
5.1.2 简易特征工程74
5.1.3 “瓦氏因子”的计算 75
5.1.4 用添加“瓦氏因子”的数据训练模型 76
5.1.5 “因子”都能干啥 77
5.2 股票不知道怎么选?因子来帮忙 78
5.2.1 确定股票池78
5.2.2 获取沪深两市的全部指数 79
5.2.3 获取股票的市值因子 80
5.2.4 获取股票的现金流因子 81
5.2.5 获取股票的净利率因子 82
5.2.6 获取股票的净利润增长率因子 83
5.3 把诸多因子“打个包” 84
5.3.1 将4个因子存入一个DataFrame 84
5.3.2 使用PCA提取主成分 85
5.3.3 找到主成分数值的股票 86
5.4 小结 87
目录
IX
第6章 因子好用吗—有些事需要你知道
6.1 针对投资组合获取因子值 88
6.1.1 建立投资组合并设定日期 88
6.1.2 获取一个情绪因子 90
6.1.3 获取全部的因子分析结果 91
6.2 因子收益分析 92
6.2.1 因子各分位统计92
6.2.2 因子加权多空组合累计收益 94
6.2.3 做多分位做空小分位收益 96
6.2.4 分位数累计收益对比 97
6.3 因子IC分析 98
6.3.1 因子IC分析概况 99
6.3.2 因子IC时间序列图 99
6.3.3 因子IC正态分布Q-Q图和月度均值 101
6.4 因子换手率、因子自相关性和因子预
测能力分析 102
6.4.1 因子换手率分析103
6.4.2 因子自相关性分析 104
6.4.3 因子预测能力分析 106
6.5 小结 107
第7章 当因子遇上线性模型
7.1 什么是线性模型 108
7.1.1 准备用于演示的数据 108
7.1.2 来试试简单的线性回归 110
7.1.3 使用正则化的线性模型 113
7.2 用线性模型搞搞交易策略 115
7.2.1 准备因子115
7.2.2 训练模型117
7.2.3 基于模型的预测进行选股 118
7.3 能不能赚到钱 119
7.3.1 平台的策略回测功能 120
7.3.2 把研究成果写成策略 121
7.3.3 回测124
7.4 小结 126
第8章 因子遇到决策树与随机森林
8.1 什么是决策树和随机森林 127
8.1.1 线性模型不适用的数据样本 127
8.1.2 决策树的用法和原理 129
8.1.3 随机森林的用法和原理 130
8.2 哪些因子重要,决策树能告诉你 132
8.2.1 多来点因子132
8.2.2 设定目标并训练模型 135
8.2.3 哪些因子重要137
8.3 用重要因子和随机森林来制订
策略 138
深入浅出Python量化交易实战
8.3.1 回测函数的初始化 138
8.3.2 盘前的准备工作139
8.3.3 策略中的机器学习部分 141
8.3.4 定义买入股票和卖出股票的列表 142
8.3.5 定义买入操作和卖出操作 144
8.3.6 对策略进行回测145
8.4 小结 146
第9章 因子遇到支持向量机
9.1 什么是支持向量机 147
9.1.1 支持向量机的基本原理 147
9.1.2 线性内核有时“很着急” 149
9.1.3 RBF内核“闪亮登场” 150
9.2 动态因子选择策略 152
9.2.1 设置回测环境152
9.2.2 开盘前准备153
9.2.3 机器学习的部分155
9.2.4 买入和卖出的操作 157
9.3 策略的回测详情 158
9.3.1 策略收益概述159
9.3.2 策略交易详情159
9.3.3 持仓和收益详情161
9.4 使用策略进行模拟交易 162
9.4.1 模拟交易163
9.4.2 查看模拟交易详情 164
9.4.3 模拟交易的持仓与下单 165
9.5 小结 166
第10章 初识自然语言处理技术
10.1我们的想法是否靠谱 167
10.1.1 思考几个问题 167
10.1.2 参考一下“大佬”们的做法 168
10.1.3 说了那么多,什么是NLP 169
10.2 获取文本数据并简单清洗 170
10.2.1 获取新闻联播文本数据 170
10.2.2 对文本数据进行简单清洗 172
10.3 中文分词,“结巴”来帮忙 173
10.3.1 使用“结巴”进行分词 174
10.3.2 使用“结巴”进行列表分词 174
10.3.3 建立停用词表 175
10.3.4 去掉文本中的停用词 176
10.3.5 使用“结巴”提取关键词 178
10.4 小结 180
第11章 新闻文本向量化和话题建模
11.1 让机器“读懂”新闻 181
11.1.1 准备文本数据 181
目录
11.1.2 使用CountVectorizer将文本转化为
向量 183
11.1.3 使用TfidfVectorizer将文本转化为
向量 185
11.2 让机器告诉我们新闻说了啥 186
11.2.1 什么是话题建模 186
11.2.2 什么是LDA模型 187
11.3 话题建模实战 188
11.3.1 加载数据并进行分词 188
11.3.2 将分词结果合并保存 190
11.3.3 使用LDA进行话题建模 191
11.3.4 对模型进行改进 192
11.4 小结 194
第12章 股评数据情感分析
12.1 机器懂我们的情感吗 195
12.1.1 了解分好类的语料 196
12.1.2 将文件上传到量化交易平台 197
12.2 用语料制作数据集 198
12.2.1 将正面情绪语料存储为列表 198
12.2.2 将负面情绪语料存储为列表 200
12.2.3 给数据“打上标签” 201
12.2.4 合并正负面情绪语料 202
12.3 隆重推出“朴素贝叶斯” 203
12.3.1 “朴素贝叶斯”又是什么 204
12.3.2 为贝叶斯模型准备数据 205
12.3.3 开始训练贝叶斯模型并评估其性能 206
12.4 小结 208
第13章 咱也“潮”一把—深度学习来了
13.1 开始研究前的准备 209
13.1.1 翻翻工具箱,看看有什么 210
13.1.2 为神经网络准备数据 211
13.2 使用Keras对文本进行预处理 213
13.2.1 使用Tokenizer提取特征 213
13.2.2 将文本转化为序列 214
13.2.3 填充序列与转化矩阵 216
13.3 使用Keras构建简单神经网络 217
13.3.1 先动手“撸”一个多层感知机 217
13.3.2 念叨一下多层感知机的原理 218
13.3.3 再来说说激活函数 220
13.3.4 Dropout层又是干吗的 221
13.3.5 训练一下,看看效果如何 222
13.4 小结 224
深入浅出Python量化交易实战
第14章 再进一步—CNN和LSTM
14.1 先动手“撸”一个卷积神经
网络 225
14.1.1 准备好库和数据集 225
14.1.2 处理数据与搭建模型 227
14.2 卷积神经网络模型详解 229
14.2.1 嵌入层是干啥用的 230
14.2.2 卷积层是干啥用的 231
14.2.3 池化层是干啥用的 233
14.2.4 训练模型看看效果 234
14.3 长短期记忆网络 236
14.3.1 搭建一个简单的长短期记忆网络 236
14.3.2 关于长短期记忆网络 237
14.3.3 训练模型及评估 238
14.3.4 保存模型并在回测中调用 240
14.4 小结 241
第15章 写在后—小瓦的征程
15.1 可以一夜暴富了吗 242
15.1.1 使用第三方量化平台是个好主
意吗 243
15.1.2 机器学习到底有没有用 243
15.1.3 要“吊死”在A股“这棵树”
上吗 244
15.2 将来要做什么 245
15.2.1 学习一些数据库知识 245
15.2.2 多看看不同的投资标的 247
15.2.3 打开国际化的视野 249
15.3 小结 252