<< All versions

Skill v1.0.0

currentAutomated scan100/100
xingyunyang01/geek04/stock-wiki
──Details
PublishedOctober 30, 2026 at 01:09 AM
Content Hashsha256:e1bdccb06dd03601...
Git SHA6f41fd2a84d5
──Files
Files (1 file, 11.8 KB)
SKILL.md11.8 KBactive
SKILL.md · 187 lines · 11.8 KB

metadata: version: "1.0.0"



name: stock-wiki description: "用 LLM 构建和维护个人股票投研知识库、逻辑验证库。当用户需要创建股票相关的知识库、导入研报/新闻/财报、查询投研逻辑、维护知识库健康状态(如检查逻辑矛盾)时触发。关键词:投研、股票、研报、财报、知识库、wiki、ingest、导入资料、知识管理。" version: 1.0.0


stock-wiki - 用 LLM 构建股票投研知识和操作经验持续积累的知识库

核心理念

不同于 RAG 每次从零检索,LLM Wiki 让 LLM 持续构建并维护一个结构化的 Markdown 投研 Wiki。每次导入新资料(研报、新闻、财报),LLM 不是简单索引,而是阅读、提取关键信息、整合到现有 Wiki 中——更新个股档案、修订行业逻辑、标注多空矛盾、强化或挑战已有投资论点。知识编译一次,持续更新,而非每次查询重新推导。

三层架构

1. Raw Sources(原始资料)

  • 存放在 /Users/Admin/workspace/python/deepagents-test/deepagents/data/raw/ 目录
  • 不可变——LLM 只读不改,作为投研的“真相来源”
  • 包含:券商研报(PDF)、财经新闻、宏观数据、公司公告、交易复盘记录等

2. Wiki(知识库)

  • 存放在 /Users/Admin/workspace/python/deepagents-test/deepagents/data/wiki/ 目录
  • LLM 生成并维护的 Markdown 文件集
  • 包含:个股档案页、行业综述页、宏观概念页、投资策略页、综合分析页
  • LLM 全权管理:创建页面、更新、维护交叉引用、保持逻辑一致性

3. Schema(配置)

  • 使用 /Users/Admin/workspace/python/deepagents-test/deepagents/data/schema.md 文件中的定义(如果文件存在)
  • 告诉 LLM Wiki 的结构、命名约定、工作流
  • 你和 LLM 共同迭代演进

关键文件

  • /Users/Admin/workspace/python/deepagents-test/deepagents/data/wiki/index.md — 内容总览目录。按类别组织(个股、行业、宏观、策略),每条含链接 + 核心逻辑一句话摘要。LLM 每次导入时更新。查询时 LLM 先读索引再深入具体页面。
  • /Users/Admin/workspace/python/deepagents-test/deepagents/data/wiki/log.md — 投研操作日志。按时间顺序追加记录(导入、查询、维护),格式如 ## [2026-04-29] ingest | 某某券商-宁德时代深度研报。

三大核心操作

Ingest(导入与编译)

当用户说"导入"、"处理这份研报"、"添加到知识库"时执行:

⚠️ 第一步永远是 markitdown 预处理(详见下方"实战流程"第 0 步)。禁止直接 `read_file` 任何 PDF。
  1. 读取 /Users/Admin/workspace/python/deepagents-test/deepagents/data/raw/ 中的新资料(只读 .md / .md 转换后的文本,PDF 跳过)
  2. 在 /Users/Admin/workspace/python/deepagents-test/deepagents/data/wiki/ 中创建资料摘要页(source-xxx.md)
  3. 更新相关个股/行业页:将新数据、新观点整合进对应的 wiki/companies/ 或 wiki/industries/ 页面(可能涉及多个页面)
  4. 更新 /Users/Admin/workspace/python/deepagents-test/deepagents/data/wiki/index.md 索引
  5. 在 /Users/Admin/workspace/python/deepagents-test/deepagents/data/wiki/log.md 中追加操作记录
  6. 标注逻辑冲突:如果新资料与已有认知矛盾(如:之前看多,新研报看空),必须在对应页面明确标注冲突点。

Query(查询与推演)

当用户提问或要求分析时执行:

  1. 读取 /Users/Admin/workspace/python/deepagents-test/deepagents/data/wiki/index.md 定位相关页面
  2. 深入阅读相关个股、行业页面
  3. 综合回答,附带引用(指向具体的 source 或 wiki 页面)
  4. 有价值的分析结论(如:某次复盘总结出的交易模式)可以回写为 Wiki 新页面,让探索也能积累。

输出格式可以多样:Markdown 页面、个股对比表格、SWOT 分析等。

Lint(维护与体检)

当用户说"检查知识库"、"维护一下"时执行:

  1. 检查页面间的内容冲突(如:A 研报说产能过剩,B 研报说供不应求)
  2. 发现被新财报/新政策取代的过时内容(标记为 [已过时])
  3. 找出无入站链接的孤立页面
  4. 识别被提及但缺少专属页面的重要概念(如:某新出的行业术语)
  5. 发现缺失的交叉引用(如:个股页未链接到对应的行业页)
  6. 建议可通过网络搜索填补的数据空白(如:缺少最新股价或 PE 数据)

初始化工作流

当用户说"创建知识库"、"初始化" 时:

  1. 创建目录结构:
  • /Users/Admin/workspace/python/deepagents-test/deepagents/data/raw/ # 原始资料
  • /Users/Admin/workspace/python/deepagents-test/deepagents/data/raw/assets/ # 图片等附件
  • /Users/Admin/workspace/python/deepagents-test/deepagents/data/wiki/ # Wiki 页面
  • /Users/Admin/workspace/python/deepagents-test/deepagents/data/wiki/index.md # 索引
  • /Users/Admin/workspace/python/deepagents-test/deepagents/data/wiki/log.md # 操作日志
  1. 创建初始 /Users/Admin/workspace/python/deepagents-test/deepagents/data/wiki/index.md(空目录模板)
  2. 创建初始 /Users/Admin/workspace/python/deepagents-test/deepagents/data/wiki/log.md(首条记录:Wiki 创建)
  3. 如有必要,创建 /Users/Admin/workspace/python/deepagents-test/deepagents/data/schema.md schema 文件

最佳实践

  • 逐条导入资料并保持参与——阅读摘要、检查更新、引导 LLM 聚焦重点(如:重点看风险提示)
  • 好的查询回答要回写到 Wiki,让探索也能复利
  • 定期执行 Lint 保持 Wiki 健康,尤其是财报季结束后
  • Wiki 就是一个 Markdown 文件的 Git 仓库——天然拥有版本历史
  • 使用 Obsidian 作为浏览 IDE,利用图谱视图查看“个股-行业-宏观”的逻辑脉络
  • 页面的 YAML frontmatter 可以配合 Dataview 插件生成动态表格(如:自动汇总所有“强烈推荐”评级的个股)

股票投研实战经验

以下经验来自实际运行投研知识库过程中积累的模式和教训。

资料获取

  • 微信公众号/财经类、股票类文章:推荐用 Obsidian Web Clipper 浏览器扩展剪藏为 Markdown,再放入 /Users/Admin/workspace/python/deepagents-test/deepagents/data/raw/ 目录。
  • 券商研报 / 财报 PDF:放入 /Users/Admin/workspace/python/deepagents-test/deepagents/data/raw/ 后,必须在导入前先转换为 Markdown,使用项目内置的 markitdown:
bash
/Users/Admin/workspace/python/deepagents-test/deepagents/bin/markitdown data/raw/<file>.pdf -o data/raw/<file>.md
⚠️ 硬性约束(违反会浪费 token 且触发上游警告)
1. 禁止直接对 data/raw/*.pdf 调用 read_file 工具。PDF 是二进制,会被 deepagents 编码为 base64 文件块塞回 LLM,既不可读(OpenAI 兼容模型不支持原生 PDF 上传),又会触发 LC_AUTOGENERATED 文件名警告。
2. 只读转换后的 .md 文件 + data/raw/assets/ 下被 markitdown 提取出来的图片资源。
3. 如果某份 PDF 没有对应的 .md,说明转换未完成——先跑 markitdown 再继续。
  • 剪藏后的文件自带 YAML frontmatter(title、source、author、created、tags),可直接利用。

页面命名规范

实践中形成的股票 Wiki 文件命名约定:

页面类型命名格式示例
资料摘要source-{关键词/股票代码}.mdsource-300750-宁德时代2025年报.md
个股页{股票代码}-{公司简称}.md300750-宁德时代.md、600519-贵州茅台.md
行业页industry-{行业名}.mdindustry-动力电池.md、industry-白酒.md
宏观/概念页macro-{概念名}.mdmacro-美联储加息.md、macro-国产替代.md
策略/复盘strategy-{策略名}.mdstrategy-网格交易复盘.md

Ingest 实战流程(详细版)

一次完整的投研资料导入通常产生以下操作:

  1. 【强制前置】预处理原始资料
  • 扫描 data/raw/,找出所有未经处理的 PDF(即同名 .md 不存在的 PDF)。
  • 对每个 PDF 执行:

``bash /Users/Admin/workspace/python/deepagents-test/deepagents/bin/markitdown \ data/raw/<file>.pdf -o data/raw/<file>.md ``

  • markitdown 会自动把 PDF 内的图片提取到 data/raw/assets/<file>/。
  • 转换完成后,本流程后续所有"读取原文"步骤都读 .md 版本,不要读 .pdf。
  1. 复制原文到 `/Users/Admin/workspace/python/deepagents-test/deepagents/data/raw/` — 保持原始资料不可变
  2. 创建摘要页 — source-xxx.md,包含:
  • YAML frontmatter(tags: [研报, 新能源], source, author, date, url)
  • 核心观点(看多/看空/中性)
  • 关键数据(营收、净利、目标价)
  • [[双向链接]] 指向相关个股和行业页
  1. 创建/更新个股页 — 提取并更新:
  • 基本面摘要(业务模式、护城河)
  • 核心逻辑(看多理由、看空风险)
  • 最新催化剂(事件驱动)
  • 估值与财务数据
  1. 创建/更新行业/宏观页 — 将个股放入更大的背景中(如:宁德时代的更新要同步到“动力电池行业”页面)
  2. 交叉引用 — 所有页面之间用 [[wikilink]] 互相关联
  3. 更新 index.md — 按类别(个股/行业/宏观/资料)添加新条目
  4. 更新 log.md — 记录创建了哪些页面、更新了哪些页面、关键要点、与已有知识的关联

交叉引用原则

  • 每个个股页面底部都要有“来源”链接,指回资料摘要页。
  • 新资料导入时,主动检查已有页面是否需要更新(如:新财报数据要覆盖旧数据,并记录变化趋势)。
  • 摘要页末尾列出“相关概念”,形成概念网络(如:某光伏股关联到“碳中和”、“硅料价格”)。
  • 标注跨资料关联:当多篇研报提到相似观点时,在页面中明确标注(如“与 [[source-xxx]] 的共同主题:行业集中度提升...”)。

页面 Frontmatter 模板

yaml
---
tags: [source-summary, report, 新能源] # 资料摘要页
# 或
tags: [stock, company, 300750] # 个股页
# 或
tags: [industry, concept] # 行业/概念页
type: company | industry | macro | strategy
ticker: "300750" # 仅个股页需要
sector: "电力设备"
source: "原文标题"
author: 作者名/券商
date: YYYY-MM-DD
url: "原始链接"
---

知识关联发现

导入第二篇及以后的资料时,重点关注: 共同主题:多篇研报反复出现的观点要在页面中标注(如:“多家券商均看好某公司出海逻辑”) 矛盾观点:不同资料的冲突要明确标注,不偷偷覆盖(如:“A券商认为产能过剩,但B券商认为需求旺盛,需关注后续库存数据”) 补充关系:新资料为已有概念增加案例/数据时,更新已有页面而非只创建新页面 逻辑演化:同一投资逻辑在不同时期的表述可能不同,页面要综合呈现(如:从“主题炒作”演变为“业绩兑现”)

版本管理建议

  • 竞品档案等时效性强的内容,建议带日期命名(如 competitor_analysis_20260102.md)
  • Wiki 页面本身不需要日期后缀——通过 git 历史追踪变化
  • /Users/Admin/workspace/python/deepagents-test/deepagents/data/wiki/log.md 是了解知识库演进的最佳入口s

常见的一次导入规模

根据实践,一篇中等长度的深度研报或新闻(20-30页)通常:

  • 新建 2-4 个页面(1 个摘要 + 1 个个股页 + 1-2 个相关行业/概念页)
  • 更新 2-4 个已有页面(如:更新行业综述、更新竞争对手数据)
  • 总计触及 5-8 个文件
All versions