mcpField
U
uptrend-analyzer

uptrend-analyzer

github.com/tradermonty其他3.4k3.4k 次安装2 天前更新
代码仓库

关于 uptrend-analyzer

用于分析市场广度的技能,依据 Monty 的上升趋势比率数据,为整体市场和行业参与度生成 0–100 综合评分及敞口指引。它通过免费 CSV 评估上涨是广泛还是集中,适合关注市场参与和行业轮动的分析者。

主要功能

  1. 01五项组成部分评分
  2. 02分析整体与行业参与度
  3. 03评估行业轮动和动量
  4. 04提供分区敞口指引
  5. 05生成 JSON 和 Markdown 报告

适用场景

  1. 01检查市场上涨的参与广度
  2. 02比较各行业的上升趋势比率
  3. 03识别行业轮动与动量信号
  4. 04依据广度评分调整敞口

安装

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

$npx skills add https://github.com/tradermonty/claude-trading-skills --skill uptrend-analyzer

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

包含的文件

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

requirements.txt
references/
uptrend_methodology.md
scripts/
data_fetcher.py
provenance_contract.py
report_generator.py
scorer.py
uptrend_analyzer.py
scripts/calculators/
__init__.py
historical_context_calculator.py
market_breadth_calculator.py
momentum_calculator.py
sector_participation_calculator.py
sector_rotation_calculator.py
scripts/tests/
conftest.py
helpers.py
test_data_fetcher_schema_drift.py
test_data_fetcher.py
test_historical_context_calculator.py
test_main_provenance.py
test_market_breadth_calculator.py
test_momentum_calculator.py
test_new_features.py
test_provenance_contract.py
test_report_generator.py
test_scorer.py
test_sector_participation_calculator.py
test_sector_rotation_calculator.py
test_uptrend_analyzer.py

详细介绍

上升趋势分析器技能

用途

使用 Monty 的上升趋势比率仪表板诊断市场广度健康状况。该仪表板跟踪约 2,800 只美国股票,涵盖 11 个行业。它会生成 0-100 的综合评分(分数越高,状况越健康),并提供仓位建议。

与基于 API 的风险评分器「市场顶部检测器」不同,此技能使用免费的 CSV 数据评估「参与广度」——也就是市场上涨是普遍参与,还是仅由少数股票推动。

何时使用此技能

英语:

  • 用户询问“市场广度健康吗?”或“这轮涨势的参与面有多广?”
  • 用户想评估各行业的上升趋势比率
  • 用户询问市场参与度或广度状况
  • 用户需要基于广度分析的仓位建议
  • 用户提及 Monty 的上升趋势仪表板或上升趋势比率

日语:

  • 「市場のブレドスは健全?」「上昇の裾野は広い?」
  • 想确认各行业的上升趋势比率
  • 想诊断市场参与度或广度状况
  • 想要基于广度分析的仓位建议
  • 询问 Monty 的上升趋势仪表板

先决条件

  • Python 3.9+ 和 requests 库(CSV 解析使用标准库中的 csv/io 模块)
  • 互联网连接,用于从 GitHub 获取 CSV 数据(无需 API 密钥)
  • 无需付费 API 订阅

与市场顶部检测器的区别

方面上升趋势分析器市场顶部检测器
评分方向越高越健康越高风险越高
数据来源GitHub 免费 CSVFMP API(付费)
重点参与广度顶部形成风险
API 密钥不需要需要(FMP)
方法论Monty 上升趋势比率O'Neil/Minervini/Monty

执行工作流

阶段 1:运行 Python 脚本

运行分析脚本(无需 API 密钥):

python3 skills/uptrend-analyzer/scripts/uptrend_analyzer.py

脚本将:

  1. 从 Monty 的 GitHub 仓库下载 CSV 数据
  2. 计算 5 项组成评分
  3. 生成综合评分和报告
阶段 2:呈现结果

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

  • 综合评分和区域分类
  • 仓位建议(满仓/正常/降低/防御/保本)
  • 显示最强和最弱行业的行业热力图
  • 关键动量和轮动信号

5 项评分体系

#组成项权重关键信号
1市场广度(整体)30%比率水平 + 趋势方向
2行业参与度25%上升趋势行业数量 + 比率分布
3行业轮动15%周期性与防御性行业的平衡
4动量20%斜率方向 + 加速度
5历史背景10%历史百分位排名

评分区间

评分区间仓位建议
80-100强劲牛市满仓(100%)
60-79牛市正常仓位(80-100%)
40-59中性降低仓位(60-80%)
20-39谨慎防御(30-60%)
0-19熊市保本(0-30%)
7 级区间详情

每个评分区间进一步划分为子区间,以便进行更精细的评估:

评分区间详情颜色
80-100强劲牛市绿色
70-79牛市偏强浅绿色
60-69牛市偏弱浅绿色
40-59中性黄色
30-39谨慎偏强橙色
20-29谨慎偏弱橙色
0-19熊市红色
预警系统

触发的预警会导致仓位惩罚,在综合评分较高时也会收紧建议:

预警条件惩罚
周期后期大宗商品平均值高于周期性和防御性行业-5
高分散度行业比率最大值与最小值之差 > 40 个百分点-3
背离组内标准差 > 8 个百分点、分散度 > 20 个百分点,或趋势反向者-3

惩罚可叠加(最多 -10),并应用多重预警折扣(激活项 ≥2 时 +1)。在综合评分后应用。

动量平滑

评分前,使用 EMA(3)(指数移动平均线,span=3)对斜率值进行平滑。通过比较平滑斜率最近 10 个点的平均值与此前 10 个点的平均值(10 对 10 窗口)来计算加速度;当数据点少于 20 个时,则回退到 5 对 5 窗口。

历史置信度指标

历史背景组件包含一项置信度评估,依据以下因素:

  • 样本量: 可用的历史数据点数量
  • 市场状态覆盖范围: 已观察到的不同市场状态(牛市/熊市/中性)所占比例
  • 时效性: 最新数据点距今的时间

置信度等级:高、中、低。


API 要求

必需项: 无(使用免费的 GitHub CSV 数据)

输出文件

  • JSON:uptrend_analysis_YYYY-MM-DD_HHMMSS.json
  • Markdown:uptrend_analysis_YYYY-MM-DD_HHMMSS.md

参考文档

references/uptrend_methodology.md
  • 上升趋势比率的定义和阈值
  • 5 个组成部分的评分方法
  • 板块分类(周期型/防御型/大宗商品型)
  • 历史校准说明
何时加载参考文档
  • 首次使用: 加载 uptrend_methodology.md,全面了解框架
  • 常规执行: 无需参考文档——脚本会处理评分

同次运行溯源

将 --run-id daily-20261017-unique 传递给两个必需的 market-regime-daily 数据生成器。若不传入该参数,每个数据生成器都会生成自己的唯一 ID。JSON 包含 schema 1.0 data_provenance,其中记录实际的主要时间序列业务日期、UTC 检索时间、来源和运行 ID。未知的调整、时点、幸存者偏差和公司行为标记均为 false。辅助摘要日期未经验证;这并不能证明每项综合输入都是最新的。主要日期缺失或格式错误时,报告生成会停止。

将这些调用打印出的确切 JSON 路径传递给 Exposure Coach 的 --require-provenance --run-id … --as-of … 模式。运行 ID 是由调用方提供的一致性标记,并不能证明真实性或时点。

评论

支持 Markdown