第 1 部分 基础知识和环境配置
第 1 章 算法交易的基础原理 2
1.1 为什么要交易 2
1.2 有关现代交易的基本概念 3
1.2.1 市场板块 3
1.2.2 资产类别 4
1.2.3 现代交易市场的基本情况 5
1.3 了解算法交易概念 7
1.3.1 交换订单簿 7
1.3.2 交换匹配算法 7
1.3.3 限价订单簿 9
1.3.4 交换市场数据协议 9
1.3.5 市场数据提供处理程序 9
1.3.6 订单类型 10
1.3.7 交换订单输入协议 10
1.3.8 订单输入网关 10
1.3.9 头寸和损益管理 11
1.4 从直觉到算法交易 11
1.4.1 为什么需要自动化交易 12
1.4.2 算法交易的演变—从基于规则的交易到全自动算法交易 12
1.5 算法交易系统的组成部分 14
1.5.1 市场数据订阅 15
1.5.2 限价订单簿 15
1.5.3 信号 15
1.5.4 信号聚合器 16
1.5.5 执行逻辑 16
1.5.6 头寸和损益管理 17
1.5.7 风险管理 17
1.5.8 回测 17
1.6 为什么选择 Python 18
1.6.1 选择 IDE—PyCharm 或 Jupyter Notebook 19
1.6.2 第 一个算法交易 20
1.6.3 设置你的工作区 20
1.6.4 PyCharm 20
1.6.5 获取数据 21
1.6.6 准备数据——信号 22
1.6.7 信号可视化 24
1.6.8 回测 25
1.7 总结 27
第 2 部分 交易信息生成与交易策略
第 2 章 通过技术分析解读市场 30
2.1 基于趋势和动量指标设计交易策略 31
2.2 基于基本技术分析创建交易信号 37
2.2.1 简单移动平均线 37
2.2.2 指数移动平均线 39
2.2.3 绝对价格振荡器 42
2.2.4 异同移动平均线 44
2.2.5 布林带 47
2.2.6 相对强弱指标 49
2.2.7 标准偏差 53
2.2.8 动量 55
2.3 在交易工具中贯彻高级概念,如季节性 57
2.4 总结 63
第 3 章 通过基础机器学习预测市场 65
3.1 了解术语和符号 66
3.2 使用线性回归方法创建预测模型 70
3.2.1 普通最小二乘法 70
3.2.2 正规化和收缩——LASSO 和 Ridge 回归 75
3.2.3 决策树回归 77
3.3 使用线性分类方法创建预测模型 77
3.3.1 K 近邻 77
3.3.2 支持向量机 79
3.3.3 逻辑回归 81
3.4 总结 81
第 3 部分 算法交易策略
第 4 章 人类直觉驱动的经典交易策略 84
4.1 创建基于动量和趋势跟踪的交易策略 84
4.2 创建适用于具有回归行为的交易策略 91
4.3 创建在线性相关的交易工具组上操作的交易策略 92
4.4 总结 107
第 5 章 复杂的算法策略 108
5.1 创建根据交易工具的波动性进行调整的交易策略 108
5.1.1 调整技术指标中交易工具的波动率 109
5.1.2 调整交易策略中交易工具的波动率 109
5.1.3 波动率调整后的均值回归交易策略 110
5.2 制定经济事件的交易策略 127
5.2.1 经济发布 127
5.2.2 经济发布格式 128
5.2.3 电子化经济发布服务 129
5.2.4 交易中的经济发布 129
5.3 实施基本的统计套利交易策略 131
5.3.1 StatArb 的基础 131
5.3.2 StatArb 中的领先滞后 132
5.3.3 调整投资组合的构成和关系 132
5.3.4 StatArb 的基础设施费用 133
5.3.5 Python 中的 StatArb 133
5.4 总结 148
第 6 章 管理算法策略中的风险 149
6.1 区分风险类型和风险因素 149
6.1.1 交易损失的风险 150
6.1.2 违反法规的风险 150
6.1.3 欺骗 151
6.1.4 报价填充 151
6.1.5 操纵收盘价 152
6.1.6 风险来源 152
6.1.7 量化风险 154
6.2 区分风险措施 155
6.2.1 止损 156
6.2.2 最大跌幅 158
6.2.3 头寸限制 160
6.2.4 持仓时间 161
6.2.5 PnL 的差异 162
6.2.6 夏普比率 163
6.2.7 每周期最大执行量 165
6.2.8 最大交易规模 167
6.2.9 数量限制 167
6.3 制定风险管理算法 168
6.4 总结 180
第 4 部分 建立交易系统
第 7 章 用 Python 构建交易系统 182
7.1 了解交易系统 182
7.1.1 网关 183
7.1.2 订单簿管理 185
7.1.3 策略 186
7.1.4 订单管理系统 187
7.1.5 关键组件 188
7.1.6 非关键组件 188
7.2 构建交易系统 190
7.2.1 流动性提供者类 191
7.2.2 策略类 193
7.2.3 订单管理器类 198
7.2.4 市场模拟器类 202
7.2.5 测试交易模拟类 205
7.3 设计限价订单簿 207
7.4 总结 214
第 8 章 连接到交易所 215
8.1 使交易系统可与交易所进行交易 215
8.2 审查通信 API 217
8.2.1 网络基础知识 217
8.2.2 交易协议 218
8.2.3 FIX 协议 219
8.3 接收价格更新 221
8.4 发送订单和接收市场响应 226
8.4.1 接收器代码示例 228
8.4.2 其他交易 API 232
8.5 总结 233
第 9 章 在 Python 中创建回测器 234
9.1 学习如何构建回测器 235
9.1.1 样本内数据与样本外数据的比较 235
9.1.2 模拟交易 236
9.1.3 单纯的数据存储 236
9.1.4 HDF5 文件 236
9.1.5 数据库 238
9.2 学习如何选择正确的假设 241
9.2.1 for 循环回测系统 243
9.2.2 事件驱动的回测系统 244
9.3 评估时间价值 246
9.4 回测双移动平均线交易策略 250
9.4.1 for 循环回测器 250
9.4.2 基于事件的回测器 253
9.5 总结 260
第 5 部分 算法交易的挑战
第 10 章 适应市场参与者和环境 262
10.1 回测器与实际市场的策略表现 263
10.1.1 回测器失调的影响 264
10.1.2 仿真失调的原因 266
10.1.3 根据实时交易调整回测和策略 268
10.2 算法交易的持续赢利能力 272
10.2.1 算法交易策略中的利润衰减 272
10.2.2 适应市场条件和不断变化的市场参与者 276
10.3 总结 286
后记 287
· · · · · · (
收起)
1 有用 Marvin不慌 2023-01-03 18:13:30 北京
在现代社会,仅仅凭借比别人更快来获得显著的竞争优势已越来越难,还需要依靠复杂的交易信号、预测模型和交易策略。本书提供相关知识和可参考的实践经验,希望能够引导读者深入了解现代电子交易市场和市场参与者的运作方式,了解算法交易的内涵及核心思想,并学会运用 Python 设计和构建实用的算法交易系统。
0 有用 异步图书 2023-03-20 15:29:36 北京
本书融入了多元化的金融板块,涉及建模、交易、风控等重要主题,同时融入机器学习、数据分析和回测等Python板块,更加丰富了本书的内容。
0 有用 Huchian 2023-08-05 14:33:08 上海
有浅有深,跨度较大。简单的部分略过了,最后一章的道理讲的不错,能感觉出来经验丰富