mcpField
M
market-breadth-analyzer

market-breadth-analyzer

github.com/mphinance数据与数据库3287 次安装5 天前更新
代码仓库

关于 market-breadth-analyzer

market-breadth-analyzer 是量化市场广度健康状况的分析技能,适用于评估市场上涨或下跌的参与范围。它从公开 CSV 计算六项指标,生成 0–100 分数、区域分类及趋势摘要,无需 API 密钥。

主要功能

  1. 01基于六项指标计算 0–100 分数
  2. 02检查数据新鲜度并提示过期数据
  3. 03按健康区域映射股票敞口
  4. 04记录历史分数并计算趋势
  5. 05生成 JSON 与 Markdown 报告

适用场景

  1. 01判断市场上涨是否由广泛参与推动
  2. 02监测市场参与度是否收窄
  3. 03根据广度状况评估股票敞口
  4. 04查看广度分数随时间的变化

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mphinance/alpha-skills --skill market-breadth-analyzer

安装后在 Claude Code 中输入/market-breadth-analyzer确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

README.md
references/
breadth_analysis_methodology.md
scripts/
csv_client.py
history_tracker.py
market_breadth_analyzer.py
report_generator.py
scorer.py
scripts/calculators/
__init__.py
bearish_signal_calculator.py
cycle_calculator.py
divergence_calculator.py
historical_context_calculator.py
ma_crossover_calculator.py
trend_level_calculator.py
scripts/tests/
conftest.py
test_bearish_signal_calculator.py
test_cycle_calculator.py
test_divergence_calculator.py
test_historical_context_calculator.py
test_history_tracker.py
test_ma_crossover_calculator.py
test_report_generator.py
test_scorer.py
test_trend_level_calculator.py

详细介绍

市场广度分析器技能

用途

使用数据驱动的 6 项评分系统(0-100)量化市场广度状况。利用 TraderMonty 公开提供的 CSV 数据,衡量市场参与上涨或下跌的广泛程度。

**评分方向:**100 = 健康度最高(参与面广),0 = 极度疲弱。

无需 API 密钥——使用 GitHub Pages 上免费提供的 CSV 数据。

何时使用此技能

英语:

  • 用户询问“这轮市场上涨是否有广泛参与?”或“市场广度状况有多健康?”
  • 用户想评估市场参与率
  • 用户询问涨跌家数指标或广度突增
  • 用户想知道市场参与面是否正在收窄(参与的股票减少)
  • 用户根据市场广度状况询问股票敞口水平

日语:

  • 「マーケットブレッドスはどうですか?」「市場の参加率は?」
  • 「上昇は広がっている?」「一部の銘柄だけの上昇?」
  • ブレッドス指標に基づくエクスポージャー判断
  • 市場の健康度をデータで確認したい

前提条件

  • Python 3.8+,并安装 requests 库(用于获取 CSV 数据)
  • 互联网访问,可连接 GitHub Pages URL
  • 无需 API 密钥——使用免费提供的公开 CSV 数据

与广度图表分析师的区别

方面市场广度分析器广度图表分析师
数据来源CSV(自动化)图表图像(手动)
是否需要 API无无
输出量化的 0-100 评分定性的图表分析
组成部分6 个评分维度视觉形态识别
可重复性完全可复现取决于分析师

执行工作流

阶段 1:运行 Python 脚本

运行分析脚本:

python3 skills/market-breadth-analyzer/scripts/market_breadth_analyzer.py \
  --detail-url "https://tradermonty.github.io/market-breadth-analysis/market_breadth_data.csv" \
  --summary-url "https://tradermonty.github.io/market-breadth-analysis/market_breadth_summary.csv"

脚本将:

  1. 获取详细 CSV(约 2,500 行,涵盖 2016 年至今)和摘要 CSV(8 项指标)
  2. 验证数据时效性(超过 5 天时发出警告)
  3. 计算全部 6 项组成部分的评分(若任何组成部分缺少数据,则自动重新分配权重)
  4. 生成综合评分并进行区间分类
  5. 跟踪评分历史并计算趋势(改善/恶化/稳定)
  6. 输出 JSON 和 Markdown 报告
阶段 2:呈现结果

向用户呈现生成的 Markdown 报告,并重点说明:

  • 综合评分和健康区间
  • 得分最高和最低的组成部分
  • 建议的股票敞口水平
  • 值得关注的关键广度水平
  • 任何数据时效性警告

6 项评分系统

#组成部分权重关键信号
1广度水平与趋势25%当前 8MA 水平 + 200MA 趋势方向 + 8MA 方向修正因子
28MA 与 200MA 交叉20%通过 MA 差值和方向衡量动量
3峰值/谷值周期20%在广度周期中的位置
4看跌信号15%经回测验证的看跌信号标记
5历史百分位10%当前值相对于完整历史分布的位置
6标普 500 背离10%多窗口(20 天 + 60 天)价格与广度背离

**权重重新分配:**如果任何组成部分的数据不足(例如,未检测到峰值/谷值标记),则将其排除,并按比例将其权重重新分配给其余组成部分。报告会显示原始权重和有效权重。

**评分历史:**综合评分会按数据日期记录并保留。存在多条观测数据时,报告会提供趋势摘要(改善/恶化/稳定)。

健康区间映射(100 = 健康)

评分区间股票敞口操作
80-100强劲90-100%满仓,优先考虑成长/动量
60-79健康75-90%正常操作
40-59中性60-75%选择性布局,收紧止损
20-39走弱40-60%获利了结,增加现金
0-19危急25-40%保全资本,关注谷底

数据源

详细 CSV: market_breadth_data.csv

  • 约 2,500 行数据,时间范围从 2016-02 至今
  • 列:Date、S&P500_Price、Breadth_Index_Raw、Breadth_Index_200MA、Breadth_Index_8MA、Breadth_200MA_Trend、Bearish_Signal、Is_Peak、Is_Trough、Is_Trough_8MA_Below_04

摘要 CSV: market_breadth_summary.csv

  • 8 项汇总指标(平均峰值、平均谷值、计数、分析周期)

两者均托管在 GitHub Pages 上,无需身份验证。

输出文件

  • JSON:market_breadth_YYYY-MM-DD_HHMMSS.json
  • Markdown:market_breadth_YYYY-MM-DD_HHMMSS.md
  • 历史记录:market_breadth_history.json(跨运行保留,最多 20 条记录)

参考文档

references/breadth_analysis_methodology.md
  • 完整的方法论,包含各组成部分的评分详情
  • 阈值说明和区域定义
  • 历史背景和解读指南
加载参考文档的时机
  • 首次使用: 加载方法论参考文档,了解框架
  • 常规执行: 无需参考文档,脚本会处理评分

评论

支持 Markdown