2025年8月29日星期五

开源!AI股票自动交易系统,可自己训练模型

开源!

开源!AI股票自动交易系统,可自己训练模型

源代码

https://www.gitpp.com/qiangbula/project082501-ai-stock-trading

股票自动交易系统 ,后端使用DL4J框架实现LSTM模型实现股票价格预测和自动化股票交易,后端技术栈包含springboot,mysql,MongoDB,quartZ,k8s, mybatis-plus, webSocket, OCR文字识别等技术框架。

警告:AI交易不保证盈利,实盘前需充分测试并控制风险!


功能

数据分析

图片

股票历史

图片


自测模型

图片


开源AI股票自动交易系统介绍

该系统是一个基于DL4J框架的LSTM模型驱动的股票交易平台,后端采用Spring Boot整合MySQL、MongoDB、WebSocket等技术,支持用户自定义训练模型并实现自动化交易。系统覆盖数据采集、模型训练、策略回测到实盘交易的全流程,适合量化交易爱好者、个人投资者及开发者进行二次开发。


核心功能与技术架构

1. 功能模块

  • 数据采集与分析
    • 支持股票历史数据(K线、成交量等)的自动抓取与清洗。
    • 集成OCR文字识别,可解析财报、公告等非结构化数据,辅助特征工程。
  • 模型训练与回测
    • 基于DL4J的LSTM模型预测股价趋势,用户可调整时间窗口(如60日、120日)优化参数。
    • 提供回测引擎,模拟历史交易表现,输出收益曲线、最大回撤、夏普比率等指标。
  • 自动化交易
    • 通过WebSocket实时接收行情数据,触发预设交易策略(如突破均线买入、止损卖出)。
    • 支持多账户管理,可同时监控多个股票组合。

2. 技术栈


模块技术选型作用
后端
Spring Boot + MyBatis-Plus
提供RESTful API,管理用户、策略、交易记录等核心业务逻辑。
数据库
MySQL + MongoDB
MySQL存储用户信息、交易记录;MongoDB存储非结构化数据(如财报、新闻)。
模型训练
DL4J(DeepLearning4J)
实现LSTM时间序列预测,支持GPU加速训练。
任务调度
Quartz
定时执行数据抓取、模型训练、交易信号生成等任务。
实时通信
WebSocket
推送实时行情数据至前端,触发自动化交易。
部署
Kubernetes(k8s)
支持容器化部署,实现高可用与弹性伸缩。



应用方式与操作流程

1. 数据准备

  • 历史数据
    :从Tushare、AKShare等API获取股票日线/分钟级数据,存储至MySQL。
  • 实时数据
    :通过WebSocket连接交易所接口(如富途、雪球)获取实时行情。
  • 特征工程
    :结合技术指标(如MACD、RSI)和OCR解析的文本数据,构建多维特征矩阵。

2. 模型训练

  • 参数配置

    python

    # 示例:LSTM模型参数配置(需适配DL4J语法)
    model = Sequential()
    model.add(LSTM(64, input_shape=(time_window, feature_dim)))  # 时间窗口=60日,特征维度=10
    model.add(Dense(1, activation='linear'))  # 预测次日收益率
    model.compile(optimizer='adam', loss='mse')
  • 训练与验证
    • 将数据划分为训练集(70%)、验证集(20%)、测试集(10%)。
    • 使用早停法(Early Stopping)防止过拟合,监控验证集损失。

3. 策略回测

  • 买入信号
    :当预测收益率 > 阈值(如0.5%)且均线多头排列时触发。
  • 卖出信号
    :当预测收益率 < -0.5%或跌破止损线(如-8%)时触发。
  • 回测结果示例

    总收益率: 45.2% | 年化收益率: 18.7% | 最大回撤: -12.3% | 夏普比率: 1.2

4. 实盘交易

  • 风险控制
    • 单笔交易仓位 ≤ 总资金5%。
    • 设置每日最大亏损限额(如-3%)。
  • 自动化执行
    :通过WebSocket连接券商API(如华泰、中金),实现自动下单。

风险提示与应对策略

1. 模型风险

  • 问题
    :LSTM模型基于历史数据训练,可能无法适应极端市场(如股灾、政策突变)。
  • 应对
    • 定期更新模型(如每月重新训练),加入最新市场数据。
    • 结合传统量化指标(如布林带、波动率)进行多因子验证。

2. 技术风险

  • 问题
    :系统故障(如网络中断、数据库崩溃)可能导致交易延迟或重复下单。
  • 应对
    • 使用Kubernetes集群实现高可用,部署多个副本节点。
    • 添加心跳检测机制,实时监控系统健康状态。

3. 市场风险

  • 问题
    :黑天鹅事件(如疫情、战争)可能导致模型失效,造成重大亏损。
  • 应对
    • 设置熔断机制,当单日涨跌幅超过阈值(如±7%)时暂停交易。
    • 保留部分现金头寸,避免满仓操作。

4. 合规风险

  • 问题
    :部分券商禁止程序化交易,或对API调用频率有限制。
  • 应对
    • 提前咨询券商合规部门,确保交易行为符合监管要求。
    • 控制API调用频率(如每秒≤5次),避免被封禁。

开源价值与扩展方向

  • 降低门槛
    :个人投资者无需量化背景即可训练模型,成本低于商业平台(如万得、同花顺)。
  • 二次开发
    :支持集成强化学习(如PPO算法)优化交易策略,或对接加密货币市场。
  • 社区生态
    :可参考GitHub上类似项目(如Qlib、vn.py)完善功能。

项目地址:https://www.gitpp.com/qiangbula/project082501-ai-stock-trading
适用人群:量化交易初学者、个人投资者、AI开发者。
警告:AI交易不保证盈利,实盘前需充分测试并控制风险!


开源!AI股票自动交易系统,可自己训练模型

源代码

https://www.gitpp.com/qiangbula/project082501-ai-stock-trading

股票自动交易系统 ,后端使用DL4J框架实现LSTM模型实现股票价格预测和自动化股票交易,后端技术栈包含springboot,mysql,MongoDB,quartZ,k8s, mybatis-plus, webSocket, OCR文字识别等技术框架。

警告:AI交易不保证盈利,实盘前需充分测试并控制风险!


没有评论:

发表评论

身份保持超越Nano Banana!获多项SOTA!浙大ContextGen实现布局控制+身份保真双突破

AI生成未来知识星球免费开放! 点击下方 卡片 ,关注" AI生成未来 " 👇扫码 免费加入 AI知识星球 ,如您有工作需要分享,欢迎联系: aigc_to_future 作者:Ruihang Xu 等 编辑:AI生成未来 文章链接: https://a...