Deep_Learning_Machine_Learning_Stock

Deep_Learning_Machine_Learning_Stock

深度学习和机器学习在股票市场预测中的应用

本项目深入探讨了深度学习和机器学习在股票市场预测中的应用。从数据收集到模型训练,涵盖了算法选择、过拟合处理和性能优化等关键环节。项目融合了技术分析和基本面分析,并探讨了长短期预测策略。这是一个面向研究者和开发者的综合性资源,旨在展示人工智能在金融市场分析中的潜力。

深度学习机器学习股票预测人工智能算法Github开源项目

贡献者 分支 星标 问题 MIT 许可证 领英

<a href="https://www.buymeacoffee.com/lastancientone" target="_blank"><img src="https://yellow-cdn.veclightyear.com/0a4dffa0/d84a9b6a-b913-4170-aa95-326fd74fd101.png" alt="给我买杯咖啡" style="height: 60px !important;width: 217px !important;" ></a>

<!-- Markdown 链接与图片 --> <!-- https://www.markdownguide.org/basic-syntax/#reference-style-links --> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/4289d937-ca2d-4b88-a4da-94ae9ec02d36.PNG"> <h1 align="center">深度学习和机器学习用于股票预测</h1>

描述:这是一项使用深度学习(DL)和机器学习(ML)技术对股票进行的全面研究和分析。机器学习和深度学习都属于人工智能(AI)的一种。目标是通过采用各种机器学习和深度学习算法来预测股票行为。重点是对股票数据进行实验,以了解某些方法为何有效以及识别其潜在局限性的原因。在机器学习和深度学习的背景下探索不同的股票策略。利用这些AI技术进行技术分析和基本面分析来预测未来股票价格,包括长期和短期预测。

机器学习是人工智能的一个分支,涉及开发能够通过处理结构化数据自动适应和生成输出的算法。另一方面,深度学习是机器学习的一个子集,它使用类似的算法但增加了额外的复杂层,使数据能够进行不同的解释。深度学习中使用的算法网络被称为人工神经网络,它模仿人脑神经通路的互连性。

深度学习和机器学习是革新AI领域的强大方法。理解这些技术的基础知识和常用算法对于有抱负的数据科学家和AI爱好者来说至关重要。回归作为预测建模中的基本概念,在分析和预测连续变量方面起着关键作用。通过利用这些算法和技术的能力,我们可以在各个领域释放令人难以置信的潜力,从而推动众多行业的进步和改进。

机器学习步骤

  1. 收集/聚集数据。
  2. 准备数据 - 加载数据并为机器学习训练做准备。
  3. 选择模型。
  4. 训练模型。
  5. 评估模型。
  6. 参数调优。
  7. 进行预测。

深度学习模型步骤

  1. 定义模型。
  2. 编译模型。
  3. 用训练数据集拟合模型。
  4. 进行预测。
<h3 align="left">编程语言和工具:</h3> <p align="left"> </a> <a href="https://www.python.org" target="_blank"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/6b67c3a2-e1fa-4a55-b709-c1b37f8d47f3.svg" alt="python" width="50" height="50"/> </a> <a href="https://nteract.io/" target="_blank"> <img src="https://avatars.githubusercontent.com/u/12401040?s=200&v=4" alt="Nteract" width="50" height="50"/> </a> <a href="https://anaconda.org/" target="_blank"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/5795ad4f-cb75-4b78-9304-957b83b0e655.png" alt="Anaconda" width="50" height="50"/> </a> <a href="https://www.spyder-ide.org/" target="_blank"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/c1ba68fe-23c3-4890-aca3-f4b568b1a5c8.png" alt="Spyder" width="50" height="50"/> </a> <a href="https://jupyter.org/" target="_blank"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/fda3c2af-18f6-48ba-b8d2-10bbf2aeab8d.svg" alt="Jupyter Notebook" width="50" height="50"/> </a> <a href="https://notepad-plus-plus.org/" target="_blank"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/432a11fb-1ef4-4a81-bb4b-23c048631aa7.png" alt="Notepad++" width="50" height="50"/> </a> </p>

三种主要的数据类型:分类变量、离散变量和连续变量

  1. 分类变量(定性变量):标签数据或不同的组别。 例如:位置、性别、材料类型、支付方式、最高学历
  2. 离散变量(类别数据):数值变量,但数据在任意两个值之间有可数的数值。 例如:客户投诉数量、缺陷数量、每户家庭的子女数量、年龄(年数)
  3. 连续变量(定量变量):在任意两个值之间有无限个数值的数值变量。 例如:零件长度、收到付款的日期和时间、跑步距离、年龄(无限精确且使用无限小数位)

数据使用

  1. "定量数据"可用于所有三种中心测度(平均值、中位数和众数)和所有离散度量。
  2. "类别数据"可用于中位数和众数。
  3. "定性数据"仅用于众数。

两种问题类型:

  1. 分类(预测标签)
  2. 回归(预测数值)

偏差-方差权衡

偏差

  • 偏差是实际值与预测值之间的差异。
  • 偏差是我们的模型对数据做出的简单假设,以便预测新数据。
  • 模型为了使函数更容易学习而做出的假设。

方差

  • 方差与偏差相反。
  • 方差是模型预测对给定数据点的变异性,或者说是告诉我们数据分散程度的值。
  • 如果你在训练数据上训练你的模型并获得了很低的误差,当改变数据后再次训练相同的模型。

过拟合、欠拟合和偏差-方差权衡

过拟合是指模型记住了噪声并过于贴近训练集。良好拟合是指模型学习了训练数据集并能很好地泛化到新的数据集。欠拟合是指模型无法建立数据中的主要趋势;结果导致训练误差增加和模型性能不佳。

过拟合:

过拟合模型是一个在训练数据上表现良好的模型,能够拟合或者接近每个观测值;然而,这个模型抓错了重点,捕捉到了随机噪声。该模型具有低训练误差和高交叉验证误差,低样本内误差和高样本外误差,以及高方差。

  1. 高训练准确率
  2. 低测试准确率

避免过拟合:

  1. 提前停止 - 在模型开始学习噪声之前停止训练。
  2. 增加训练数据 - 添加更多数据将提高模型的准确性或帮助算法更好地检测信号。
  3. 数据增强 - 在训练数据中添加干净和相关的数据。
  4. 特征选择 - 使用数据中的重要特征。移除特征。
  5. 正则化 - 使用诸如L1正则化、Lasso正则化和dropout等正则化方法来减少特征。
  6. 集成方法 - 结合多个独立模型的预测,如bagging和boosting。
  7. 增加训练数据。

良好拟合:

  1. 高训练准确率
  2. 高测试准确率

欠拟合:

欠拟合模型不够完善,因此无法捕捉数据的潜在逻辑。因此,该模型没有强大的预测能力,准确率低。该模型具有大的训练集误差,大的样本内误差,以及高偏差。

  1. 低训练准确率
  2. 低测试准确率

避免欠拟合:

  1. 减少正则化 - 通过对具有较大系数的输入参数施加惩罚来降低模型的方差,如L1正则化、Lasso正则化、dropout等。
  2. 延长训练时间 - 延长训练时间,因为过早停止训练会导致模型欠拟合。
  3. 特征选择 - 如果没有足够的预测特征,那么添加更多特征或更重要的特征将改善模型。
  4. 增加特征数量 - 进行特征工程
  5. 移除数据中的噪声

Python 回顾

第1步到第8步是对Python的回顾。 第8步之后,你需要知道的所有内容都与数据分析、数据工程、数据科学、机器学习和深度学习有关。 这里是Python教程的链接: 股票分析Python教程

股票交易机器学习算法列表

最常见的回归算法

  1. 线性回归模型
  2. 逻辑回归
  3. Lasso回归
  4. 支持向量机
  5. 多项式回归
  6. 逐步回归
  7. 岭回归
  8. 多变量回归算法
  9. 多元回归算法
  10. K均值聚类算法
  11. 朴素贝叶斯分类器算法
  12. 随机森林
  13. 决策树
  14. 最近邻
  15. Lasso回归
  16. ElasticNet回归
  17. 强化学习
  18. 人工智能
  19. 多模态网络
  20. 生物智能

不同类型的机器学习算法和模型

算法是用于解决一类问题的过程和指令集。此外,算法执行计算,如计算、数据处理、自动推理和其他任务。机器学习算法是一种使系统能够从经验中自动学习和改进的方法,无需显式编程。

先决条件

Python 3.5+ Jupyter Notebook Python 3 Windows 7 或 Windows 10

下载软件

https://www.python.org/

<h3 align="left"> 编程语言:</h3> <p align="left"> </a> <a href="https://www.python.org" target="_blank"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/6b67c3a2-e1fa-4a55-b709-c1b37f8d47f3.svg" alt="python" width="80" height="80"/> </a> <h3 align="left">工具:</h3> <p align="left"> </a> <a href="https://anaconda.org/" target="_blank"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/5795ad4f-cb75-4b78-9304-957b83b0e655.png" alt="Anaconda" width="80" height="80"/> </a> <a href="https://www.spyder-ide.org/" target="_blank"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/5b4f3603-2c5f-4a90-b2aa-0e961115b2d7.png" alt="Spyder" width="80" height="80"/> </a> <a href="https://jupyter.org/" target="_blank"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/fda3c2af-18f6-48ba-b8d2-10bbf2aeab8d.svg" alt="Jupyter Notebook" width="80" height="80"/> </a> <a href="https://notepad-plus-plus.org/" target="_blank"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/432a11fb-1ef4-4a81-bb4b-23c048631aa7.png" alt="Notepad++" width="80" height="80"/> </a> <a href="https://www.jetbrains.com/pycharm/" target="_blank"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/cdb1ff65-88f5-4bca-a41e-dabf800b6cac.svg" alt="Notepad++" width="80" height="80"/> </a> </p>

<a href="https://www.buymeacoffee.com/lastancientone"><img src="https://img.buymeacoffee.com/button-api/?text=给我买本书&emoji=📚&slug=lastancientone&button_colour=000000&font_colour=ffffff&font_family=Lato&outline_colour=ffffff&coffee_colour=FFDD00" /></a>

作者

Tin Hang

免责声明

🔻 请勿使用此代码进行股票市场投资或交易。然而,如果你对股票市场感兴趣,你应该阅读与股票市场、投资或金融相关的:books:书籍。另一方面,如果你对量化或机器学习感兴趣,可以阅读有关📘机器交易、算法交易和量化交易的书籍。你应该阅读有关📗机器学习和深度学习的书籍,以理解其概念、理论和数学原理。此外,你还应该阅读学术论文,并在:computer:上对机器学习和深度学习进行在线研究。

代码中的某些部分可能会因特定库包的更新或过时而遇到问题。因此,根据所使用的Python包库,可能需要进行相应的调整。可能需要升级或降级某些库。

🔴 警告:这不是财务建议;不应依赖它进行投资或交易决策,因为它仅用于教育目的。

编辑推荐精选

扣子-AI办公

扣子-AI办公

职场AI,就用扣子

AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!

堆友

堆友

多风格AI绘画神器

堆友平台由阿里巴巴设计团队创建,作为一款AI驱动的设计工具,专为设计师提供一站式增长服务。功能覆盖海量3D素材、AI绘画、实时渲染以及专业抠图,显著提升设计品质和效率。平台不仅提供工具,还是一个促进创意交流和个人发展的空间,界面友好,适合所有级别的设计师和创意工作者。

图像生成热门AI工具AI图像AI反应堆AI工具箱AI绘画GOAI艺术字堆友相机
码上飞

码上飞

零代码AI应用开发平台

零代码AI应用开发平台,用户只需一句话简单描述需求,AI能自动生成小程序、APP或H5网页应用,无需编写代码。

Vora

Vora

免费创建高清无水印Sora视频

Vora是一个免费创建高清无水印Sora视频的AI工具

Refly.AI

Refly.AI

最适合小白的AI自动化工作流平台

无需编码,轻松生成可复用、可变现的AI自动化工作流

酷表ChatExcel

酷表ChatExcel

大模型驱动的Excel数据处理工具

基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。

AI工具使用教程AI营销产品酷表ChatExcelAI智能客服
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

热门AI工具生产力协作转型TraeAI IDE
AIWritePaper论文写作

AIWritePaper论文写作

AI论文写作指导平台

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

数据安全AI助手热门AI工具AI辅助写作AI论文工具论文写作智能生成大纲
博思AIPPT

博思AIPPT

AI一键生成PPT,就用博思AIPPT!

博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。

热门AI工具AI办公办公工具智能排版AI生成PPT博思AIPPT海量精品模板AI创作
潮际好麦

潮际好麦

AI赋能电商视觉革命,一站式智能商拍平台

潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。

下拉加载更多