llmquant-etfs — Claude Code skill: ETF overlap and exposure
Router skill that sends ETF questions to the right workflow: holdings, overlap, concentration, issuer snapshot, theme exposure.
npx skills add LLMQuant/skills --skill llmquant-etfs -a claude-codeWhat llmquant-etfs does
The skill reads your ETF request and picks the matching workflow. Right now the index holds one route, workflows/etf-overlap-report.md, which covers holdings comparison, overlap, concentration and exposure breakdowns.
It starts by pinning down the tickers, the comparison universe, the as-of date and the output you want. Then it opens only that workflow and the local resources it needs. Holdings, fund metadata, prices and coverage notices come from LLMQuant Data: issuer, category, expense ratio, market price, NAV, weighted holdings with sectors and countries, plus price and fund-flow history.
When coverage for a ticker is unsupported, the skill names the ticker and the identifiers it needs instead of guessing. No LLMQuant Data or compatible data MCP? You supply issuer holdings files or tables. Approximating holdings from memory is off the table. Every report carries as_of_date, source, stale flags and missing fields, so check the date before you act on the weights.
What it helps with
- compare holdings across two ETFs and surface overlap
- measure top-name concentration in a fund
- break an ETF down by sector and country exposure
- pull an issuer and category snapshot for a ticker
- track fund-flow and price history
Example prompts for the agent
- compare SPY and IVV holdings, show overlap and concentration
- break QQQ down by sector as of quarter end
- give me an issuer and expense ratio snapshot for VTI
How to install llmquant-etfs
1Skills CLI (Vercel)
npx skills add LLMQuant/skills --skill llmquant-etfs -a claude-code2Manually: put the files in place
~/.claude/skills/llmquant-etfs/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/llmquant-etfs/
1Skills CLI (Vercel)
npx skills add LLMQuant/skills --skill llmquant-etfs -a codex2Manually: put the files in place
.agents/skills/llmquant-etfs/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add LLMQuant/skills --skill llmquant-etfs -a cursor2Manually: put the files in place
.cursor/skills/llmquant-etfs/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install LLMQuant/skills llmquant-etfs2Manually: put the files in place
.github/skills/llmquant-etfs/SKILL.md1Skills CLI (Vercel)
npx skills add LLMQuant/skills --skill llmquant-etfs -a gemini-cli2Platform CLI
gemini skills install https://github.com/LLMQuant/skills --path skills/llmquant-etfsManually: put the files in place
.devin/skills/llmquant-etfs/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add LLMQuant/skills --skill llmquant-etfs -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about llmquant-etfs
How do I install llmquant-etfs in Claude?
Run npx skills add LLMQuant/skills --skill llmquant-etfs -a claude-code. The skill lands in ~/.claude/skills/llmquant-etfs/SKILL.md.
What does llmquant-etfs do?
It routes ETF tasks to a workflow. One route ships today: the holdings overlap report.
What does the skill need to run?
LLMQuant Data or a compatible data MCP. Without either, it asks you for issuer holdings files or tables rather than estimating holdings from memory.
Source text
SKILL.md · MIT
--- name: llmquant-etfs description: Router skill for LLMQuant ETFs workflows. Use when the user needs ETF holdings, overlap, concentration, issuer snapshot, or theme exposure analysis. input_data_source: LLMQuant Data category: etfs --- # LLMQuant ETFs This category routes ETF analysis tasks to holdings and exposure workflows. ## Routing Rules 1. Identify the ETF tickers, comparison universe, as-of date, and required output. 2. Select the closest workflow below. 3. Open only the selected workflow and required local resources. 4. Use LLMQuant Data for holdings, fund metadata, prices, and coverage notices. 5. Report holdings `as_of_date`, source, stale flags, unsupported tickers, and missing fields. ## Workflow Index | User intent | Workflow | |---|---| | Compare ETF holdings, overlap, concentration, and exposure. | [`workflows/etf-overlap-report.md`](workflows/etf-overlap-report.md) | ## LLMQuant Data Contract Prefer LLMQuant Data when available. The workflows may need these data capabilities: - Look up ETF identity, issuer, category, expense ratio, market price, NAV, and coverage status. - Retrieve ETF holdings with weights, identifiers, sectors, countries, source, and holdings as-of date. - Compare ETF holdings overlap, top-name concentration, and exposure breakdowns. - Retrieve price history, fund-flow history, and sector exposure history when available. Fallback: - If holdings coverage is unsupported, report the unsupported ticker and the ETF identifiers needed. - If LLMQuant Data or a compatible data MCP is unavailable, ask the user for issuer holdings files or holdings tables. - Do not approximate holdings from memory.
© LLMQuant · MIT · LLMQuant/skills