关于 institutional-flow-tracker
institutional-flow-tracker 是面向股票研究者的分析技能,利用 SEC 13F 季度申报追踪机构持仓变化。它提供筛选与单只股票分析,并纳入数据可靠性评级;数据存在申报延迟。
主要功能
- 01按机构持仓变化筛选股票
- 02分析单只股票的 8 个季度趋势
- 03查看持有人、增减仓与集中度
- 04提供数据可靠性评级
- 05生成 Markdown 分析报告
适用场景
- 01验证投资想法是否获机构增持
- 02发现机构持仓显著变化的股票
- 03复核持仓中的机构卖出风险
- 04分析行业资金轮动
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ mphinance/ alpha-skills --skill institutional-flow-tracker安装后在 Claude Code 中输入/institutional-flow-tracker确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
README.mdreferences/13f_filings_guide.mdinstitutional_investor_types.mdinterpretation_framework.mdscripts/analyze_single_stock.pydata_quality.pytrack_institution_portfolio.pytrack_institutional_flow.pyscripts/tests/conftest.pytest_filters.pytest_matching.pytest_parser_contract.pytest_single_stock.pytest_tracker_integration.py详细介绍
机构资金流向追踪器
概述
此技能通过分析 SEC 13F 申报文件追踪机构投资者的活动,识别资金流入和流出股票的情况。通过分析机构持仓的季度变化,你可以发现成熟投资者在股价大幅波动前正在增持的股票,或在机构减仓时识别潜在风险。
**关键洞察:**机构投资者(对冲基金、养老基金、共同基金)管理着数万亿美元资产,并会进行广泛研究。他们整体的买卖模式往往会提前 1-3 个季度预示显著的价格变动。
前置要求
- **FMP API 密钥:**设置
FMP_API_KEY环境变量,或在脚本中传入--api-key - **Python 3.8+:**运行分析脚本所需
- 依赖项:
pip install requests(脚本能够妥善处理依赖项缺失的情况)
何时使用此技能
在以下情况下使用此技能:
- 验证投资想法(检查聪明资金是否认同你的投资论点)
- 发现新的机会(寻找机构正在增持的股票)
- 评估风险(识别机构正在退出的股票)
- 监控投资组合(追踪机构对你所持股票的支持力度)
- 跟踪特定投资者(追踪 Warren Buffett、Cathie Wood 等)
- 分析行业轮动(识别机构正在将资金转向哪些领域)
请勿在以下情况下使用:
- 寻找实时日内信号(13F 数据有 45 天的申报延迟)
- 分析微型市值股票(市值低于 1 亿美元,且机构兴趣有限)
- 寻找短期交易信号(持有期限不足 3 个月)
数据来源与要求
必需:FMP API 密钥
此技能使用 Financial Modeling Prep(FMP)API 访问 13F 申报数据:
设置:
# 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 套餐要求:
- **免费套餐:**每天 250 次请求(足以每季度分析 20-30 只股票)
- **付费套餐:**更高的请求限额,适用于大规模筛选
13F 申报时间表:
- 每季度申报一次,须在季度结束后 45 天内提交
- Q1(1 月至 3 月):须于 5 月中旬前提交
- Q2(4 月至 6 月):须于 8 月中旬前提交
- Q3(7 月至 9 月):须于 11 月中旬前提交
- Q4(10 月至 12 月):须于次年 2 月中旬前提交
分析工作流
步骤 1:识别机构持仓发生显著变化的股票
运行主筛选脚本,找出机构活动显著的股票:
快速扫描(按机构持仓变化筛选前 50 只股票):
python3 scripts/track_institutional_flow.py \
--top 50 \
--min-change-percent 10
按行业筛选:
python3 scripts/track_institutional_flow.py \
--sector Technology \
--min-institutions 20
自定义筛选:
python3 scripts/track_institutional_flow.py \
--min-market-cap 2000000000 \
--min-change-percent 15 \
--top 100 \
--output institutional_flow_results.json
输出包括:
- 股票代码和公司名称
- 当前机构持股比例(占流通股总数的比例)
- 持有股数的环比变化
- 持有该股票的机构数量
- 机构数量的变化(新增买家与卖家)
- 主要机构持有人
步骤 2:深入分析特定股票
如需详细分析特定股票的机构持仓情况:
python3 scripts/analyze_single_stock.py AAPL
生成内容:
- 机构持仓的历史趋势(8 个季度)
- 所有机构持有人的列表及其持仓变化
- 集中度分析(前 10 大持有人占机构总持股的比例)
- 新建仓位、增持仓位与减持仓位的数量
- 数据质量评估及可靠性等级
需评估的关键指标:
- **持股比例:**机构持股比例较高(>70%)意味着更稳定,但上涨空间有限
- **持仓趋势:**持股比例上升 = 看涨;持股比例下降 = 看跌
- **集中度:**集中度较高(前 10 大持有人持股比例 >50%)时,如果这些机构卖出,风险较高
- **持有人质量:**是否有 Berkshire、Fidelity 等优质长期投资者,而非动量基金
步骤 3:跟踪特定机构投资者
注意:
track_institution_portfolio.py尚未实现。FMP API 按股票(而非机构)组织机构持有人数据,因此仅通过此 API 重建完整投资组合并不实际。
替代方法 — 使用 analyze_single_stock.py 检查特定机构是否持有某只股票:
# 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
如需跟踪完整的机构级投资组合,请使用以下外部资源:
- WhaleWisdom: https://whalewisdom.com(提供免费套餐,可查看 13F 投资组合)
- SEC EDGAR: https://www.sec.gov/cgi-bin/browse-edgar(官方 13F 文件)
- DataRoma: https://www.dataroma.com(超级投资者投资组合跟踪器)
步骤 4:解读与行动
阅读参考资料,了解解读指南:
references/13f_filings_guide.md- 了解 13F 数据及其局限性references/institutional_investor_types.md- 不同投资者类型及其策略references/interpretation_framework.md- 如何解读机构资金流信号
信号强度框架:
强烈看涨(考虑买入):
- 机构持股量环比增长 >15%
- 机构数量增加 >10%
- 优质长期投资者增持
- 当前持股比例较低(<40%),仍有增长空间
- 连续多个季度出现增持
温和看涨:
- 机构持股量环比增长 5-15%
- 新买入者和卖出者并存,但净值为正
- 当前持股比例为 40-70%
中性:
- 持股量变化不大(<5%)
- 买入者和卖出者数量相近
- 机构持股基础稳定
温和看跌:
- 机构持股量环比下降 5-15%
- 卖出者多于买入者
- 持股比例较高(>80%),限制了新买入者的空间
强烈看跌(考虑卖出或避开):
- 机构持股量环比下降 >15%
- 机构数量减少 >10%
- 优质投资者退出持仓
- 连续多个季度出现减持
- 集中度风险(最大持有人卖出大量持仓)
步骤 5:应用于投资组合
对于新建仓位:
- 对你的选股进行机构分析
- 寻找确认信号(机构也在增持)
- 如果出现强烈看跌信号,重新考虑或减小仓位
- 如果出现强烈看涨信号,可增强对投资论点的信心
对于现有持仓:
- 在 13F 申报截止日期后进行季度审查
- 监控减持情况(早期预警系统)
- 如果机构正在退出,重新评估你的投资论点
- 如果机构普遍卖出,可考虑减仓
筛选工作流集成:
- 使用 Value Dividend Screener 或其他筛选器寻找候选标的
- 对优先候选标的运行 Institutional Flow Tracker
- 优先考虑机构增持的股票
- 避开机构减持的股票
输出格式
所有分析都会生成结构化的 Markdown 报告,并保存到仓库根目录:
文件名约定: institutional_flow_analysis_<TICKER/THEME>_<DATE>.md
报告章节:
- 执行摘要(关键发现)
- 机构持股趋势(当前与历史对比)
- 主要持有人及其变动
- 新买入者与卖出者
- 集中度分析
- 解读与建议
- 数据来源和时间戳
数据可靠性等级
所有分析现在都会根据数据质量显示可靠性等级:
- 等级 A: 覆盖率 < 3x,匹配率 >= 50%,真实持仓者比例 >= 70%。可用于投资决策。
- 等级 B: 真实持仓者比例 >= 30%。仅供参考,请谨慎使用。
- 等级 C: 真实持仓者比例 < 30%。不可靠——已从筛选结果中排除。
筛选脚本(track_institutional_flow.py)会自动排除 C 级股票。
单只股票分析(analyze_single_stock.py)会显示等级并提供相应警告。
为什么这很重要: FMP 每季度返回的持仓者数量不同。一只股票在第 4 季度可能显示有 5,415 名持仓者,而第 3 季度只有 201 名。如果不进行筛选,汇总指标会产生 误导性的百分比变化(例如,+400%)。数据质量模块会筛选出“真实”持仓者 (连续两个季度均有记录),从而生成可靠的指标。
局限性和注意事项
数据延迟:
- 13F 文件有 45 天的报告延迟
- 持仓情况自申报日期起可能已发生变化
- 应将其用作确认指标,而非领先信号
覆盖范围:
- 只有管理资产超过 1 亿美元的机构才必须申报
- 不包括个人投资者和规模较小的基金
- 国际机构可能不会申报 13F
报告规则:
- 仅报告股票多头头寸(不包括空头、期权和债券)
- 持仓情况是季度末的快照
- 部分持仓可能属于保密信息(延迟报告)
解读:
- 相关性 ≠ 因果关系(即使机构买入,股价也可能下跌)
- 应考虑整体市场环境和基本面
- 结合技术分析和其他技能
高级用例
内幕人士 + 机构组合:
- 寻找内幕人士和机构都在买入的股票
- 双方信号一致时,效果尤为显著
板块轮动检测:
- 按板块跟踪机构资金流汇总情况
- 在价格体现轮动趋势之前,识别早期轮动迹象
逆向投资:
- 寻找机构正在卖出的优质股票(可能存在价值)
- 需要坚定的基本面判断
验证聪明资金动向:
- 建立重要仓位前,确认聪明资金是否持有相同看法
- 增强信心,或发现被忽视的风险
参考资料
references/ 文件夹包含详细指南:
- 13f_filings_guide.md - 13F SEC 申报综合指南,介绍申报内容、报告要求和数据质量注意事项
- institutional_investor_types.md - 不同类型的机构投资者(对冲基金、共同基金、养老基金等)、其典型策略以及如何解读其操作
- interpretation_framework.md - 解读机构持股变化的详细框架、信号质量评估,以及如何与其他分析结合
脚本参数
track_institutional_flow.py
用于筛选机构持仓发生显著变化的股票的主脚本。
必填:
--api-key:FMP API 密钥(或设置 FMP_API_KEY 环境变量)
可选:
--top N:按机构持仓变化返回前 N 只股票(默认:50)--min-change-percent X:机构持仓变化的最小百分比(默认:10)--min-market-cap X:最低市值(美元)(默认:1B)--sector NAME:按特定板块筛选--min-institutions N:机构持仓者的最低数量(默认:10)--limit N:从筛选器获取的股票数量(默认:100)。数值较低可减少 API 调用。--output FILE:输出 JSON 文件路径--output-dir DIR:报告输出目录(默认:reports/)--sort-by FIELD:按 'ownership_change' 或 'institution_count_change' 排序
analyze_single_stock.py
深入分析特定股票的机构持股情况。
必需:
- 股票代码(位置参数)
--api-key:FMP API 密钥(或设置 FMP_API_KEY 环境变量)
可选:
--quarters N:要分析的季度数(默认值:8,即 2 年)--output FILE:输出 Markdown 报告路径--output-dir DIR:报告输出目录(默认值:reports/)--compare-to TICKER:将机构持股情况与另一只股票进行比较(未来功能)
track_institution_portfolio.py
状态:尚未实现
此脚本是一个占位文件。它会打印替代资源(WhaleWisdom、SEC EDGAR、DataRoma),并以错误代码 1 退出。FMP API 按股票(而非机构)整理机构持有人数据,因此无法切实重建完整的投资组合。
如需跟踪特定机构的投资组合,请使用:
- WhaleWisdom:https://whalewisdom.com(提供免费套餐)
- SEC EDGAR:https://www.sec.gov/cgi-bin/browse-edgar
- DataRoma:https://www.dataroma.com
数据质量模块(data_quality.py)
由 track_institutional_flow.py 和 analyze_single_stock.py 共用的实用工具模块:
- **classify_holder():**将持有人归类为 genuine/new_full/exited/unknown
- **calculate_filtered_metrics():**仅使用 genuine 持有人计算指标
- **reliability_grade():**根据数据质量分配 A/B/C 等级
- **is_tradable_stock():**过滤掉 ETF、基金和不活跃股票
- **deduplicate_share_classes():**移除 BRK-A/B、GOOG/GOOGL 重复项
与其他技能集成
价值股息筛选器 + 机构资金流:
1. Run Value Dividend Screener to find candidates
2. For each candidate, check institutional flow
3. Prioritize stocks with rising institutional ownership
美股分析 + 机构资金流:
1. Run comprehensive fundamental analysis
2. Validate with institutional ownership trends
3. If institutions are selling, investigate why
投资组合管理器 + 机构资金流:
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
技术分析师 + 机构资金流:
1. Identify technical setup (e.g., breakout)
2. Check if institutional buying confirms
3. Higher conviction if both align
最佳实践
- **季度复查:**为 13F 申报截止日期设置日历提醒
- **多季度趋势:**关注持续趋势(3 个及以上季度),而非一次性变化
- **质量胜于数量:**伯克希尔增持 > 100 家小型基金增持
- **情境很重要:**股价下跌时持股比例上升,可能意味着价值投资者在接下落刀
- **结合信号:**切勿单独使用机构资金流
- **更新数据:**每个季度提交新的 13F 后重新运行分析
支持与资源
- FMP API 文档:https://financialmodelingprep.com/developer/docs
- SEC 13F 申报数据库:https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&type=13F
- 机构投资者数据库:https://whalewisdom.com(提供免费套餐)
**注意:**此技能面向长期投资者(3-12 个月投资期限)。对于短线交易,请结合技术分析和其他动量指标。