# 利用机器学习开发算法交易系统 **Repository Path**: Howie0126/DevelopingTradingAlgorithmSystemUsingMachineLearning ## Basic Information - **Project Name**: 利用机器学习开发算法交易系统 - **Description**: 本书介绍了机器学习必要的统计与概率方面的数学理论,以及适用机器学习的领域相关的领域知识,同时收录了实现代码。利用机器学习编写程序时,机器学习算法所占的比重并不大,重要的是理解数据并掌握特性。在此过程中,如果具备统计与概率相关的数学知识和机器学习应用领域的专业知识,则能大大节约时间,并简化问题。经过这些过程的机器学习才能获得良好的应用效果。 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 1 - **Created**: 2021-01-11 - **Last Updated**: 2022-12-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # READ ME # 利用机器学习开发算法交易系统 ## 内容简介 本书介绍了机器学习必要的统计与概率方面的数学理论,以及适用机器学习的领域相关的领域知识,同时收录了实现代码。利用机器学习编写程序时,机器学习算法所占的比重并不大,重要的是理解数据并掌握特性。在此过程中,如果具备统计与概率相关的数学知识和机器学习应用领域的专业知识,则能大大节约时间,并简化问题。经过这些过程的机器学习才能获得良好的应用效果。 ## 作者简介 安明浩 韩国科学技术院软件硕士课程结业。起初研究云技术,之后转向机器学习。目前正在努力通过机器学习制作“鸬鹚”无人机,盼望以此实现经济自由。 ## 编辑推荐 \- 选用难以预测的股市数据,易获取、可信赖、有难度。 \- 利用数学理论,创建预测模型、处理数据、训练预测股价、解析训练结果、揭示改进方法,体验机器学习全过程。 \- 通过源代码和函数讲解,介绍机器学习基本概念,为读者进一步了解机器学习绘制“理论路线图”。 ## 目录 ​ ### 第一部分 ​ #### 第1章 机器学习  1 ​ 1.1 机器学习定义  1 ​ 1.2 机器学习的优缺点  3 ​ 1.2.1 机器学习的优点  3 ​ 1.2.2 机器学习的缺点  4 ​ 1.3 机器学习的种类  4 ​ 1.3.1 监督学习  5 ​ 1.3.2 无监督学习  6 ​ 1.4 机器学习能做的事情  7 ​ 1.4.1 回归  8 ​ 1.4.2 分类  10 ​ 1.4.3 聚类  12 ​ 1.5 机器学习算法  13 ​ 1.5.1 回归  14 ​ 1.5.2 分类  15 ​ 1.5.3 聚类  15 ​ 1.6 机器学习的过程  16 ​ 1.6.1 第一次预处理  16 ​ 1.6.2 训练数据集  17 ​ 1.6.3 第二次预处理  17 ​ 1.6.4 机器学习算法学习  17 ​ 1.6.5 参数优化  17 ​ 1.6.6 后期处理  17 ​ 1.6.7 最终模型  18 ​ 1.7 “没有免费的午餐”定理  18 ​ ### 第二部分 ​ #### 第2章 统计  21 ​ 2.1 统计的定义  21 ​ 2.2 统计在机器学习中的重要性  22 ​ 2.3 统计的基本概念和术语  23 ​ 2.3.1 总体和样本  23 ​ 2.3.2 参数和统计量  24 ​ 2.3.3 抽样误差  25 ​ 2.3.4 因变量和自变量  26 ​ 2.3.5 连续变量和离散变量  26 ​ 2.3.6 模型  27 ​ 2.4 准备事项  28 ​ 2.5 数据下载  29 ​ 2.6 数据加载  31 ​ 2.7 基础统计  31 ​ 2.7.1 标准差  32 ​ 2.7.2 四分位数  36 ​ 2.7.3 直方图  37 ​ 2.7.4 正态分布  40 ​ 2.7.5 散点图  41 ​ 2.7.6 箱形图  44 ​ #### 第3章 时间序列数据  49 ​ 3.1 时间序列数据  50 ​ 3.2 时间序列数据分析  51 ​ 3.3 时间序列数据的主要特征  52 ​ 3.4 随机过程  54 ​ 3.5 平稳时间序列数据  55 ​ 3.6 随机过程中的期望值、方差和协方差  57 ​ 3.7 相关  59 ​ 3.8 自协方差  61 ​ 3.9 自相关  62 ​ 3.10 随机游走  66 ​ ### 第三部分 ​ #### 第4章 算法交易  69 ​ 4.1 算法交易简介  69 ​ 4.2 算法交易历史上的那些人  72 ​ 4.2.1 爱德华·索普  72 ​ 4.2.2 詹姆斯·哈里斯·西蒙斯  74 ​ 4.2.3 肯尼斯·格里芬  76 ​ 4.3 算法交易模型  77 ​ 4.4 均值回归模型  79 ​ 4.4.1 均值回归检验  80 ​ 4.4.2 实现均值回归模型  86 ​ 4.5 机器学习模型  89 ​ 4.5.1 特征选择  90 ​ 4.5.2 是价格还是方向  91 ​ 4.6 分类模型  92 ​ 4.6.1 逻辑斯蒂回归  92 ​ 4.6.2 决策树和随机森林  94 ​ 4.6.3 支持向量机  96 ​ 4.7 实现机器学习模型  97 ​ 4.7.1 数据集  98 ​ 4.7.2 拆分数据集  100 ​ 4.7.3 生成股价走势预测变量  101 ​ 4.7.4 股价走势预测变量的运行和评价  102 ​ 4.8 时间衰减效应  106 ​ #### 第5章 实现算法交易系统  109 ​ 5.1 普通算法交易系统的构成  109 ​ 5.2 实现系统的概要  111 ​ 5.3 开发环境  113 ​ 5.4 数据爬虫实现  113 ​ 5.4.1 收集股票代码  114 ​ 5.4.2 收集股价数据  118 ​ 5.5 实现α 模型  121 ​ 5.5.1 均值回归模型  122 ​ 5.5.2 机器学习模型  124 ​ 5.6 投资组合生成器  125 ​ 5.6.1 均值回归模型的股票选择  126 ​ 5.6.2 机器学习模型的股票选择  130 ​ 5.7 实现Trader 类  136 ​ #### 第6章 性能评价与优化  137 ​ 6.1 算法交易系统的性能测试  138 ​ 6.1.1 评价系统的获利能力  138 ​ 6.1.2 比较各实现模型  138 ​ 6.1.3 对系统的信心  139 ​ 6.2 回溯检验  140 ​ 6.2.1 Profit/Loss 检验  140 ​ 6.2.2 Hit Batio  141 ​ 6.2.3 Drawdown  143 ​ 6.2.4 Sharpe Ratio  145 ​ 6.3 机器学习性能测试  147 ​ 6.3.1 混淆矩阵  148 ​ 6.3.2 Classification Report  150 ​ 6.3.3 ROC  152 ​ 6.4 实时交易监控  158 ​ 6.5 参数优化  159 ​ 6.6 超参数优化  160 ​ 6.6.1 网格搜索  161 ​ 6.6.2 随机搜索  164 ​ 6.7 “黑天鹅”  167 ​ 后记  171