--- title: 市场数据体系 + 小果情报分析需求文档 tags: [需求文档, 知微, 市场数据, 小果, 行业热点] created: 2026-06-18 status: 活跃 priority: 高 --- # 市场数据体系 + 小果情报分析需求文档 ## 一、痛点现状 ### 1.1 MoFin 市场模块三个子页面全部失效 | 页面 | 状态 | 问题 | |------|------|------| | 行业热点 | 数据虚假 | 行业涨幅为编造(如塑料+389%),数据源是 LLM cron 凭空生成,不是真实API | | 知微洞察 | 空白 | "暂无洞察",没有分析流程 | | 潜力股挖掘 | 空白 | "暂无挖掘",没有挖掘流程 | 根因:原 cron `b818e2bfd8d1`(市场数据采集)是 LLM 驱动的,不是真正的数据采集脚本。LLM 没有真实数据源,只能编造。该 cron 已失效,但 market.json 中的假数据还在。 ### 1.2 行业数据割裂 - `stock_profiles.json` 中 16/38 只有行业数据(仅覆盖持仓股),22只自选股行业为空 - 行业分类无标准化体系(各行业中文名不一致) - 无自动化行业补全流程 - `market_watch.py`(东方财富API行业采集脚本)已开发但未接入 Dashboard ### 1.3 小果本地 LLM 可用但未被利用 - 小果(node122:18003, MLX Qwen3.6-27B, API port 8645) - 免费(本地运行),适合做不需要高推理能力但费 token 的重复活 - 当前未被整合到知微的情报分析流程中 --- ## 二、总体设计原则 ### 2.1 数据来源唯一铁律 **所有 MoFin Dashboard 展示的数据,必须来自真实API,禁止 LLM 编造。** LLM 只能分析真实数据,不能生成伪数据。 ### 2.2 分类规范 - **市场模块展示内容 = 真实API数据 + 知微(智)分析 + 小果情报** - 数据层(纯脚本)→ 分析层(LLM/知微)→ 展示层(Dashboard) - 每条展示数据的来源必须可追溯 ### 2.3 小果定位 - **不是用来替代知微的**,是辅助工具 - 跑在本地 Mac Mini,免费,但慢且推理能力弱 - 适合:分类/标注/情感分析/简单判断 - 不适合:复杂推理/多步决策/需要深度分析 - 输出给知微参考,知微做最终判断 --- ## 三、模块一:行业热点(行业数据采集体系) ### 3.1 核心流程 ``` 东方财富 push2 API ↓ (market_watch.py, no_agent 纯脚本, 每30分钟) 行业原始数据 (涨跌/成交量/资金流向/上涨家数/下跌家数) ↓ (清洗+标准化) market.json (标准化数据,写入 Dashboard data/) ↓ (供各模块使用) MoFin 行业热点 | 知微D2行业分析 | 小果情报参考 ``` ### 3.2 API 规范 **首选:东方财富 push2 API** 行业板块: ``` GET https://push2.eastmoney.com/api/qt/clist/get ?pn=1&pz=15&po=1&np=1 &fields=f2,f3,f4,f12,f14 &fs=m:90+t:2 ``` 返回字段:f2(最新价), f3(涨跌幅%), f4(涨跌额), f12(代码), f14(名称) 概念板块: ``` GET https://push2.eastmoney.com/api/qt/clist/get ?pn=1&pz=10&po=1&np=1 &fields=f2,f3,f4,f12,f14 &fs=m:90+t:3 ``` **降级:akshare(同花顺数据)** ``` ak.stock_board_industry_summary_ths() → 涨跌幅, 上涨家数, 下跌家数, 净流入资金 ``` **三级降级:web_search 兜底** 当前两个API都失败时,web_search 搜索当日行业涨跌排行补充 ### 3.3 行业分类标准化 建立一级/二级行业分类体系(参考申万/Swift行业分类): | 一级 | 二级 | 对应持仓/自选 | |------|------|-------------| | TMT/科技 | 半导体/消费电子/互联网/通信设备 | 中芯/德明利/丘钛/腾讯/阿里/博创/长飞 | | 新能源 | 新能源汽车/储能/新能源材料 | 比亚迪/宁德/海博思创/中科电气/信义光能 | | 金融地产 | 银行/保险/房地产 | 招商银行/中银香港/中国平安/万科/人寿 | | 医药 | 创新药/医药流通 | 百济神州/辽宁成大 | | 工业材料 | 有色金属/复合材料/电子元器件/新材料 | 紫金矿/法拉电子/中科/诺德 | | 资源 | 黄金/贵金属 | 黄金ETF | | 消费 | 汽车/消费电子 | 小鹏/TCL | | ... | ... | ... | **存量补全规则**: - 持仓股:补全行业 + 业务描述(优先级高) - 自选股:补全行业(优先级中) - 新入自选:创建时即补全行业(规范) 补全方法:优先查腾讯 API 的行业字段,次选 akshare,最后 web_search ### 3.4 market.json 输出结构 ```json { "timestamp": "2026-06-18 14:30", "total_sectors": 56, "up_ratio": 45.2, "mood": "neutral", "sectors": [ { "name": "半导体", "code": "BK0477", "price": 5287.63, "change_pct": 2.35, "volume": 325.6, "turnover": 528.4, "up_count": 68, "down_count": 12, "net_inflow": 12.5 } ], "concepts": [...], "top_gainers": [前5], "top_losers": [末3], "source": "eastmoney" } ``` 字段规范: - `change_pct`: **百分数**(如+2.35表示涨2.35%),不是绝对点数 - `price`: 板块指数点,不是股票价格 - `up_count/down_count`: 板块内上涨/下跌家数(仅 ak 降级时才有) - `net_inflow`: 资金净流入(亿元,仅 ak 降级时才有) - `source`: 数据来源标识(eastmoney/ths/web) ### 3.5 stock_profiles.json 行业数据维护 **自动补全流程**(每周/每月): ``` 第1步:筛选 stock_profiles.json 中 sector 为空的条目 第2步:查腾讯 API 的行业分类字段(港股/A股)→ 匹配申万行业 第3步:腾讯没有 → 查 akshare 股票基本信息 第4步:都不行 → web_search 查公司主营业务,提取行业关键词 第5步:写入 stock_profiles.json 第6步:记录补全日志(谁补的、依据来源、置信度) ``` **人工审核流程**: - 自动补全的行业标记为"待审核" - 知微在分析中遇到缺失/错误时手动修正 - 老爸也可以直接编辑 --- ## 四、模块二:知微洞察 + 潜力股挖掘 ### 4.1 知微洞察 定义:基于行业数据和持仓分析,每日输出 1-3 条有操作价值的洞察。 **数据来源**: - market.json 行业热点(当日涨跌幅+资金流向) - decisions.json 策略评估结果 - 小果情报分析(见第五部分) - web_search 新闻 **洞察类型**: | 类型 | 触发条件 | 示例 | |------|---------|------| | 行业轮动预警 | 持仓行业连续3天跑输大盘>2% | 新能源材料连续3天跑输,需关注 | | 资金异动提醒 | 行业资金净流入/出异常>5亿 | 半导体单日净流入12亿,板块转强 | | 策略调整建议 | 某行业趋势反转,影响持仓策略 | 银行板块跌破MA60,万科止损需收紧 | | 新机会发现 | 非持仓行业连续强势>3天 | 军工板块连涨3天,值得关注 | | 风险预警 | 行业政策突变/突发事件 | 美国关税政策影响光伏行业 | **输出位置**: - MoFin Dashboard → 知微洞察 - XMPP 推送(有实质内容才推) - 关联到策略评估的 D5 消息面 ### 4.2 潜力股挖掘 定义:从行业热点中筛选出与现有持仓/自选相关的潜力标的。 **挖掘流程**: 1. 每日从行业热点中找出最强势的 1-3 个行业 2. 从强势行业中筛选出:基本面+技术面+估值 都符合标准的个股 3. 对比现有持仓/自选,去重 4. 写入 watchlist.json(如果符合买入条件) 5. 输出到 MoFin 潜力股挖掘 **筛选标准**: - 所属行业排名前20%(当日涨幅) - PE/估值合理(非亏损股) - 技术形态向好(近期有放量突破) - 与现有持仓/自选不重复 **输出形式**: - 每只标的名 + 行业 + 选取理由(一句话) - 建议关注级别(高/中/低) - 建议买入区间(可选) --- ## 五、模块三:小果情报分析 ### 5.1 小果能力概述 | 能力 | 适用场景 | 精度要求 | 频率 | |------|---------|---------|------| | 新闻情感分类 | 个股新闻/行业新闻 → 正面/负面/中性 | 70%+ 即可 | 每日 | | 量价异常标注 | 当日成交量/换手率/量比异常识别 | 80%+ | 每日20:00 | | 行业热词提取 | 行业新闻关键词提取 | 可接受 | 每日 | | 简单问答 | 替代知微做低精度任务 | 看情况 | 按需 | **调用方式**: - 知微通过 Hermes delegate_task 向 xiaoguo profile 派发任务 - 或通过 API 直调(http://node122:8645) - 小果的结果作为知微分析的输入参考 ### 5.2 新闻情感分析 **输入**:从 web_search 搜索到的个股/行业新闻标题+摘要 **输出**(JSON): ```json { "code": "00700", "name": "腾讯控股", "news": [ { "title": "腾讯游戏业务Q2增长超预期", "source": "新浪财经", "sentiment": "positive", "confidence": 0.85, "keywords": ["游戏", "超预期", "增长"] } ], "overall_sentiment": "positive" } ``` **实现方式**: - 知微在评估 cron 中,web_search 拉取新闻后,将新闻文本发给小果分类 - 小果返回情感标签 + 置信度 - 知微汇总到 D5 消息面分析 ### 5.3 量价异常标注 **输入**:当日行情数据(收评)——价格/成交量/换手率/量比 **输出**(JSON): ```json { "code": "300750", "name": "宁德时代", "anomalies": [ { "type": "volume_surge", "detail": "今日成交量3.2倍于20日均量", "assessment": "放量下跌,警惕" } ] } ``` **异常类型**: - `volume_surge`: 量比>2 的异常放量 - `volume_shrink`: 量比<0.5 的异常缩量 - `price_volume_divergence`: 价量背离(价涨量缩或价跌量放) - `turnover_spike`: 换手率异常高(>20只日均换手3倍) - `amplitude_surge`: 振幅异常大 **实现方式**: - 数据收集脚本(collect_evaluation_data.py)收评后,将当日数据发给小果 - 小果标注异常点 - 标注结果写入 evaluation_input.json 的 anomaly 字段 ### 5.4 持续情报监控(新增) 让**小果持续跑**,不只在收评时分析: ``` 小果持续运行(每15-30分钟) ↓ 扫描行业热点数据(market.json) ↓ 发现异常 → 写入 小果情报日志 ↓ 知微评估 cron 读取情报日志,判断是否有价值 → 整合到分析报告 ``` **持续监控内容**: - 行业排行榜变化:前3名/末3名的行业 - 涨跌比变化:上涨/下跌比例突变 - 资金流向变化:突然转向的行业 - 新闻突发:web_search 发现的重大新闻 --- ## 六、废弃清单 ### 立即废弃 | 组件 | 原因 | 替代 | |------|------|------| | `strategy_evaluator.py` 中的评估逻辑(R/R、评分、阶段一/二) | LLM cron 做六维评估,脚本不做判断 | 保留脚本做数据采集/统计部分 | | 旧 cron `b818e2bfd8d1`(市场数据采集 LLM 版) | 不可靠、数据虚假 | 新建 no_agent market_watch cron | | `market.json` 旧数据 | 虚假数据 | 新 market_watch 覆盖 | ### 逐步废弃 | 组件 | 原因 | 替代 | |------|------|------| | 旧 `EXPERT_SYSTEM_DESIGN.md`(项目目录和 Dashboard 目录各一份) | 过时,与新系统不一致 | 新需求文档统一管理 | | `stock_profiles.json` 中空字段 | 无数据占位 | 自动补全脚本 | --- ## 七、实施优先级 ### P0(当前可做) 1. 修复 market_watch 脚本:输出目录改为 Dashboard data/ 2. 创建 market_watch cron(no_agent,每30分钟) 3. 小果 API 调用验证(发一条简单测试) 4. 废弃旧 market.json + 旧 cron ### P1(本周) 5. stock_profiles.json 行业自动补全脚本 6. 知微洞察 MVP(每日1条有价值洞察) 7. 小果新闻情感分析接入 ### P2(下周) 8. 潜力股挖掘 MVP 9. 小果持续情报监控 10. 行业数据刷新 Dashboard 展示 ### P3(远期) 11. 行业资金流向可视化 12. 行业轮动预警系统 13. 小果自主情报Bot(主动推送) --- ## 八、关联文件规范 所有本需求涉及的组件,必须在以下文件中标注链接: - `strategy-evaluation` skill 中标注 D2/D5 数据源为 market.json + 小果 - `mofin-system-arch` skill(如有)中标注新模块 - `collect_evaluation_data.py` 中标注加入行业数据合并 - 本需求文档链接进所有相关 skill 的 references 部分 --- *本需求文档为权威需求,高于任何 skill/记忆/脚本中的描述。如有不一致,以本文档为准。*