skills/institutional-flow-tracker/SKILL.md
Use this skill to track institutional investor ownership changes and portfolio flows using 13F filings data. Analyzes hedge funds, mutual funds, and other institutional holders to identify stocks with significant smart money accumulation or distribution. Helps discover stocks before major moves by following where sophisticated investors are deploying capital.
npx skillsauth add MileniumTick/skills institutional-flow-trackerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill tracks institutional investor activity through 13F SEC filings to identify "smart money" flows into and out of stocks. By analyzing quarterly changes in institutional ownership, you can discover stocks that sophisticated investors are accumulating before major price moves, or identify potential risks when institutions are reducing positions.
Key Insight: Institutional investors (hedge funds, pension funds, mutual funds) manage trillions of dollars and conduct extensive research. Their collective buying/selling patterns often precede significant price movements by 1-3 quarters.
FMP_API_KEY environment variable or pass --api-key to scriptspip install requests (scripts handle missing dependencies gracefully)Use this skill when:
Do NOT use when:
This skill uses Financial Modeling Prep (FMP) API to access 13F filing data:
Setup:
# Set environment variable (preferred)
export FMP_API_KEY=your_key_here
# Or provide when running scripts
python3 scripts/track_institutional_flow.py --api-key YOUR_KEY
API Tier Requirements:
13F Filing Schedule:
Execute the main screening script to find stocks with notable institutional activity:
Quick scan (top 50 stocks by institutional change):
python3 scripts/track_institutional_flow.py \
--top 50 \
--min-change-percent 10
Sector-focused scan:
python3 scripts/track_institutional_flow.py \
--sector Technology \
--min-institutions 20
Custom screening:
python3 scripts/track_institutional_flow.py \
--min-market-cap 2000000000 \
--min-change-percent 15 \
--top 100 \
--output institutional_flow_results.json
Output includes:
For detailed analysis of a specific stock's institutional ownership:
python3 scripts/analyze_single_stock.py AAPL
This generates:
Key metrics to evaluate:
Note:
track_institution_portfolio.pyis not yet implemented. FMP API organizes institutional holder data by stock (not by institution), making full portfolio reconstruction impractical via this API alone.
Alternative approach — use analyze_single_stock.py to check if a specific institution holds a stock:
# Analyze a stock and look for a specific institution in the output
python3 institutional-flow-tracker/scripts/analyze_single_stock.py AAPL
# Then search the report for "Berkshire" or "ARK" in the Top 20 holders table
For full institution-level portfolio tracking, use these external resources:
Read the references for interpretation guidance:
references/13f_filings_guide.md - Understanding 13F data and limitationsreferences/institutional_investor_types.md - Different investor types and their strategiesreferences/interpretation_framework.md - How to interpret institutional flow signalsSignal Strength Framework:
Strong Bullish (Consider buying):
Moderate Bullish:
Neutral:
Moderate Bearish:
Strong Bearish (Consider selling/avoiding):
For new positions:
For existing holdings:
Screening workflow integration:
All analysis generates structured markdown reports saved to repository root:
Filename convention: institutional_flow_analysis_<TICKER/THEME>_<DATE>.md
Report sections:
All analysis now includes a reliability grade based on data quality:
The screening script (track_institutional_flow.py) automatically excludes Grade C stocks.
The single stock analysis (analyze_single_stock.py) displays the grade with appropriate warnings.
Why this matters: FMP returns different numbers of holders per quarter. A stock may show 5,415 holders in Q4 but only 201 in Q3. Without filtering, aggregate metrics produce misleading percent changes (e.g., +400%). The data quality module filters to "genuine" holders (present in both quarters) to produce reliable metrics.
Data Lag:
Coverage:
Reporting Rules:
Interpretation:
Insider + Institutional Combo:
Sector Rotation Detection:
Contrarian Plays:
Smart Money Validation:
The references/ folder contains detailed guides:
Main screening script for finding stocks with significant institutional changes.
Required:
--api-key: FMP API key (or set FMP_API_KEY environment variable)Optional:
--top N: Return top N stocks by institutional change (default: 50)--min-change-percent X: Minimum % change in institutional ownership (default: 10)--min-market-cap X: Minimum market cap in dollars (default: 1B)--sector NAME: Filter by specific sector--min-institutions N: Minimum number of institutional holders (default: 10)--limit N: Number of stocks to fetch from screener (default: 100). Lower values save API calls.--output FILE: Output JSON file path--output-dir DIR: Output directory for reports (default: reports/)--sort-by FIELD: Sort by 'ownership_change' or 'institution_count_change'Deep dive analysis on a specific stock's institutional ownership.
Required:
--api-key: FMP API key (or set FMP_API_KEY environment variable)Optional:
--quarters N: Number of quarters to analyze (default: 8, i.e., 2 years)--output FILE: Output markdown report path--output-dir DIR: Output directory for reports (default: reports/)--compare-to TICKER: Compare institutional ownership to another stock (future feature)Status: NOT YET IMPLEMENTED
This script is a placeholder. It prints alternative resources (WhaleWisdom, SEC EDGAR, DataRoma) and exits with error code 1. FMP API organizes institutional holder data by stock (not by institution), making full portfolio reconstruction impractical.
For institution-specific portfolio tracking, use:
Shared utility module used by both track_institutional_flow.py and analyze_single_stock.py:
Value Dividend Screener + Institutional Flow:
1. Run Value Dividend Screener to find candidates
2. For each candidate, check institutional flow
3. Prioritize stocks with rising institutional ownership
US Stock Analysis + Institutional Flow:
1. Run comprehensive fundamental analysis
2. Validate with institutional ownership trends
3. If institutions are selling, investigate why
Portfolio Manager + Institutional Flow:
1. Fetch current portfolio via Alpaca
2. Run institutional analysis on each holding
3. Flag positions with deteriorating institutional support
4. Consider rebalancing away from distribution
Technical Analyst + Institutional Flow:
1. Identify technical setup (e.g., breakout)
2. Check if institutional buying confirms
3. Higher conviction if both align
Note: This skill is designed for long-term investors (3-12 month horizon). For short-term trading, combine with technical analysis and other momentum indicators.
development
Writes, reviews, and debugs idiomatic Rust code with memory safety and zero-cost abstractions. Implements ownership patterns, manages lifetimes, designs trait hierarchies, builds async applications with tokio, and structures error handling with Result/Option. Use when building Rust applications, solving ownership or borrowing issues, designing trait-based APIs, implementing async/await concurrency, creating FFI bindings, or optimizing for performance and memory safety. Invoke for Rust, Cargo, ownership, borrowing, lifetimes, async Rust, tokio, zero-cost abstractions, memory safety, systems programming.
development
Guide for writing idiomatic Rust code based on Apollo GraphQL's best practices handbook. Use this skill when: (1) writing new Rust code or functions, (2) reviewing or refactoring existing Rust code, (3) deciding between borrowing vs cloning or ownership patterns, (4) implementing error handling with Result types, (5) optimizing Rust code for performance, (6) writing tests or documentation for Rust projects.
development
Master Rust async programming with Tokio, async traits, error handling, and concurrent patterns. Use when building async Rust applications, implementing concurrent systems, or debugging async code.
tools
When the user wants help with revenue operations, lead lifecycle management, or marketing-to-sales handoff processes. Also use when the user mentions 'RevOps,' 'revenue operations,' 'lead scoring,' 'lead routing,' 'MQL,' 'SQL,' 'pipeline stages,' 'deal desk,' 'CRM automation,' 'marketing-to-sales handoff,' 'data hygiene,' 'leads aren't getting to sales,' 'pipeline management,' 'lead qualification,' or 'when should marketing hand off to sales.' Use this for anything involving the systems and processes that connect marketing to revenue. For cold outreach emails, see cold-email. For email drip campaigns, see email-sequence. For pricing decisions, see pricing-strategy.