agent-instructions
Use when writing project instructions for a coding agent (CLAUDE.md, AGENTS.md, or equivalent). Covers what belongs in them, what does not, structure, and…
Use when analyzing price and volume structure. Covers trend identification, support and resistance, volume confirmation, moving-average structure, and the limits of what chart analysis can tell you.
$ npx -y skills add nimadorostkar/Claude-Skills-collection --skill technical-analysis --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/technical-analysisContext preview
The summary Claude sees to decide when to auto-load this skill.
Use when analyzing price and volume structure. Covers trend identification, support and resistance, volume confirmation, moving-average structure, and the limits of what chart analysis can tell you.
name: technical-analysis description: Use when analyzing price and volume structure. Covers trend identification, support and resistance, volume confirmation, moving-average structure, and the limits of what chart analysis can tell you. metadata: category: finance version: 1.0.0 tags: [technical-analysis, charts, trend, volume, indicators]
Read price and volume structure to characterize a trend and identify where a thesis would be proven wrong. Technical analysis describes what price is doing; it does not predict what it will do, and treating it as prediction is where practitioners lose money.
1. **Establish the trend, on the right time frame** — Higher highs and higher lows is an uptrend. The 50-day above the 200-day, both rising, is a confirmed one. Match the time frame to the holding period; a daily chart is irrelevant to a multi-year position. 2. **Mark the levels that matter** — Prior swing highs and lows, and areas where price has repeatedly reversed. A level touched twice is a hypothesis; a level touched four times is a level. 3. **Check volume** — A breakout on below-average volume is a hypothesis without evidence. An advance on declining volume is a warning. 4. **Measure relative strength** — An instrument rising less than its index in an advance is weak, whatever the chart looks like in isolation. 5. **Define the invalidation before entry** — The price at which the read is wrong. This is the stop, and it must be identified before there is money at stake and an incentive to move it.
**Characterizing structure objectively:**
def trend_state(df: pd.DataFrame) -> TrendState:
"""Objective structure: no interpretation, no drawing on charts."""
ma50 = df.close.rolling(50).mean()
ma200 = df.close.rolling(200).mean()
swing_highs = find_swing_highs(df, lookback=10)
swing_lows = find_swing_lows(df, lookback=10)
higher_highs = swing_highs.iloc[-1] > swing_highs.iloc[-2]
higher_lows = swing_lows.iloc[-1] > swing_lows.iloc[-2]
return TrendState(
structure=(
"uptrend" if higher_highs and higher_lows else
"downtrend" if not higher_highs and not higher_lows else
"range"
),
ma_aligned=bool(ma50.iloc[-1] > ma200.iloc[-1] and ma200.diff().iloc[-1] > 0),
above_ma50=bool(df.close.iloc[-1] > ma50.iloc[-1]),
# The invalidation level: below the last higher low, the uptrend structure
# is broken by definition. This is the stop, and it was chosen by the
# structure rather than by how much loss feels tolerable.
invalidation=float(swing_lows.iloc[-1]),
# Volume confirmation on the most recent advance.
volume_confirms=bool(
df.volume.iloc[-5:].mean() > df.volume.iloc[-50:].mean() * 1.2
and df.close.iloc[-1] > df.close.iloc[-5]
),
# Relative strength: is it outperforming the benchmark?
rs_vs_benchmark=float(
(df.close.iloc[-1] / df.close.iloc[-63] - 1)
- (bench.close.iloc[-1] / bench.close.iloc[-63] - 1)
),
)**A read that is honest about its limits:**
AAPL, daily:
Structure : Uptrend. Higher highs and higher lows since the March low.
MA alignment : 50-day above 200-day, both rising. Confirmed uptrend.
Location : Price is 11% above the 50-day. Extended; the prior three
touches of the 50-day were buyable, but chasing here has
poor asymmetry.
Volume : The last advance came on volume 18% BELOW the 50-day average.
The move is not confirmed. This is the most important line here.
Relative str. : +4.2% vs SPY over 63 days. Leading.
Invalidation : 182.40 — the last higher low. Below that, the uptrend structure
is broken and this read is wrong.
What this does NOT tell you: whether it goes up from here. The structure is
constructive and the volume is not. That is a description, not a forecast.A curated library of 137 production-grade skills for Claude and other AI coding agents. Every skill follows one structure, speaks with one voice, and earns its place by changing what the agent does.
Repo: nimadorostkar/Claude-Skills-collection
Use when writing project instructions for a coding agent (CLAUDE.md, AGENTS.md, or equivalent). Covers what belongs in them, what does not, structure, and…
Use when an agent needs state that survives a session or a context compaction. Covers what to persist, file-based memory, structuring notes for retrieval, and…
Use when automating agent behavior with lifecycle hooks. Covers hook events, deterministic enforcement of rules the model should not be trusted to remember,…
Use when packaging skills, commands, hooks, and MCP servers into a distributable plugin. Covers manifest structure, bundling, versioning, testing, and…
Use when writing a new skill for an AI agent. Covers scoping, description writing for reliable triggering, progressive disclosure, and the difference between a…
Use when reviewing or improving an existing agent skill. Covers triggering accuracy, content quality, redundancy with the base model, and measuring whether the…