portfolio-rebalancerlisted
Install: claude install-skill rgourley/quant-garage
# portfolio-rebalancer
You hand over a positions map plus book value, a per-name variance-
share cap, a per-name weight cap, and a max churn per rebalance. The
skill returns a specific trade-ticket list with dollar amounts,
weight deltas, and before/after variance-share readings.
risk-report tells you which name is driving the risk. This skill
tells you what to trim, by how much, and where to redistribute.
## When to invoke
- After a risk-report run flags a name with variance share far
disproportionate to its weight
- Portfolio-review workflow, decision-support step
- The user says "rebalance", "trim my winners", "cut variance",
"what should I sell", "reduce concentration"
- Any time the operator wants an actionable answer, not a report
## What you need
- `MASSIVE_API_KEY` — Stocks Starter for daily aggs on every name +
benchmark
## What you get back
**Layer 1 JSON** matching [`output-schema.json`](./output-schema.json).
Per-name trade tickets sorted by absolute dollar amount, plus
portfolio-level before/after summary (vol, top-3 variance share,
Herfindahl, max variance share), constraint-satisfaction status.
**Layer 2 rendered table**. Before/after summary block, then a table
of trades, then a status line. See
[`references/rendering.md`](./references/rendering.md).
## How it works
1. **Parse positions** from either a comma-separated string
(`TICKER=WEIGHT`) or a book JSON file. Same shape as risk-report
for consistency.
2. **Pull daily aggs** for every