9.2 KiB
9.2 KiB
中短期A股选股辅助系统 — 项目计划
一、项目定位
基于 opencode + Skill/Custom Tool 机制构建的 A股选股分析辅助工具。利用 AI 辅助多维度分析, 帮助用户做出更有信息量的选股决策。不涉及自动交易,仅做分析推荐,人工下单。
二、核心原则
- 验证优先 — 任何策略上线前必须经过历史回测,不依赖未经数据验证的经验法则
- 辅助决策,而非替代决策 — 输出结构化分析报告,给出评分和依据,最终决策权归用户
- 数据驱动 — 所有分析基于可量化的数据指标,避免主观模糊的语言
- 增量迭代 — 先建回测引擎,再建选股工具,最后补舆情分析
三、技术架构
┌──────────────────────────────────────────────┐
│ opencode TUI │
│ │
│ ┌──────────┐ ┌──────────┐ ┌────────────┐ │
│ │ Skills │ │ Skills │ │ Skills │ │
│ │ Screener │ │ Analyzer │ │ Overview/ │ │
│ │ │ │ │ │ Backtest │ │
│ └────┬─────┘ └────┬─────┘ └──────┬──────┘ │
│ │ │ │ │
│ ┌────▼──────────────▼───────────────▼──────┐ │
│ │ Custom Tools (TypeScript) │ │
│ │ stock-data / stock-screen / backtest │ │
│ └──────────────────┬───────────────────────┘ │
└─────────────────────┼─────────────────────────┘
│ Bun.$ `python3 ...`
┌─────────────────────▼─────────────────────────┐
│ Python Scripts │
│ ┌───────────┐ ┌──────────┐ ┌──────────────┐ │
│ │ AKShare │ │ Screener │ │ Backtest │ │
│ │ Data │ │ Engine │ │ Engine │ │
│ └───────────┘ └──────────┘ └──────────────┘ │
└───────────────────────────────────────────────┘
数据源
| 数据类别 | 来源 | 说明 |
|---|---|---|
| 日K/周K行情 | AKShare | stock_zh_a_hist |
| 实时行情 | AKShare | stock_zh_a_spot_em |
| 财务报表 | AKShare | stock_financial_analysis_indicator |
| 资金流向 | AKShare | stock_individual_fund_flow |
| 龙虎榜 | AKShare | stock_sina_lhb_detail_daily |
| 新闻舆情 | AKShare + 自建爬虫 | stock_news_em |
| 板块数据 | AKShare | stock_board_industry_* |
四、分阶段实施计划
阶段 0:环境与框架搭建 ✅
- 初始化项目目录结构
- 安装 Python 环境与依赖
- 编写 AGENTS.md 供 opencode 理解项目
- 搭建 Custom Tool 骨架(TypeScript → Python 桥接)
- 搭建 Skill 文件骨架
- 适配小资金(5万)场景约束
阶段 1:回测引擎(高优先级)
目标: 任何策略可以输入规则 + 参数,输出回测报告。
- 实现回测引擎核心
backtest_engine.py- 模拟交易(按收盘价成交)
- 计算收益曲线、胜率、最大回撤、夏普比率
- 支持多策略对比
- 实现
stock-backtest工具(TypeScript 包装) - 实现回测 Skill(指导 LLM 如何设计、运行、解读回测)
- 用历史数据跑几个经典策略验证引擎正确性
验证标准: 能跑出 60日均线上穿120日均线 这个经典策略在沪深300上的回测结果。
阶段 2:选股引擎
目标: 多因子打分,输出 Top N 推荐列表。
- 实现选股筛选器
stock_screener.py- 技术因子:趋势强度、均线排列、量价配合、RSI、MACD
- 资金因子:主力净流入(3/5/10日)、北向资金变化
- 基本面因子:PE 分位、ROE、营收/利润增速
- 消息因子:近期新闻数量、机构评级变化(后续补充)
- 加权打分公式
- 实现
stock-screen工具 - 实现选股 Skill(工作流:大盘评估 → 多因子筛选 → 排序输出)
阶段 3:单股深度分析
目标: 对任意股票生成结构化分析报告。
- 实现个股分析器
stock_analyzer.py- 技术面:趋势定位、均线状态、支撑/阻力位、技术形态识别
- 资金面:近期主力资金行为模式
- 基本面:PE/PB 历史分位、杜邦分析摘要
- 消息面:近30天关键公告、新闻情绪评分
- 实现
stock-analyzerSkill
阶段 4:大盘环境评估
目标: 每次选股前判断当前是否适合操作。
- 实现大盘分析
market_overview.py- 主要指数趋势判断
- 市场宽度(上涨/下跌家数比)
- 成交量趋势
- 板块轮动热力图
- 仓位建议(轻仓/中等/重仓)
- 实现
market-overviewSkill
阶段 5:舆情分析增强
- 新闻爬取与解析
- 关键词/情绪评分
- 机构研报监控
五、因子体系设计(初版)
多因子打分权重
| 维度 | 权重 | 子因子 |
|---|---|---|
| 技术面 | 35% | 趋势强度、均线排列、量价配合、RSI位置 |
| 资金面 | 30% | 主力净流入趋势、北向资金、大单占比 |
| 基本面 | 25% | PE分位、ROE、利润增速、营收增速 |
| 消息面 | 10% | 新闻热度、机构评级方向 |
每个因子标准化为 0-100 分,加权求和得综合分。
六、风险与应对
| 风险 | 应对方案 |
|---|---|
| AKShare 接口变动 | 封装统一数据层,多数据源 fallback |
| LLM 分析幻觉 | 所有数据由 Python 脚本计算,LLM 仅做解读和呈现 |
| 策略过拟合 | 回测引擎支持样本外检验(滚动窗口) |
| 市场风格切换 | 多因子框架允许动态调整权重 |
七、目录结构
stock/
├── .opencode/
│ ├── tools/ # Custom Tools (LLM 可调用的函数)
│ │ ├── stock-data.ts # 数据获取工具组
│ │ ├── stock-screen.ts # 选股筛选工具组
│ │ └── stock-backtest.ts # 回测工具组
│ └── skills/ # Agent Skills (工作流指令)
│ ├── stock-screener/ # 选股工作流
│ ├── stock-analyzer/ # 单股分析工作流
│ ├── market-overview/ # 大盘评估工作流
│ └── stock-backtest/ # 回测工作流
├── scripts/ # Python 实现
│ ├── market_data.py # 数据获取 (AKShare)
│ ├── stock_screener.py # 多因子选股引擎
│ ├── stock_analyzer.py # 个股深度分析
│ ├── backtest_engine.py # 回测引擎
│ └── sentiment.py # 舆情分析
├── docs/
│ └── PLAN.md # 本文件
├── requirements.txt
├── AGENTS.md # opencode 项目理解
└── README.md
八、小资金(5万)场景适配
约束条件
| 约束 | 影响 | 设计调整 |
|---|---|---|
| 每股单价限制 | 股价 >500 元直接买不起1手 | 选股池自动过滤高价股,优先 10-50 元区间 |
| 集中持仓 | 5万只能分散到 2-4 只 | 选股输出 Top 3-5,附带仓位分配建议 |
| 手续费敏感 | 单次交易 ~60 元(0.12%) | 每次推荐附带交易成本估算,避免过度拆分 |
| 心理因素 | 5% = 2500 元,感受强烈 | 所有风控指标同时用百分比和绝对金额展示 |
| 收益预期 | 年化 20% = 10000 元 | 目标定位为学习验证,非财富增长 |
仓位分配参考
| 大盘环境 | 总仓位 | 单只最大 | 持有数量 |
|---|---|---|---|
| 强势(重仓) | 3.5-4万(70-80%) | 1-1.5万/只 | 3-4只 |
| 中性(中等) | 1.5-2.5万(30-50%) | 0.5-1万/只 | 2-3只 |
| 弱势(轻仓) | <1.5万(<30%) | <0.5万/只 | 1-2只 |
价格可买性校验
每只推荐股票前校验:股价 × 100 ≤ 计划仓位
九、里程碑时间线
| 阶段 | 预计可交付 | 里程碑 |
|---|---|---|
| 阶段 0 | ✅ 框架搭建 | 项目骨架可运行,上下文齐全 |
| 阶段 1 | 回测引擎 | 可验证任意策略历史表现 |
| 阶段 2 | 选股引擎 | 每天可生成 Top N 推荐 |
| 阶段 3 | 单股分析 | 可对任意股票出详细分析报告 |
| 阶段 4 | 大盘评估 | 判断市场可操作性 |
| 阶段 5 | 舆情分析 | 消息面因子补充 |
最后更新:2026-07-01