mx-skill-cc

0
0
Source

M-Intelligence Financial Smart Skill Set (mx-skills). A one-stop platform covering the full spectrum of financial investment research capabilities, including financial data queries, news search, macro data, smart stock screening,financial Q&A, industry research, stock tracking.

Install

mkdir -p .claude/skills/mx-skill-cc && curl -L -o skill.zip "https://mcp.directory/api/skills/download/9521" && unzip -o skill.zip -d .claude/skills/mx-skill-cc && rm skill.zip

Installs to .claude/skills/mx-skill-cc

About this skill

东方财富妙想金融技能集(mx-skills)

概述

本技能集是围绕东方财富金融数据库构建的一站式投研能力平台,包含 14 个专业化子技能。 本文件为 Router(路由层),负责根据用户意图匹配正确的子技能并调度执行。

核心原则

  • 不要自行编造金融数据或研究报告,必须通过调用脚本接口获取真实数据。
  • 各子技能的详细指令(输入输出规范、错误处理、模板格式)存放在 references/ 目录下。
  • 路由确定后,先读取对应 reference 文件,再执行对应脚本。

环境变量

变量名说明来源
EM_API_KEY东方财富妙想 API Key(#1-#14 必需)优先从环境变量读取;默认已配置在 {baseDir}/.env
EM_API_KEY_POOL多 Token 配额轮换(逗号分隔,如 em_xxx,em_yyy可选;当前脚本仅读取 EM_API_KEY,多 Token 轮换需由上层封装实现
IWENCAI_API_KEYiwencai NL 语义检索 Key(仅 #16 a_stock_research 的 NL 检索需要)可选;申请见 https://www.iwencai.com/skillhub

如需自定义 Key,可设置环境变量覆盖:

export EM_API_KEY="your_key_here"

多 Token 配额轮换(推荐)

单 Token 每日调用限额约 50 次,高频场景下极易耗尽。建议由外层规划引擎实现 Token 池轮换:

export EM_API_KEY_POOL="em_xxx,em_yyy,em_zzz"

轮换策略建议:

  • 优先级策略:按 Token 可靠性排序,优先使用高优先级 Token
  • 均衡策略:轮询使用,避免单 Token 过早耗尽
  • 耗尽降级:当所有 Token 配额用完时,自动降级到 BaoStock / yfinance 等备用数据源

注:mx-skills 原生脚本仅读取 EM_API_KEYEM_API_KEY_POOL 的解析与轮换逻辑需由调用方(如 kimi_mx_agent.py 等封装层)实现。


调用配额与限额

每日调用限额

技能类别限额超限表现
所有技能(除金融数据查询外)每个技能每日约 50 次接口返回 rate limitquota exceeded 或类似限流提示
金融数据查询单次最多 5 个 实体自动截取前 5 个实体,并在结果说明中提示

限额实战建议

  1. 批量查询时控制实体数量:金融数据查询单次不超过 5 个股票/基金,超出需拆分为多次调用
  2. 监控配额消耗:高频场景(如批量诊断、批量回测)建议由外层封装记录各 Token 当日已用次数
  3. 预留余量:当单 Token 当日调用接近 45 次时,切换到备用 Token
  4. 降级策略:所有 mx-skills 技能在配额耗尽或接口异常时,建议自动降级到 BaoStock / yfinance 等本地数据源

依赖安装

首次使用前确保依赖已安装:

pip3 install httpx pandas openpyxl --user

路由决策表

根据用户意图,按优先级匹配子技能:

#用户意图子技能Reference 文件脚本路径
1自然语言问答、概括性金融问题、"帮我查一下"/"分析一下"/"解释一下"金融问答references/mx_financial_assistant.mdscripts/mx_financial_assistant/generate_answer.py
2查询结构化金融数据(股价、财报、估值、盘口等)金融数据查询references/mx_finance_data.mdscripts/mx_finance_data/get_data.py
3搜索财经资讯、公告、研报、新闻、政策金融资讯搜索references/mx_finance_search.mdscripts/mx_finance_search/get_data.py
4查询宏观经济数据(GDP、CPI、M2、PMI 等)宏观数据查询references/mx_macro_data.mdscripts/mx_macro_data/get_data.py
5选股、选板块、选基金、筛选 ETF/可转债智能选股references/mx_stocks_screener.mdscripts/mx_stocks_screener/get_data.py
6生成行业研究报告行业研究references/industry_research_report.mdscripts/industry_research_report/get_data.py
7生成行业/个股跟踪报告(日报/周报/月报)行业个股跟踪references/industry_stock_tracker.mdscripts/industry_stock_tracker/generate_industry_stock_tracker_report.py
8生成首次覆盖报告或深度研究报告首次覆盖/深度研究references/initiation_of_coverage_or_deep_dive.mdscripts/initiation_of_coverage_or_deep_dive/generate_deep_research_report.py
9业绩点评、财报分析、季报/半年报/年报点评业绩点评references/stock_earnings_review.md + references/stock_earnings_review_business_logic.mdscripts/stock_earnings_review/(多步骤)
10单只股票综合诊断("怎么样"/"值得买吗"/"该卖吗")股票诊断references/stock_diagnosis.mdscripts/stock_diagnosis/get_data.py
11单只基金综合诊断基金诊断references/fund_diagnosis.mdscripts/fund_diagnosis/get_data.py
12发现市场热点、今日热点、热股、活跃赛道热点发现references/stock_market_hotspot_discovery.mdscripts/stock_market_hotspot_discovery/get_data.py
13可比公司分析、同业对比、经营+估值横向比较可比公司分析references/comparable_company_analysis.mdscripts/comparable_company_analysis/(get_data.py + excel_theme.py)
14专题研究报告、主题投资、事件驱动研究专题研究references/topic_research_report.mdscripts/topic_research_report/get_data.py

补充能力层(仅 A 股)—— a-stock-data 互补/降级源

下列条目走内嵌 Python模式(约定 D,见下文),不走 scripts/ 子进程。所有 a-stock-data 层执行前必须先读 references/a_stock_data_common.md

#用户意图子技能Reference 文件调用模式
15A 股实时盘口/五档/涨跌停价/K线带 MA(mx 配额耗尽时也降级到这里)A股行情层references/a_stock_market_data.md内嵌 Python(D)
16A 股研报 PDF 下载、iwencai NL 主题检索、同花顺一致预期 EPSA股研报层references/a_stock_research.md内嵌 Python(D)
17A 股龙虎榜(个股/全市场)、限售解禁、北向资金、概念板块归属、同花顺题材归因、行业涨跌排名、个股资金流分钟级A股信号层references/a_stock_signals.md内嵌 Python(D)
18A 股融资融券、大宗交易、股东户数变化、分红送转历史、个股资金流 120 日A股资金面/筹码层references/a_stock_capital_flow.md内嵌 Python(D)
19A 股个股新闻、财联社快讯、东财全球资讯(mx 资讯搜索配额耗尽时降级)A股新闻层references/a_stock_news.md内嵌 Python(D)
20A 股财务 37 字段、F10 九大类、新浪三表(mx 金融数据查询配额耗尽时降级)A股基础数据层references/a_stock_fundamentals.md内嵌 Python(D)
21A 股巨潮公告全文检索(mx 资讯搜索配额耗尽时降级)A股公告层references/a_stock_filings.md内嵌 Python(D)
22A 股完整题材挖掘流水线:题材 Top3 + 个股 Top5 + 目标价 + 操作策略(建立在 a-stock-data 之上的分析层;#12 热点发现配额耗尽时降级到这里)题材挖掘分析层references/theme_miner.md内嵌 Python(D,经 data_bridge 调 a-stock-data)

路由冲突时的优先级规则

  • 若用户请求包含明确的报告类型关键词(如"业绩点评""行业报告""深度研究"),优先按报告类型匹配。
  • 若用户请求是笼统的问答型(如"帮我看看""分析一下"),优先走金融问答(#1),由金融问答内部再决定是否调用数据/搜索能力。
  • 若用户明确要求数据/文件输出(如"导出 Excel""生成 CSV"),优先走对应的数据查询类技能。

mx-skills vs a-stock-data 路由优先级(A 股专用)

A 股 + 互补能力(龙虎榜 / 解禁 / 北向 / 题材归因 / 概念板块 / 融资融券 / 大宗交易 / 股东户数 / 分红送转 / iwencai NL 检索 / 实时盘口/五档)
  → 直接走 a-stock-data 对应层(#15-#21),mx-skills 无对等能力

A 股 + 重叠能力(基础行情 / 个股新闻 / 个股财务 / 公告检索)
  → 默认走 mx-skills 主路(#1-#14)
  → 若脚本 stdout/stderr 出现限流字样则降级到 a-stock-data 对应层:
     - `quota exceeded` / `rate limit` / `调用次数已达上限` / HTTP 429
  → 降级映射:
     - mx_finance_data 配额耗尽 → a_stock_market_data + a_stock_fundamentals
     - mx_finance_search 配额耗尽 → a_stock_news + a_stock_filings

非 A 股(港股/美股/基金/宏观/可转债/ETF/全市场选股/AI 报告生成)
  → 强制 mx-skills,**禁用** a-stock-data 降级(a-stock-data 仅覆盖 A 股)

A 股题材挖掘(#12 热点发现 vs #22 题材挖掘分析层)
  → 简单「今天什么板块/方向热」总览 → 默认 mx-skills #12(付费 API,快)
  → 完整链路「题材 Top3 + 个股 Top5 + 目标价 + 操作策略」 → #22 题材挖掘分析层(免费,a-stock-data 供数,打分透明)
  → #12 配额耗尽(限流字样)→ 降级到 #22
  → #22 是分析层,单向依赖 a-stock-data(#15-#21);其价格预测为启发式模型(非回测),仅作相对排序参考

通用调用规范

脚本执行方式

所有脚本通过 {baseDir} 引用 skill 根目录:

python3 {baseDir}/scripts/<子技能目录>/<脚本名>.py [参数]

重要约束

  • 禁止使用任何「后台执行、稍后汇报」的方式运行脚本。
  • 必须在当前会话中同步等待命令完成,获取 stdout 结果后再继续。

输出规范

各脚本 stdout 输出格式不一致,调用方必须根据技能类型正确解析:

A. JSON 输出类(金融问答 / 行业研究 / 首次覆盖 / 专题研究 / 业绩点评)

{"ok": true, "answer": "...", "references": [...]}
  • 优先提取 ok=true 的成功结果
  • ok=false 或包含 message 字段,必须原样透传 message,不得改写或替换
  • 禁止在接口失败时编造数据或报告内容

B. 文件路径输出类(金融数据查询 / 宏观数据 / 智能选股)

stdout 输出文本行,非 JSON:

文件: /path/to/miaoxiang/mx_finance_data/mx_finance_data_xxx.xlsx
描述: /path/to/miaoxiang/mx_finance_data/mx_finance_data_xxx_description.txt
行数: 42
  • 通过正则提取 文件:描述: 后的绝对路径
  • 错误信息输出到 stderr,以 错误: 开头

C. 内容文本输出类(股票诊断 / 基金诊断 / 热点发现 / 可比公司分析)

stdout 直接输出 Markdown 内容文本,同时会在指定目录生成 .md 文件:

Saved: /path/to/miaoxiang/stock_diagnosis/stock_diagnosis_xxx.md
{Markdown 内容}
  • 通过正则提取 Saved: 后的文件路径
  • Markdown 内容可直接展示给用户

D. 内嵌 Python 直接执行类(a-stock-data 补充层 #15-#21)

不走 scripts/ 子进程,模型直接读 reference 文件、复制内嵌的 Python 代码段,用 python3 -c "..." 执行:

# 例:执行 a_stock_signals.md 中的"龙虎榜"代码块
python3 -c "
import requests
UA='Mozilla/5.0 ...'
DATACENTER_URL='https://datacenter-web.eastmoney.com/api/data/v1/get'
def eastmoney_datacenter(...): ...
def dragon_tiger_board(code, trade_date, look_back=30): ...
print(dragon_tiger_board('002475', '2026-05-17'))
"
  • 执行前必读 references/a_stock_data_common.md(含 UADATACENTER_URLeastmoney_datacenter() helper、ticker 归一化),它是 Layer 1-7 所有代码段的依赖
  • 输出是 Python 值/dict/list/DataFrame不写文件——直接 print() 或在 Python 内组装 Markdown 后展示
  • 鉴权:除 iwencai 外全部免费免 key;iwencai 需 IWENCAI_API_KEY 环境变量(仅 #16 研报 NL 检索需要)
  • 依赖:pip install mootdx requests pandas stockstats(与 mx-skills 的 httpx pandas openpyxl 并存)
  • 仅 A 股:港股、美股、基金、宏观禁用此模式,强制回到 #1-#14

超时配置

脚本默认超时说明
金融问答600 秒深度思考模式可能耗时更长
金融数据查询600 秒多实体查询耗时增加
其他技能600 秒报告生成类技能(行业研究、首次覆盖等)建议预留充足超时

外层调用时建议设置超时 >= 120 秒,避免因网络波动导致过早中断。

数学公式格式

所有子技能输出中的数学公式严格遵循:

  • 行内公式:\(...\)(不使用 $...$
  • 行间公式:\[...\]

各子技能快速调用索引

1. 金融问答(mx-financial-assistant)

# 标准模式
python3 {baseDir}/scripts/mx_financial_assistant/generate_answer.py --query "用户问题"

# 深度思考模式
python3 {baseDir}/scripts/mx_financial_assistant/generate_answer.py --query "用户问题" --deep-think

2. 金融数据查询(mx-finance-data)

python3 {baseDir}/scripts/mx_finance_data/get_data.py --query "贵州茅台最近一年营收和净利润"

输出:Excel(多 sheet)+ 描述 txt。

3. 金融资讯搜索(mx-finance-search)

python3 {baseDir}/scripts/mx_finance_search/get_data.py "寒武纪最新研报与公告"

输出:txt 文本文件。

4. 宏观经济数据查询(mx-macro-data)

python3 {baseDir}/scripts/mx_macro_data/get_data.py --query "中国近五年GDP"

输出:CSV(按频率分文件)+ 描述 txt。

5. 智能选股(mx-stocks-screener)

python3 {baseDir}/scripts/mx_stocks_screener/get_data.py --query "股价大于100元,主力流入,成交额排名前50" --select-type "A股"

输出:CSV + 描述 txt。

6. 行业研究报告(industry-research-report)

python3 {baseDir}/scripts/industry_research_report/get_data.py --query "半导体"

输出:PDF + DOCX + 分享链接。

7. 行业/个股跟踪报告(industry-stock-tracker)

python3 {baseDir}/scripts/industry_stock_tracker/generate_industry_stock_tracker_report.py --query "跟踪新能源汽车板块"

输出:PDF + DOCX + 分享链接。

8. 首次覆盖/深度研究(initiation-of-coverage-or-deep-dive)

python3 {baseDir}/scripts/initiation_of_coverage_or_deep_dive/generate_deep_research_report.py --query "东方财富深度研究"

输出:PDF + DOCX + 分享链接。

9. 业绩点评(stock-earnings-review)——分步骤编排

# 第一步:实体识别
python3 {baseDir}/scripts/stock_earnings_review/validate_entity.py --query "东方财富 业绩点评"

# 第二步:获取报告期候选
python3 {baseDir}/scripts/stock_earnings_review/normalize_report_period.py \
  --secu-code 300059 --market-char SZ --class-code 002001

# 第三步:生成点评(外层模型选择 reportDate 后调用)
python3 {baseDir}/scripts/stock_earnings_review/call_review_api.py \
  --secu-code 300059 --market-char SZ --class-code 002001 \
  --report-date 2025-12-31 --secu-name 东方财富

10. 股票诊断(stock-diagnosis)

python3 {baseDir}/scripts/stock_diagnosis/get_data.py --query "东方财富股票咋样"

输出:Markdown 诊断报告(本地 .md 文件)。

1


Content truncated.

You might also like

ui-ux-pro-max

nextlevelbuilder

"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."

2,7442,446

flutter-development

aj-geddes

Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.

2,1271,630

pdf-to-markdown

aliceisjustplaying

Convert entire PDF documents to clean, structured Markdown for full context loading. Use this skill when the user wants to extract ALL text from a PDF into context (not grep/search), when discussing or analyzing PDF content in full, when the user mentions "load the whole PDF", "bring the PDF into context", "read the entire PDF", or when partial extraction/grepping would miss important context. This is the preferred method for PDF text extraction over page-by-page or grep approaches.

3,6151,567

drawio-diagrams-enhanced

jgtolentino

Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.

2,2351,441

godot

bfollington

This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.

2,3971,198

nano-banana-pro

garg-aayush

Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.

1,919955