zhou343-de
stock-trader-ai
Python

八层风控 · 37因子自进化 · A股全自动量化交易系统 | 16 modules · 6400+ lines · AI-driven

Last updated Jul 29, 2026
10
Stars
4
Forks
0
Issues
0
Stars/day
Attention Score
43
Language breakdown
Python 100.0%
Files click to expand
README

🚀 StockTrader-AI

八层风控 · 37因子自进化 · A股全自动量化交易系统


Python License Code Size Scripts Factors Risk Layers

不是玩具,是一个完整的量化交易系统。

从选股到交易,从风控到日报,全流程自动化。 16 个模块 · 6400+ 行代码 · 8 层风控 · 37 个因子 · 每日 15 次自动盯盘。


30秒上手 · 为什么选这个 · 架构 · 风控 · 因子 · 回测 · 路线图


╔═══════════════════════════════════════════════════════════════╗
   ║                                                               ║
   ║   screener ──→ scorer ──→ AI决策 ──→ 交易引擎 ──→ 八层风控    ║
   ║     过滤         评分       选股        执行         保命       ║
   ║                                                               ║
   ║   4层漏斗     37个因子    市场感知    自动买卖     从P0到P2     ║
   ║                                                               ║
   ╚═══════════════════════════════════════════════════════════════╝


💡 为什么选 StockTrader-AI

市面上的量化框架要么太学术(回测好看实盘翻车),要么太玩具(一个脚本跑天下)。 这个项目的设计哲学是 "先活下来,再谈赚钱"

它能做什么:

  • 🎯 自动选股 — 四层漏斗过滤 + 37 个因子评分,不是拍脑袋选
  • 🤖 自动交易 — 空仓自动建仓,触发条件自动买卖,零人工干预
  • 🛡️ 自动风控 — 八层防护,从组合回撤熔断到个股跌停检测,层层保命
  • 🧬 自动进化 — 因子权重每周自动优化,越跑越聪明
  • 📊 自动日报 — 收盘自动生成报告,含夏普/回撤/相关性矩阵
  • 📧 自动告警 — 跌停、熔断、止盈,邮件即时通知
  • 🧪 自动回测 — 内置回测引擎,改参数立刻看效果
它不能做什么:
  • ❌ 不能保证赚钱(没有任何系统能)
  • ❌ 不能替代你的判断(AI 辅助决策,不是 AI 替代决策)
  • ❌ 不能一夜暴富(稳健 > 激进)

⚡ 30秒上手

# 克隆
git clone https://github.com/zhou343-de/stock-trader-ai.git
cd stock-trader-ai

初始化 10 万虚拟资金

python3 scripts/simulate_trend.py init 100000

看看当前市场是什么环境

python3 scripts/market_regime.py

量化选股 — 四层漏斗筛出 Top 10

python3 scripts/stock_screener.py --top 10 --json

因子评分 — 从候选中评出 Top 5

python3 scripts/stock_screener.py --top 10 --json | \ python3 scripts/factor_scorer.py --top 5 --json

一键回测 — 看看策略表现

python3 scripts/backtest.py --start 2026-01-05 --end 2026-03-31 --json

就这么简单。剩下的交给 Cron 自动调度。


🏗️ 系统架构

┌─────────────────────────────┐
                    │     OpenClaw Cron 引擎       │
                    │   8 个定时任务 · 交易日感知    │
                    └──────────────┬──────────────┘
                                   │
          ┌────────────────────────┼────────────────────────┐
          │                        │                        │
          ▼                        ▼                        ▼
   ┌─────────────┐        ┌─────────────┐        ┌─────────────┐
   │   选股层     │        │   交易层     │        │   监控层     │
   │             │        │             │        │             │
   │ screener    │───┐    │ simulate    │    ┌───│ monitor     │
   │ 四层漏斗     │   │    │ 交易引擎     │    │   │ 盯盘引擎     │
   │             │   │    │             │    │   │             │
   │ scorer      │   │    │ rotation    │    │   │ daily       │
   │ 37因子评分   │   └───→│ 板块轮动     │←───┘   │ 日报生成     │
   │             │        │             │        │             │
   │ regime      │        │ akshare     │        │ health      │
   │ 市场环境     │        │ 增强因子     │        │ 健康检查     │
   └─────────────┘        └─────────────┘        └─────────────┘
          │                        │                        │
          └────────────────────────┼────────────────────────┘
                                   ▼
                    ┌─────────────────────────────┐
                    │         数据层               │
                    │  腾讯行情 · 新浪财经 · AKShare │
                    └─────────────────────────────┘

选股流水线

┌──────────────────────────────────────────────────────────┐
    │                    stock_screener.py                      │
    │                                                          │
    │   基本面过滤 ──→ 多因子预排序 ──→ 技术验证 ──→ 流动性检查  │
    │   PE/市值       非纯涨幅排序     均线/MACD      滑点≤0.5%  │
    │   成交额>3000万  市值+成交额     量比/放量                  │
    │                              ≥ 2/4 通过                   │
    │                         ↓ 10 只候选                       │
    └──────────────────────────┬───────────────────────────────┘
                               │
    ┌──────────────────────────▼───────────────────────────────┐
    │                    factor_scorer.py                       │
    │                                                          │
    │   10 基础因子 ──→ 27 增强因子 ──→ 板块轮动加分             │
    │   动量/量能       KDJ/布林带/OBV   行业排名加权             │
    │   均线/MACD       RSI/CCI/威廉                             │
    │   RSI/波动率      量价背离/支撑阻力                         │
    │                         ↓ Top 5                          │
    └──────────────────────────┬───────────────────────────────┘
                               │
    ┌──────────────────────────▼───────────────────────────────┐
    │                      AI 决策层                            │
    │                                                          │
    │   综合评分 × 市场环境 × 行业轮动 → 选 2-3 只,行业互补     │
    └──────────────────────────┬───────────────────────────────┘
                               │
    ┌──────────────────────────▼───────────────────────────────┐
    │                  simulate_trend.py                        │
    │                                                          │
    │   下单 → ATR止损 → 分级止盈 → 移动止盈 → 回撤熔断 → 平仓  │
    └──────────────────────────────────────────────────────────┘

🛡️ 八层风控体系

"活下来比赚钱重要。"
>
很多量化系统死在风控上——回测曲线漂亮,实盘一个黑天鹅就清零。
这个系统的风控不是装饰,是核心设计。八层防护,从组合级到个股级,层层递进。
┌───────────────────────────────────────────────────────────┐
    │                     P0 · 生存层                           │
    │                                                           │
    │   ┌─────────────────┐    ┌─────────────────┐             │
    │   │  组合回撤熔断     │    │    移动止盈      │             │
    │   │  峰值回撤≥10%    │    │  盈利回撤50%     │             │
    │   │  → 全清+冻结3日  │    │  → 锁定利润      │             │
    │   └─────────────────┘    └─────────────────┘             │
    └───────────────────────────────────────────────────────────┘
    ┌───────────────────────────────────────────────────────────┐
    │                     P1 · 控制层                           │
    │                                                           │
    │   ┌──────────┐  ┌──────────┐  ┌──────────┐              │
    │   │ ATR止损   │  │ 分级止盈  │  │ 防踩踏   │              │
    │   │ 动态调整  │  │ 三档减仓  │  │ 指数熔断  │              │
    │   └──────────┘  └──────────┘  └──────────┘              │
    └───────────────────────────────────────────────────────────┘
    ┌───────────────────────────────────────────────────────────┐
    │                     P2 · 精细层                           │
    │                                                           │
    │   ┌──────────┐  ┌──────────┐  ┌──────────┐              │
    │   │ 持仓天数  │  │ 跌停检测  │  │ 相关性   │              │
    │   │ 管理     │  │ 封板告警  │  │ 监控     │              │
    │   └──────────┘  └──────────┘  └──────────┘              │
    └───────────────────────────────────────────────────────────┘

| 层级 | 机制 | 触发条件 | 执行动作 | |:---:|:---|:---|:---| | P0 | 组合回撤熔断 | 峰值总资产回撤 ≥ 10% | 全部清仓 + 冻结交易 3 个交易日 | | P0 | 移动止盈 | 浮盈曾达 ≥ 10% 后回落至最高浮盈的 50% | 全部卖出锁定利润 | | P1 | ATR 动态止损 | 止损 = -1.5 × 20日ATR / 买入价 | 高波动自动放宽止损空间 | | P1 | 分级止盈 | TP1 / TP2 / TP3(环境自适应) | 分三档各减仓 1/3 | | P1 | 防踩踏 + 指数熔断 | ≥50% 持仓跌 > 3% 或上证跌 ≥ 3% | 暂停买入 + 收紧止损至 -3% | | P2 | 持仓天数管理 | 持有 ≥ 20 天且浮盈未达 TP1 | 强制平仓释放资金 | | P2 | 跌停封板检测 | 开盘一字跌停 | 告警邮件 + 次日优先处理 | | P2 | 持仓相关性监控 | 任意两只持仓相关系数 ≥ 0.7 | 分散化警告 + 换股建议 |

市场环境自适应

| 环境 | 止损 | TP1 | TP2 | TP3 | 最大仓位 | 最多持仓 | |:---:|:---:|:---:|:---:|:---:|:---:|:---:| | 🐂 牛市 | -8% | 15% | 25% | 35% | 90% | 4 只 | | 📊 震荡 | -7% | 15% | 25% | 35% | 85% | 3 只 | | 🐻 熊市 | -4% | 10% | 18% | 25% | 60% | 2 只 |

牛市给趋势呼吸空间,熊市优先保护本金。系统自动识别环境,无需手动切换。

📊 量化因子系统

10 个基础因子

| 因子 | 权重 | 说明 | |:---|:---:|:---| | change_pct | 25 | 涨跌幅 | | volume_ratio | 20 | 量比 | | ma_aligned | 20 | 均线多头排列 | | macd_signal | 15 | MACD 信号 | | turnover | 10 | 换手率 | | amount | 10 | 成交额 | | relative_strength | 20 | 相对强度 |

27 个增强因子

┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  多周期动量    momentum_5d / 10d / 20d / 60d + 加速度        │
│  波动率结构    upsidevol / downsidevol                     │
│  量价背离      volpricedivergence(价涨量缩检测)           │
│  KDJ          kdj_k / d / j + 金叉死叉信号                  │
│  布林带        bollpctb + bandwidth                       │
│  OBV          obv_direction + trend(能量潮)                │
│  多周期RSI     rsi_7d / 14d / 28d + combo                   │
│  价格位置      priceposition60d(距高低点)                 │
│  成交额集中度  volume_concentration                          │
│  支撑阻力      support / resistance_distance                 │
│  威廉指标      williams_r                                    │
│  CCI          cci(顺势指标)                                │
│  相对强弱      rsvsindex_20d(个股vs大盘)                  │
│  均线距离      pricevsma20 / ma60                          │
│                                                             │
└─────────────────────────────────────────────────────────────┘

因子权重自进化

交易反馈 → 因子贡献分析 → 权重调整 → 下一轮交易
    ↑                                    │
    └────────────────────────────────────┘
              每周五自动迭代
  • 📊 收集最近 20 笔交易,过滤污染样本(熔断/超时平仓)
  • 📈 计算各因子贡献与收益的相关性
  • ⚖️ 贡献高的 +2,贡献低的 -2
  • 🔄 每周向初始值回归 3%(防漂移)
  • 🚧 边界约束:每个因子权重 ∈ [5, 40]

🕐 自动调度

09:30 ─┬─ 早盘盯盘(回撤熔断/移动止盈/ATR止损)
  09:45 ─┼─ 开盘建仓(空仓触发,延后15分钟避开波动)
  09:50 ─┤
  10:00 ─┤
  10:20 ─┤
  10:40 ─┼─ 智能盯盘 ×6(每20分钟,含止盈止损检查)
  11:00 ─┤
  11:20 ─┤
  11:40 ─┤
  ───── 午休 ─────
  13:00 ─┤
  13:20 ─┤
  13:40 ─┤
  14:00 ─┼─ 午后盯盘 ×6(每20分钟)
  14:20 ─┤
  14:40 ─┤
  15:10 ─┼─ 尾盘风控(只卖不买)
  15:30 ─┼─ 收盘日报(夏普/回撤/相关性矩阵)
  16:00 ─┼─ 健康检查(异常邮件告警)
  ───── 周五额外 ─────
  16:00 ─┴─ 周度策略优化(因子权重自进化)
📅 自动识别法定节假日(30天)和调休交易日(3天),非交易时段智能跳过。

🧪 回测引擎

内置日K线级全流程回测,不是简单的买卖模拟——它跑的是完整的选股 → 评分 → 交易 → 风控链路。

python3 scripts/backtest.py --start 2026-01-05 --end 2026-03-31 --json

输出指标:

| 指标 | 说明 | |:---|:---| | 累计收益率 | 区间总收益 | | 年化收益率 | 标准化到年度 | | 最大回撤 | 最大峰谷跌幅 | | 夏普比率 | 风险调整后收益 | | 胜率 | 盈利交易占比 | | 盈亏比 | 平均盈利 / 平均亏损 | | 交易明细 | 每笔买卖记录 |


📁 项目结构

stock-trader-ai/
│
├── scripts/                        # 🔧 核心引擎
│   ├── monitor.py                  #   盯盘主引擎(风控+止盈+止损+跌停检测)
│   ├── simulate_trend.py           #   交易引擎(买卖/状态/ATR/熔断)
│   ├── stock_screener.py           #   选股引擎(四层漏斗过滤)
│   ├── factor_scorer.py            #   评分引擎(10+27因子)
│   ├── market_regime.py            #   市场环境识别(bull/range/bear)
│   ├── sector_rotation.py          #   板块轮动检测(14个行业)
│   ├── akshare_data.py             #   增强因子模块(27个技术因子)
│   ├── backtest.py                 #   回测引擎(全流程模拟)
│   ├── debate_selector.py          #   多Agent辩论选股(猎手/账房/守夜人)
│   │
│   ├── daily_report.py             #   📊 日报生成
│   ├── health_check.py             #   🏥 健康检查
│   ├── batch_query.py              #   📡 批量行情
│   ├── get_price.py                #   📈 单股行情
│   ├── get_news.py                 #   📰 财经新闻
│   ├── send_email.py               #   📧 邮件推送
│   └── time_guard.py               #   ⏰ 交易时段守卫
│
├── data/                           # 💾 数据目录
│   ├── trend_account.json          #   账户状态
│   ├── scoring_weights.json        #   因子权重配置
│   └── trading_calendar.json       #   交易日历(2026年)
│
├── config/                         # ⚙️ 配置
│   └── smtp.env.example            #   邮件配置模板
│
├── SKILL.md                        # OpenClaw 技能定义
├── README.md
├── LICENSE                         # MIT
└── .gitignore

⚙️ A 股铁律

系统内置 A 股交易规则,硬编码,不可绕过:

| 规则 | 实现 | |:---|:---| | T+1 | 买入当日不可卖出 | | 100股取整 | 主板/创业板 100 股起,科创板 200 股起 | | 涨跌幅限制 | 主板 ±10%,创业板 ±20%,ST ±5% | | 价格笼子 | 主板 ±2% 且 ±0.10 元,创业板 ±2% | | 交易费用 | 佣金万3(最低5元)+ 过户费 0.001% + 印花税 0.05% | | 防踩踏 | ≥50% 持仓同时大跌 → 暂停买入 |


🗺️ 路线图

  • [x] 基础选股 + 交易引擎
  • [x] 八层风控体系
  • [x] 27 个增强因子
  • [x] 因子权重自进化
  • [x] 内置回测引擎
  • [x] 多Agent辩论选股
  • [x] 持仓相关性监控
  • [ ] 机器学习因子挖掘 — 用 XGBoost/LightGBM 自动发现新因子
  • [ ] 多策略并行 — 趋势跟踪 + 均值回归 + 事件驱动
  • [ ] 实盘对接 — 通过券商 API 接入真实交易
  • [ ] Web Dashboard — 实时监控面板(持仓/收益/风控状态)
  • [ ] 社群信号共享 — 策略信号订阅 + 组合跟投

📜 免责声明

⚠️ 本项目仅供学习和研究目的。
>
- 所有交易均为虚拟盘模拟,不涉及真实资金
- 不构成任何投资建议
- 量化策略的历史表现不代表未来收益
- 使用者需自行承担因使用本项目产生的任何风险
>
投资有风险,入市需谨慎。

🤝 Contributing

欢迎提交 Issue 和 Pull Request!

Fork → Branch → Code → Test → PR
  • Fork 本仓库
  • 创建特性分支 (git checkout -b feature/amazing-feature)
  • 提交更改 (git commit -m 'feat: amazing feature')
  • 推送到分支 (git push origin feature/amazing-feature)
  • 开启 Pull Request

⭐ 如果觉得有用,点个 Star 鼓励一下


Star History Chart


Built with ❤️ for A股散户

🔗 More in this category

© 2026 GitRepoTrend · zhou343-de/stock-trader-ai · Updated daily from GitHub