New to Claude Skills? Learn how to install them →

tradermonty on GitHub

Uptrend Analyzer

Free

Assess market breadth and equity exposure with ease.

Get this skill

Free · Opens the source repo

What Uptrend Analyzer does

The Uptrend Analyzer skill provides a comprehensive analysis of market breadth by utilizing Monty's Uptrend Ratio Dashboard data, which encompasses approximately 2,800 US stocks across 11 sectors. This skill generates a composite score ranging from 0 to 100, where a higher score indicates a healthier market environment. By evaluating five key components—market breadth, sector participation, sector rotation, momentum, and historical context—users can gain insights into the current market conditions and make informed decisions about equity exposure.

This skill is particularly useful for traders and investors who want to understand whether the market's advances are broad-based or narrow. Unlike other tools that might rely on paid APIs, the Uptrend Analyzer leverages free CSV data, making it an accessible option for anyone looking to analyze market conditions without incurring additional costs. The scoring system is designed to provide clear guidance on exposure levels, ranging from full exposure in strong bull markets to capital preservation strategies in bearish conditions.

The execution workflow is straightforward: users run a Python script that fetches the required CSV data, calculates the necessary component scores, and generates a detailed report. This report includes a composite score, exposure guidance, and a sector heatmap to visualize the strongest and weakest sectors. The skill also incorporates a warning system that adjusts exposure guidance based on market conditions, ensuring users are well-informed about potential risks.

Overall, the Uptrend Analyzer is a valuable tool for anyone involved in trading or investing who seeks to understand market breadth and make data-driven decisions. Its ease of use, reliance on free data, and comprehensive scoring system make it a practical addition to any trader's toolkit.

When to use it

Use this skill when you need to assess the health of market breadth or determine appropriate equity exposure based on current market conditions.

When not to use it

This skill may not be suitable for users seeking real-time data or those who require more complex market analysis beyond breadth assessment.

What you can build with it

Assessing Market Conditions

Use the Uptrend Analyzer to determine if the current market breadth is healthy, aiding in investment decisions.

Sector Analysis

Evaluate sector participation and rotation to identify which sectors are leading or lagging in the current market.

Guidance on Equity Exposure

Receive clear exposure guidance based on the composite score, helping to adjust investment strategies accordingly.

How to install Uptrend Analyzer

View source

1. Install with the skills CLI

npx skills add tradermonty/claude-trading-skills/uptrend-analyzer --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by tradermonty

Uptrend Analyzer Skill

Purpose

Diagnose market breadth health using Monty's Uptrend Ratio Dashboard, which tracks ~2,800 US stocks across 11 sectors. Generates a 0-100 composite score (higher = healthier) with exposure guidance.

Unlike the Market Top Detector (API-based risk scorer), this skill uses free CSV data to assess "participation breadth" - whether the market's advance is broad or narrow.

When to Use This Skill

English:

  • User asks "Is the market breadth healthy?" or "How broad is the rally?"
  • User wants to assess uptrend ratios across sectors
  • User asks about market participation or breadth conditions
  • User needs exposure guidance based on breadth analysis
  • User references Monty's Uptrend Dashboard or uptrend ratios

Japanese:

  • 「市場のブレドスは健全?」「上昇の裾野は広い?」
  • セクター別のアップトレンド比率を確認したい
  • 相場参加率・ブレドス状況を診断したい
  • ブレドス分析に基づくエクスポージャーガイダンスが欲しい
  • Montyのアップトレンドダッシュボードについて質問

Prerequisites

  • Python 3.9+ with the requests library (CSV parsing uses the stdlib csv/io modules)
  • Internet connection to fetch CSV data from GitHub (no API key required)
  • No paid API subscriptions needed

Difference from Market Top Detector

AspectUptrend AnalyzerMarket Top Detector
Score DirectionHigher = healthierHigher = riskier
Data SourceFree GitHub CSVFMP API (paid)
FocusBreadth participationTop formation risk
API KeyNot requiredRequired (FMP)
MethodologyMonty Uptrend RatiosO'Neil/Minervini/Monty

Execution Workflow

Phase 1: Execute Python Script

Run the analysis script (no API key needed):

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

The script will:

  1. Download CSV data from Monty's GitHub repository
  2. Calculate 5 component scores
  3. Generate composite score and reports

Phase 2: Present Results

Present the generated Markdown report to the user, highlighting:

  • Composite score and zone classification
  • Exposure guidance (Full/Normal/Reduced/Defensive/Preservation)
  • Sector heatmap showing strongest and weakest sectors
  • Key momentum and rotation signals

5-Component Scoring System

#ComponentWeightKey Signal
1Market Breadth (Overall)30%Ratio level + trend direction
2Sector Participation25%Uptrend sector count + ratio spread
3Sector Rotation15%Cyclical vs Defensive balance
4Momentum20%Slope direction + acceleration
5Historical Context10%Percentile rank in history

Scoring Zones

ScoreZoneExposure Guidance
80-100Strong BullFull Exposure (100%)
60-79BullNormal Exposure (80-100%)
40-59NeutralReduced Exposure (60-80%)
20-39CautiousDefensive (30-60%)
0-19BearCapital Preservation (0-30%)

7-Level Zone Detail

Each scoring zone is further divided into sub-zones for finer-grained assessment:

ScoreZone DetailColor
80-100Strong BullGreen
70-79Bull-UpperLight Green
60-69Bull-LowerLight Green
40-59NeutralYellow
30-39Cautious-UpperOrange
20-29Cautious-LowerOrange
0-19BearRed

Warning System

Active warnings trigger exposure penalties that tighten guidance even when the composite score is high:

WarningConditionPenalty
Late CycleCommodity avg > both Cyclical and Defensive-5
High SpreadMax-min sector ratio spread > 40pp-3
DivergenceIntra-group std > 8pp, spread > 20pp, or trend dissenters-3

Penalties stack (max -10) + multi-warning discount (+1 when ≥2 active). Applied after composite scoring.

Momentum Smoothing

Slope values are smoothed using EMA(3) (Exponential Moving Average, span=3) before scoring. Acceleration is calculated by comparing the recent 10-point average vs prior 10-point average of smoothed slopes (10v10 window), with fallback to 5v5 when fewer than 20 data points are available.

Historical Confidence Indicator

The Historical Context component includes a confidence assessment based on:

  • Sample size: Number of historical data points available
  • Regime coverage: Proportion of distinct market regimes (bull/bear/neutral) observed
  • Recency: How recent the latest data point is

Confidence levels: High, Medium, Low.


API Requirements

Required: None (uses free GitHub CSV data)

Output Files

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

Reference Documents

references/uptrend_methodology.md

  • Uptrend Ratio definition and thresholds
  • 5-component scoring methodology
  • Sector classification (Cyclical/Defensive/Commodity)
  • Historical calibration notes

When to Load References

  • First use: Load uptrend_methodology.md for full framework understanding
  • Regular execution: References not needed - script handles scoring

Frequently asked questions about Uptrend Analyzer

Similar skills