npx claudepluginhub adamlevoy/claude-plugins --plugin traderThis skill uses the workspace's default tool permissions.
---
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Generates or updates index.md listing all files and subdirectories in a target folder with 3-10 word descriptions from file contents. Use for indexing documentation directories.
Routes when user mentions trades, setups, positions, charts, patterns, or brokerage operations.
| Trigger | Route To | Purpose |
|---|---|---|
| portfolio, quote, schwab, account, order, buy, sell | Schwab/SKILL.md | Brokerage operations |
| market data, historical, aggregates, indicators, sma, rsi, macd | Massive/SKILL.md | Market data API |
| setup, pattern, breakout, chart, evaluate | This file | Technical analysis |
| journal, log trade | This file + Data/JOURNAL.md | Trade logging |
| watchlist | This file + Data/WATCHLIST.md | Ticker monitoring |
| positions, holdings | This file + Data/POSITIONS.md | Position management |
~/.claude/skills/Trader/
├── SKILL.md # This file - master routing + methodology
├── Schwab/ # Brokerage integration
│ ├── SKILL.md
│ ├── schwab_client.py
│ └── auth.py
├── Massive/ # Market data API
│ ├── SKILL.md
│ ├── massive_client.py # REST API wrapper
│ └── flat_files.py # S3 bulk data downloader
├── Data/
│ ├── WATCHLIST.md # Tickers being monitored
│ ├── POSITIONS.md # Open positions
│ └── JOURNAL.md # Trade log
├── PLAYBOOK.md # Pattern definitions
└── Research/ # Per-ticker notes
└── [TICKER].md
| Principle | Description |
|---|---|
| Style | Swing trading (days to weeks, sometimes months) |
| Direction | Long only - NO shorts |
| Markets | Equities and Crypto |
| Edge | Price action + pattern breakouts from extended consolidation |
What I DON'T do:
| MA | Purpose |
|---|---|
| 20 | Near-term trend, entry timing |
| 50 | Intermediate trend |
| 200 | Major trend direction |
Ideal: Price > 20 > 50 > 200
| Pattern | Type | Signal |
|---|---|---|
| Inverse H&S | Reversal | Neckline break |
| Cup & Handle | Continuation | Handle breakout |
| Falling Wedge | Both | Upper line break |
| Adam & Eve | Reversal | Neckline break |
| Ascending Triangle | Continuation | Resistance break |
| Bull Flag | Continuation | Flag break |
See PLAYBOOK.md for detailed definitions.
| Criterion | Weight |
|---|---|
| Pattern Clarity | 2x |
| Consolidation Length | 1.5x |
| Indicator Alignment | 1.5x |
| Risk/Reward | 2x |
| Volume Profile | 1x |
| Trend Context | 1x |
Interpretation:
Size = (Account Risk %) / (Stop Distance %)
Risk Rules:
| Command | Action |
|---|---|
| "Evaluate [TICKER] setup" | Score against criteria |
| "Review positions" | Check vs stops/targets |
| "Plan trade for [TICKER]" | Entry/stop/target with R:R |
| "Log trade [TICKER]" | Journal entry |
| "Research [TICKER]" | Fundamentals + catalysts |
| "Show watchlist" | Current monitoring list |
Full brokerage access via Schwab/ sub-skill:
from schwab_client import SchwabClient
client = SchwabClient()
# Account operations
client.get_positions("brokerage")
client.get_account("brokerage")
client.get_portfolio_summary()
# Market data
client.get_quote("NVDA")
client.get_quotes(["AAPL", "MSFT", "GOOGL"])
# Orders (dry_run=True by default)
client.place_limit_order(symbol, qty, price, dry_run=True)
See Schwab/SKILL.md for full API documentation.
Historical data, real-time quotes, and technical indicators via Massive/ sub-skill:
from massive_client import MassiveClient
client = MassiveClient()
# OHLC Aggregates
bars = client.get_aggregates("AAPL", "day", "2024-01-01", "2024-12-31")
daily = client.get_daily_bars("NVDA", days=252)
# Real-time Data
snapshot = client.get_snapshot("TSLA")
quote = client.get_quote("MSFT")
# Technical Indicators
sma_20 = client.get_sma("AAPL", window=20)
rsi = client.get_rsi("NVDA", window=14)
macd = client.get_macd("TSLA")
# Trading Helper
alignment = client.check_ma_alignment("AAPL") # Returns bullish_stack status
# Crypto
btc_bars = client.get_crypto_aggregates("BTC", "USD", "day")
Bulk Downloads (Flat Files):
from flat_files import MassiveFlatFiles
downloader = MassiveFlatFiles()
# Download daily aggregates
downloader.download_day_aggs("2024-01-01", "2024-01-31")
# Load into pandas
df = downloader.load_day_aggs_csv("2024-01-15", ticker="AAPL")
See Massive/SKILL.md for full API documentation.
## [TICKER] Setup Analysis
**Pattern**: [Name]
**Timeframe**: [Daily/Weekly]
**Consolidation**: [Duration]
### Indicators
- Ichimoku: [Status]
- MAs: [Alignment]
- Pivots: [Key levels]
- Fractals: [Swing points]
### Levels
- Entry: $XX.XX
- Stop: $XX.XX (reason)
- T1: $XX.XX (reason)
- T2: $XX.XX (reason)
- R:R: X.X:1
### Score: X/10
### Recommendation
[PASS / WATCHLIST / ENTER]