mcpField
T
technical-analyst

technical-analyst

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

关于 technical-analyst

technical-analyst 是一项针对用户提供的周线图图片进行技术分析的技能,适用于需要图表观察和情景推演的用户。它按结构评估趋势、支撑阻力、均线与成交量,并生成包含概率情景的 Markdown 报告。

主要功能

  1. 01系统分析周线图
  2. 02评估趋势与支撑阻力
  3. 03检查均线、成交量和形态
  4. 04制定概率加权价格情景
  5. 05保存 Markdown 分析报告

适用场景

  1. 01分析股票、指数或加密资产周线图
  2. 02识别关键支撑阻力与潜在反转
  3. 03为价格走势制定多种情景
  4. 04逐张整理多幅图表的分析报告

安装

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

$npx skills add https://github.com/tradermonty/claude-trading-skills --skill technical-analyst

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

包含的文件

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

requirements.txt
assets/
analysis_template.md
references/
contrarian-confirmation-checklist.md
technical_analysis_framework.md
scripts/
check_weekly_price_action.py
weekly_price_action.py
scripts/tests/
test_check_weekly_price_action.py
test_skill_contract.py
test_weekly_price_action.py

详细介绍

技术分析师

概述

此技能可对周线价格图表进行全面的技术分析。分析图表图像,识别趋势、支撑位和阻力位、移动平均线关系、成交量模式,并制定未来价格走势的概率情景。所有分析仅基于图表数据客观进行,不受新闻、基本面或市场情绪影响。

适用场景

  • 用户提供股票、指数、加密货币或外汇的周线图表图像,并要求进行技术分析
  • 需要识别趋势方向、强度和潜在反转点
  • 寻找支撑位、阻力位和关键价格区间
  • 希望通过具体价格目标制定概率情景规划
  • 需要仅基于图表进行客观分析,不考虑基本面或新闻

前提条件

  • 图表图像:用户必须提供周线周期图表图像以供分析
  • 无需 API 密钥:此技能分析用户提供的图像,不会从外部获取数据

输出

此技能会生成 Markdown 分析报告并保存到 reports/ 目录:

  • 文件格式:[SYMBOL]_technical_analysis_[YYYY-MM-DD].md
  • 内容:全面的分析,包括趋势、支撑位/阻力位、移动平均线分析、成交量、形态,以及包含目标位和失效位的 2-4 个概率情景

核心原则

  1. 纯图表分析:所有结论仅依据图表中可见的技术数据
  2. 系统化方法:对每张图表分析均遵循结构化方法
  3. 客观评估:避免主观偏见;专注于可观察到的形态和数据
  4. 概率情景:以按概率加权的情景表达未来可能性
  5. 顺序处理:逐一分析每张图表,并立即记录发现

分析工作流

步骤 1:接收图表图像

用户提供一张或多张周线图表图像进行分析时:

  1. 确认已收到所有图表图像
  2. 确定需要分析的图表数量
  3. 记录用户要求重点关注的领域
  4. 依次逐一分析图表
步骤 2:加载技术分析框架

开始分析前,阅读全面的技术分析方法:

Read: references/technical_analysis_framework.md

此参考资料包含以下方面的详细指导:

  • 趋势分析与分类
  • 支撑位和阻力位识别
  • 移动平均线解读
  • 成交量分析
  • 图表形态与蜡烛图分析
  • 情景构建与概率分配
  • 分析纪律与客观性
步骤 3:系统分析每张图表

对每张图表图像,按以下顺序进行系统分析:

3.1 趋势分析
  • 识别趋势方向(上升趋势、下降趋势、横盘)
  • 评估趋势强度(强、中等、弱)
  • 记录趋势持续时间和潜在的衰竭信号
  • 检查更高的高点/低点或更低的高点/低点形态
3.2 支撑位和阻力位分析
  • 标出重要的水平支撑位
  • 标出重要的水平阻力位
  • 识别趋势线支撑位/阻力位
  • 记录支撑位与阻力位角色互换的情况
  • 评估多个支撑位/阻力位重合的汇聚区
3.3 移动平均线分析
  • 确定价格相对于 20 周、50 周和 200 周移动平均线的位置
  • 评估移动平均线排列(看涨、看跌或中性)
  • 记录移动平均线的斜率(上升、下降、走平)
  • 识别近期或即将发生的移动平均线交叉
  • 观察移动平均线是否发挥动态支撑位或阻力位的作用
3.4 成交量分析
  • 评估整体成交量趋势(增加、减少、稳定)
  • 识别成交量激增及其背景(出现在支撑位/阻力位或突破时)
  • 检查成交量与价格走势是否相互确认或背离
  • 记录成交量高潮或衰竭形态
3.5 图表形态与价格行为
  • 识别任何反转形态(锤头线、流星线、吞没形态等)
  • 识别任何持续形态(旗形、三角形等)
  • 记录重要的蜡烛图形态
  • 观察近期的向上突破或向下破位
3.6 综合观察结果
  • 综合所有技术要素,形成连贯的当前评估
  • 识别影响图表的最重要因素
  • 指出相互矛盾的信号或不确定之处
  • 确定决定未来走势的关键价位
第 4 步:制定概率情景

针对每张分析的图表,制定 2-4 个不同的未来价格走势情景:

情景结构

每个情景必须包含:

  1. 情景名称:清晰、描述性的标题(例如,“看涨情景:突破阻力位上方”)
  2. 概率估计:根据技术因素估算的可能性百分比(所有情景的概率总和必须为 100%)
  3. 描述:说明该情景的内容及其可能的发展过程
  4. 支持因素:支持该情景的技术证据(至少 2-3 个因素)
  5. 目标价位:若情景实现,预计达到的价位
  6. 失效位:会否定该情景的具体价位
常见情景框架
  • 基准情景(40-60%):根据当前结构,最有可能出现的结果
  • 看涨情景(20-40%):需要向上突破才能实现的乐观情景
  • 看跌情景(20-40%):需要向下破位才能实现的悲观情景
  • 替代情景(5-15%):概率较低,但在技术面上合理的结果

根据支持性技术因素的强弱调整概率。确保概率估计合理,且总和为 100%。

第 5 步:生成分析报告

针对每张分析的图表,使用模板结构创建一份完整的 Markdown 报告:

Read and use as template: assets/analysis_template.md

报告必须包含以下所有章节:

  1. 图表概览
  2. 趋势分析
  3. 支撑位与阻力位
  4. 移动平均线分析
  5. 成交量分析
  6. 图表形态与价格行为
  7. 当前市场评估
  8. 情景分析(包含 2-4 个情景及其概率)
  9. 总结
  10. 免责声明

文件命名规则:将每份分析保存为 [SYMBOL]_technical_analysis_[YYYY-MM-DD].md

示例:SPY_technical_analysis_2025-11-02.md

第 6 步:分析多张图表时重复上述流程

如果提供了多张图表:

  1. 针对第一张图表完成完整的分析流程(第 3-5 步)
  2. 保存分析报告
  3. 继续分析下一张图表
  4. 重复以上步骤,直至所有图表均已分析并记录

不要批量分析。完成并保存每份报告后,再开始处理下一张图表。

质量标准

客观性要求
  • 所有分析都必须严格基于可观察到的图表数据
  • 避免纳入外部信息(新闻、基本面、市场情绪)
  • 不要使用“我认为”或“我觉得”等主观表述
  • 信号模糊时,应明确说明不确定性
  • 同时呈现看涨和看跌的可能性,以避免确认偏误
完整性要求
  • 涵盖分析模板中的所有章节
  • 提供具体的支撑位、阻力位和目标价位
  • 使用技术因素说明概率估计的依据
  • 为每个情景注明失效位
  • 说明分析的任何局限或注意事项
清晰度要求
  • 正确使用精确的技术术语
  • 使用清晰、专业的语言
  • 按逻辑组织信息
  • 给出具体价位(避免含糊的描述)
  • 确保各情景彼此不同且互斥

使用示例

示例 1:分析单张图表

User: "Please analyze this weekly chart of the S&P 500"
[Provides chart image]

Analyst:
1. Confirms receipt of chart image
2. Reads technical_analysis_framework.md for methodology
3. Conducts systematic analysis (trend, S/R, MA, volume, patterns)
4. Develops 3 scenarios with probabilities (e.g., 55% bullish continuation, 30% consolidation, 15% reversal)
5. Generates comprehensive analysis report using template
6. Saves as SPY_technical_analysis_2025-11-02.md

示例 2:分析多张图表

User: "Analyze these three charts: Bitcoin, Ethereum, and Nasdaq"
[Provides 3 chart images]

Analyst:
1. Confirms receipt of 3 charts
2. Reads technical_analysis_framework.md
3. Analyzes Bitcoin chart completely → Generates report → Saves as BTC_technical_analysis_2025-11-02.md
4. Analyzes Ethereum chart completely → Generates report → Saves as ETH_technical_analysis_2025-11-02.md
5. Analyzes Nasdaq chart completely → Generates report → Saves as NDX_technical_analysis_2025-11-02.md
6. Notifies user that all three analyses are complete

示例 3:指定重点的分析请求

User: "I'm particularly interested in whether this stock will break above resistance. Analyze the chart."
[Provides chart image]

Analyst:
1. Conducts full systematic analysis
2. Pays special attention to resistance levels and breakout probability
3. Develops scenarios with emphasis on breakout vs. rejection possibilities
4. Assigns probabilities based on volume, trend strength, and proximity to resistance
5. Generates complete report with focused scenario analysis

逆向确认模式(Shapiro 第 3 步)

这是一个增量模式,与上述纯图表分析工作流分开。仅在用户明确请求逆向确认时启用——通常是在 cot-contrarian-detector(第 1 步)标记市场拥挤后,并且可选地在 news-reaction-failure-analyzer(第 2 步)显示市场未能对利好消息作出反应后。普通的“分析这张图表”请求仍按原有工作流(上述第 1-6 步)执行,不作更改。

目的

确认周线图是否显示价格行为证据,表明拥挤交易正在反转:周线关键反转、周内极值失败,或先确认后遭拒的突破失败;但若延续性检查发现一个比任何已找到信号都更新、且方向与拥挤方向一致的收盘新极值,则否决该确认。完整的方法(逐字一致,供图表模式和脚本模式共用)见 references/contrarian-confirmation-checklist.md。

输入
  • 拥挤方向:CROWDED_LONG 或 CROWDED_SHORT——由用户提供,或来自先前的 cot-contrarian-detector 报告。
  • 图表图像(主要输入):用户提供的周线图,按与现有工作流相同的方式读取,并使用下方的严格定义。
  • 脚本备用方案(数据驱动):未提供图表时,或需要可审计、确定性的结果来替代(或补充)目视解读时,使用 scripts/check_weekly_price_action.py。
三项检查 + 波段水平位
  1. 周线关键反转:创出新的波段回看极值(默认 13 周)后,收盘价穿越前一周的相反方向水平位。
  2. 极值失败:周内价格刺穿前期极值回看水平位(默认 52 周),并在同一周收盘时回到该水平位另一侧。
  3. 突破失败:周线收盘价突破前期极值回看水平位,并在随后 <=3 周内遭拒(收盘价回到该水平位另一侧)——week_of 指失败周,绝非突破周。
  4. 延续性否决:若出现方向与拥挤方向一致、且时间严格晚于上述最新已触发信号的收盘新极值,则无论触发了什么信号,均否决确认。
  5. 波段水平位:最近的分形波段高点/低点(5 周枢轴,附有明确记录的回退方案)用于提供 stop_reference——逆向做空拥挤的 LONG 时,使用最近的波段高点;逆向做空拥挤的 SHORT 时,使用最近的波段低点。

每项比较都使用严格不等式;窗口截断按每个被评估的周计算,而非按每次运行计算。完整定义、方向镜像表、示例和 HIGH 置信度规则见 references/contrarian-confirmation-checklist.md——生成图表模式判定前请先阅读,确保图表模式和脚本模式的判定完全一致。

输出约定
symbol: BT
direction: CROWDED_LONG
mode: data # "chart" for a Claude chart-image read
verdict: CONFIRMED | NOT_CONFIRMED | INSUFFICIENT_DATA
confidence: HIGH | MEDIUM | LOW # LOW reserved, never emitted in v1
verdict_reason: key_reversal | failed_extreme | failed_breakout |
  continuation_intact | no_reversal_evidence |
  insufficient_weekly_bars | no_price_source | ...
checks:
  weekly_key_reversal:
    { triggered, week_of, swing_window_weeks_used,
      extreme_window_weeks_used, is_full_window_extreme, detail }
  failed_extreme: { triggered, attempted_level, week_of, window_weeks_used, detail }
  failed_breakout: { triggered, breakout_level, week_of, window_weeks_used, detail }
  continuation: { new_closing_extreme_with_crowd, week_of, window_weeks_used }
swing_levels:
  nearest_swing_high: { price, week_of, fallback }
  nearest_swing_low: { price, week_of, fallback }
  stop_reference: 0.0
weekly_bars_used: 52
last_completed_week: 2026-07-06
handoff: # consumed by contrarian-setup-gate (#241)
  price_action: { verdict, confidence, stop_reference, report_path }
run_context:
  {
    price_symbol,
    price_source,
    proxy_used,
    as_of,
    lookbacks,
    recency,
    min_weeks,
    detector_json,
    detector_age_days,
    schema_version,
  }

不变量:只要 verdict: INSUFFICIENT_DATA,checks(以及 swing_levels)就必须为 null,无论具体原因是什么(no_price_source、insufficient_weekly_bars、检测器 JSON 拒绝,……)。下游使用方只需检查 verdict,即可决定读取 checks.* 是否安全,无需根据 verdict_reason 分支处理。

文件命名:ta_confirmation_<SYMBOL>_<as-of>.json 和 ta_confirmation_<SYMBOL>_<as-of>.md,保存到 reports/。

图表优先,脚本兜底

图表图片仍是首要输入,这与本技能的定位一致。如果未提供图表,或更倾向于获得可审计、确定性的结果,请运行脚本,而不是(或同时)读取图表:

python3 skills/technical-analyst/scripts/check_weekly_price_action.py \
  --symbol BT --direction CROWDED_LONG --as-of 2026-07-15 \
  --output-dir reports/

或者,直接根据 cot-contrarian-detector 报告判定方向:

python3 skills/technical-analyst/scripts/check_weekly_price_action.py \
  --symbol BT --detector-json reports/cot_crowding_2026-07-12.json \
  --as-of 2026-07-15 --output-dir reports/

脚本通过文档说明的期货到 ETF 回退链获取按周重采样的 OHLC 数据(参见 scripts/check_weekly_price_action.py 中的模块文档字符串),在重采样前将日线数据截断至 --as-of 日期(不使用未来数据),并在 --detector-json 无法读取(文件缺失)、语法无效、数据过期或结构格式错误,价格历史过短(--min-weeks,默认值为 30),或没有可用价格来源时安全失败并返回 INSUFFICIENT_DATA,绝不会崩溃。

保守的结果不一致规则

如果图表模式和脚本模式对同一标的/方向都生成了结果,但判定不一致,最终判定为 NOT_CONFIRMED(verdict_reason: mode_disagreement),并附上两种模式的子结果供审核——绝不悄悄偏向其中一种模式。如果一种模式返回 INSUFFICIENT_DATA,而另一种给出明确判定,则以明确判定为准。

防护规则
  • 仅给出判定——本身绝不是交易建议。 这用于确认 Shapiro 流程的第 3 步,共 5 步。入场和离场计划仍须手动制定,且仍是必要步骤;仓位规模应由 position-sizer / futures-position-sizer 负责,而非此模式。
  • INSUFFICIENT_DATA 绝不推进流程——对所有降级输入均安全失败,始终以 0 退出并写入报告。
  • 仅限周线时间周期。
  • 上文现有的图表分析工作流保持不变——仅在明确请求逆向确认时才会启用此模式。
  • 单一信号的 MEDIUM 判定属于刻意设置的弱证据——参见 references/contrarian-confirmation-checklist.md 中的“置信度”部分。

资源

此技能包含以下捆绑资源:

references/technical_analysis_framework.md

全面的技术分析方法,包括:

  • 趋势分析标准与分类
  • 支撑位和阻力位识别技巧
  • 移动平均线解读指南
  • 成交量分析原则
  • 图表形态识别
  • 情景构建与概率分配框架
  • 客观性与纪律提醒

用法:分析前请阅读此文件,以确保采用系统、客观的方法。

assets/analysis_template.md

技术分析报告的结构化模板,包含所有必需章节。

用法:每份分析报告都应使用此模板结构。复制其格式,并针对每张图表填写具体发现。

references/contrarian-confirmation-checklist.md

逆向确认模式(Shapiro 第 3 步)的完整方法,包括:方向约定、窗口/截断规则、3 项信号检查与延续行情否决条件、波段水平(分形枢轴)规则、判定综合、置信度规则、输出约定、图表模式演示,以及保守的结果不一致规则。

用法:生成逆向确认模式判定前请阅读此文件——图表模式和 scripts/check_weekly_price_action.py 必须采用完全一致的判定标准,因此两者均适用相同的严格定义。

scripts/check_weekly_price_action.py

逆向确认模式的数据驱动回退 CLI。获取按周重采样的 OHLC 数据(文档说明的期货到 ETF 回退链,在重采样前应用 --as-of 信息截止日期),执行 3 项信号检查、延续行情否决和波段水平检测,并将 ta_confirmation_<SYMBOL>_<as-of>.json/.md 写入 reports/。

用法:未提供图表图片时,或需要可审计、确定性的结果时运行。调用示例请参见上文的逆向确认模式部分。

评论

支持 Markdown