quantwise 1.2.0 → 1.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/skills/README.md +80 -0
- package/.claude/skills/backtest-expert/SKILL.md +206 -0
- package/.claude/skills/backtest-expert/references/failed_tests.md +236 -0
- package/.claude/skills/backtest-expert/references/methodology.md +227 -0
- package/.claude/skills/breadth-chart-analyst/SKILL.md +583 -0
- package/.claude/skills/breadth-chart-analyst/assets/SP500_Breadth_Index_200MA_8MA.jpeg +0 -0
- package/.claude/skills/breadth-chart-analyst/assets/US_Stock_Market_Uptrend_Ratio.jpeg +0 -0
- package/.claude/skills/breadth-chart-analyst/assets/breadth_analysis_template.md +558 -0
- package/.claude/skills/breadth-chart-analyst/references/breadth_chart_methodology.md +590 -0
- package/.claude/skills/canslim-screener/SKILL.md +599 -0
- package/.claude/skills/canslim-screener/references/canslim_methodology.md +606 -0
- package/.claude/skills/canslim-screener/references/fmp_api_endpoints.md +707 -0
- package/.claude/skills/canslim-screener/references/interpretation_guide.md +516 -0
- package/.claude/skills/canslim-screener/references/scoring_system.md +597 -0
- package/.claude/skills/canslim-screener/scripts/calculators/earnings_calculator.py +343 -0
- package/.claude/skills/canslim-screener/scripts/calculators/growth_calculator.py +334 -0
- package/.claude/skills/canslim-screener/scripts/calculators/institutional_calculator.py +347 -0
- package/.claude/skills/canslim-screener/scripts/calculators/leadership_calculator.py +380 -0
- package/.claude/skills/canslim-screener/scripts/calculators/market_calculator.py +244 -0
- package/.claude/skills/canslim-screener/scripts/calculators/new_highs_calculator.py +194 -0
- package/.claude/skills/canslim-screener/scripts/calculators/supply_demand_calculator.py +221 -0
- package/.claude/skills/canslim-screener/scripts/finviz_stock_client.py +227 -0
- package/.claude/skills/canslim-screener/scripts/fmp_client.py +393 -0
- package/.claude/skills/canslim-screener/scripts/report_generator.py +405 -0
- package/.claude/skills/canslim-screener/scripts/scorer.py +625 -0
- package/.claude/skills/canslim-screener/scripts/screen_canslim.py +361 -0
- package/.claude/skills/canslim-screener/scripts/test_institutional_endpoint.py +109 -0
- package/.claude/skills/chart/SKILL.md +20 -0
- package/.claude/skills/dividend-growth-pullback-screener/SKILL.md +322 -0
- package/.claude/skills/dividend-growth-pullback-screener/references/dividend_growth_compounding.md +400 -0
- package/.claude/skills/dividend-growth-pullback-screener/references/fmp_api_guide.md +642 -0
- package/.claude/skills/dividend-growth-pullback-screener/references/rsi_oversold_strategy.md +333 -0
- package/.claude/skills/dividend-growth-pullback-screener/scripts/screen_dividend_growth_rsi.py +1155 -0
- package/.claude/skills/earnings-calendar/SKILL.md +721 -0
- package/.claude/skills/earnings-calendar/assets/earnings_report_template.md +102 -0
- package/.claude/skills/earnings-calendar/references/fmp_api_guide.md +590 -0
- package/.claude/skills/earnings-calendar/scripts/fetch_earnings_fmp.py +443 -0
- package/.claude/skills/earnings-calendar/scripts/generate_report.py +366 -0
- package/.claude/skills/economic-calendar-fetcher/SKILL.md +365 -0
- package/.claude/skills/economic-calendar-fetcher/references/fmp_api_documentation.md +345 -0
- package/.claude/skills/economic-calendar-fetcher/scripts/get_economic_calendar.py +267 -0
- package/.claude/skills/ftd-detector/SKILL.md +147 -0
- package/.claude/skills/ftd-detector/references/ftd_methodology.md +188 -0
- package/.claude/skills/ftd-detector/references/post_ftd_guide.md +185 -0
- package/.claude/skills/ftd-detector/scripts/fmp_client.py +158 -0
- package/.claude/skills/ftd-detector/scripts/ftd_detector.py +280 -0
- package/.claude/skills/ftd-detector/scripts/post_ftd_monitor.py +404 -0
- package/.claude/skills/ftd-detector/scripts/rally_tracker.py +508 -0
- package/.claude/skills/ftd-detector/scripts/report_generator.py +341 -0
- package/.claude/skills/ftd-detector/scripts/tests/conftest.py +9 -0
- package/.claude/skills/ftd-detector/scripts/tests/helpers.py +107 -0
- package/.claude/skills/ftd-detector/scripts/tests/test_post_ftd_monitor.py +311 -0
- package/.claude/skills/ftd-detector/scripts/tests/test_rally_tracker.py +302 -0
- package/.claude/skills/institutional-flow-tracker/README.md +362 -0
- package/.claude/skills/institutional-flow-tracker/SKILL.md +357 -0
- package/.claude/skills/institutional-flow-tracker/references/13f_filings_guide.md +383 -0
- package/.claude/skills/institutional-flow-tracker/references/institutional_investor_types.md +580 -0
- package/.claude/skills/institutional-flow-tracker/references/interpretation_framework.md +573 -0
- package/.claude/skills/institutional-flow-tracker/scripts/analyze_single_stock.py +457 -0
- package/.claude/skills/institutional-flow-tracker/scripts/track_institution_portfolio.py +108 -0
- package/.claude/skills/institutional-flow-tracker/scripts/track_institutional_flow.py +450 -0
- package/.claude/skills/macro-regime-detector/SKILL.md +86 -0
- package/.claude/skills/macro-regime-detector/references/historical_regimes.md +124 -0
- package/.claude/skills/macro-regime-detector/references/indicator_interpretation_guide.md +144 -0
- package/.claude/skills/macro-regime-detector/references/regime_detection_methodology.md +138 -0
- package/.claude/skills/macro-regime-detector/scripts/calculators/__init__.py +1 -0
- package/.claude/skills/macro-regime-detector/scripts/calculators/concentration_calculator.py +165 -0
- package/.claude/skills/macro-regime-detector/scripts/calculators/credit_conditions_calculator.py +124 -0
- package/.claude/skills/macro-regime-detector/scripts/calculators/equity_bond_calculator.py +198 -0
- package/.claude/skills/macro-regime-detector/scripts/calculators/sector_rotation_calculator.py +123 -0
- package/.claude/skills/macro-regime-detector/scripts/calculators/size_factor_calculator.py +131 -0
- package/.claude/skills/macro-regime-detector/scripts/calculators/utils.py +347 -0
- package/.claude/skills/macro-regime-detector/scripts/calculators/yield_curve_calculator.py +279 -0
- package/.claude/skills/macro-regime-detector/scripts/fmp_client.py +134 -0
- package/.claude/skills/macro-regime-detector/scripts/macro_regime_detector.py +278 -0
- package/.claude/skills/macro-regime-detector/scripts/report_generator.py +327 -0
- package/.claude/skills/macro-regime-detector/scripts/scorer.py +574 -0
- package/.claude/skills/macro-regime-detector/scripts/tests/conftest.py +9 -0
- package/.claude/skills/macro-regime-detector/scripts/tests/test_concentration.py +78 -0
- package/.claude/skills/macro-regime-detector/scripts/tests/test_credit_conditions.py +59 -0
- package/.claude/skills/macro-regime-detector/scripts/tests/test_equity_bond.py +74 -0
- package/.claude/skills/macro-regime-detector/scripts/tests/test_helpers.py +90 -0
- package/.claude/skills/macro-regime-detector/scripts/tests/test_scorer.py +439 -0
- package/.claude/skills/macro-regime-detector/scripts/tests/test_sector_rotation.py +78 -0
- package/.claude/skills/macro-regime-detector/scripts/tests/test_size_factor.py +59 -0
- package/.claude/skills/macro-regime-detector/scripts/tests/test_utils.py +126 -0
- package/.claude/skills/macro-regime-detector/scripts/tests/test_yield_curve.py +64 -0
- package/.claude/skills/market-breadth-analyzer/SKILL.md +121 -0
- package/.claude/skills/market-breadth-analyzer/references/breadth_analysis_methodology.md +168 -0
- package/.claude/skills/market-breadth-analyzer/scripts/calculators/__init__.py +1 -0
- package/.claude/skills/market-breadth-analyzer/scripts/calculators/bearish_signal_calculator.py +150 -0
- package/.claude/skills/market-breadth-analyzer/scripts/calculators/cycle_calculator.py +168 -0
- package/.claude/skills/market-breadth-analyzer/scripts/calculators/divergence_calculator.py +119 -0
- package/.claude/skills/market-breadth-analyzer/scripts/calculators/historical_context_calculator.py +120 -0
- package/.claude/skills/market-breadth-analyzer/scripts/calculators/ma_crossover_calculator.py +115 -0
- package/.claude/skills/market-breadth-analyzer/scripts/calculators/trend_level_calculator.py +103 -0
- package/.claude/skills/market-breadth-analyzer/scripts/csv_client.py +225 -0
- package/.claude/skills/market-breadth-analyzer/scripts/market_breadth_analyzer.py +307 -0
- package/.claude/skills/market-breadth-analyzer/scripts/report_generator.py +330 -0
- package/.claude/skills/market-breadth-analyzer/scripts/scorer.py +271 -0
- package/.claude/skills/market-environment-analysis/SKILL.md +139 -0
- package/.claude/skills/market-environment-analysis/references/analysis_patterns.md +124 -0
- package/.claude/skills/market-environment-analysis/references/indicators.md +99 -0
- package/.claude/skills/market-environment-analysis/scripts/market_utils.py +127 -0
- package/.claude/skills/market-news-analyst/SKILL.md +714 -0
- package/.claude/skills/market-news-analyst/references/corporate_news_impact.md +446 -0
- package/.claude/skills/market-news-analyst/references/geopolitical_commodity_correlations.md +499 -0
- package/.claude/skills/market-news-analyst/references/market_event_patterns.md +393 -0
- package/.claude/skills/market-news-analyst/references/trusted_news_sources.md +510 -0
- package/.claude/skills/market-top-detector/SKILL.md +159 -0
- package/.claude/skills/market-top-detector/references/distribution_day_guide.md +100 -0
- package/.claude/skills/market-top-detector/references/historical_tops.md +142 -0
- package/.claude/skills/market-top-detector/references/market_top_methodology.md +167 -0
- package/.claude/skills/market-top-detector/scripts/calculators/__init__.py +17 -0
- package/.claude/skills/market-top-detector/scripts/calculators/breadth_calculator.py +116 -0
- package/.claude/skills/market-top-detector/scripts/calculators/defensive_rotation_calculator.py +127 -0
- package/.claude/skills/market-top-detector/scripts/calculators/distribution_day_calculator.py +161 -0
- package/.claude/skills/market-top-detector/scripts/calculators/index_technical_calculator.py +254 -0
- package/.claude/skills/market-top-detector/scripts/calculators/leading_stock_calculator.py +198 -0
- package/.claude/skills/market-top-detector/scripts/calculators/sentiment_calculator.py +213 -0
- package/.claude/skills/market-top-detector/scripts/fmp_client.py +158 -0
- package/.claude/skills/market-top-detector/scripts/market_top_detector.py +349 -0
- package/.claude/skills/market-top-detector/scripts/report_generator.py +314 -0
- package/.claude/skills/market-top-detector/scripts/scorer.py +473 -0
- package/.claude/skills/market-top-detector/scripts/tests/conftest.py +9 -0
- package/.claude/skills/market-top-detector/scripts/tests/helpers.py +49 -0
- package/.claude/skills/market-top-detector/scripts/tests/test_breadth.py +62 -0
- package/.claude/skills/market-top-detector/scripts/tests/test_defensive_rotation.py +56 -0
- package/.claude/skills/market-top-detector/scripts/tests/test_distribution_day.py +92 -0
- package/.claude/skills/market-top-detector/scripts/tests/test_index_technical.py +73 -0
- package/.claude/skills/market-top-detector/scripts/tests/test_leading_stock.py +57 -0
- package/.claude/skills/market-top-detector/scripts/tests/test_scorer.py +180 -0
- package/.claude/skills/market-top-detector/scripts/tests/test_sentiment.py +64 -0
- package/.claude/skills/options-strategy-advisor/README.md +469 -0
- package/.claude/skills/options-strategy-advisor/SKILL.md +959 -0
- package/.claude/skills/options-strategy-advisor/scripts/black_scholes.py +495 -0
- package/.claude/skills/pair-trade-screener/README.md +389 -0
- package/.claude/skills/pair-trade-screener/SKILL.md +622 -0
- package/.claude/skills/pair-trade-screener/references/cointegration_guide.md +745 -0
- package/.claude/skills/pair-trade-screener/references/methodology.md +853 -0
- package/.claude/skills/pair-trade-screener/scripts/analyze_spread.py +394 -0
- package/.claude/skills/pair-trade-screener/scripts/find_pairs.py +535 -0
- package/.claude/skills/portfolio-manager/README.md +394 -0
- package/.claude/skills/portfolio-manager/SKILL.md +750 -0
- package/.claude/skills/portfolio-manager/references/alpaca-mcp-setup.md +367 -0
- package/.claude/skills/portfolio-manager/references/asset-allocation.md +502 -0
- package/.claude/skills/portfolio-manager/references/diversification-principles.md +553 -0
- package/.claude/skills/portfolio-manager/references/portfolio-risk-metrics.md +603 -0
- package/.claude/skills/portfolio-manager/references/position-evaluation.md +477 -0
- package/.claude/skills/portfolio-manager/references/rebalancing-strategies.md +715 -0
- package/.claude/skills/portfolio-manager/references/risk-profile-questionnaire.md +608 -0
- package/.claude/skills/portfolio-manager/references/target-allocations.md +558 -0
- package/.claude/skills/portfolio-manager/scripts/test_alpaca_connection.py +286 -0
- package/.claude/skills/scenario-analyzer/SKILL.md +317 -0
- package/.claude/skills/scenario-analyzer/references/headline_event_patterns.md +264 -0
- package/.claude/skills/scenario-analyzer/references/scenario_playbooks.md +320 -0
- package/.claude/skills/scenario-analyzer/references/sector_sensitivity_matrix.md +217 -0
- package/.claude/skills/sector-analyst/SKILL.md +206 -0
- package/.claude/skills/sector-analyst/assets/industory_performance_1.jpeg +0 -0
- package/.claude/skills/sector-analyst/assets/industory_performance_2.jpeg +0 -0
- package/.claude/skills/sector-analyst/assets/sector_performance.jpeg +0 -0
- package/.claude/skills/sector-analyst/references/sector_rotation.md +170 -0
- package/.claude/skills/stanley-druckenmiller-investment/SKILL.md +84 -0
- package/.claude/skills/stanley-druckenmiller-investment/references/case-studies.md +148 -0
- package/.claude/skills/stanley-druckenmiller-investment/references/investment-philosophy.md +80 -0
- package/.claude/skills/stanley-druckenmiller-investment/references/market-analysis-guide.md +146 -0
- package/.claude/skills/stock/NOTION_SETUP.md +33 -0
- package/.claude/skills/stock/SKILL.md +38 -0
- package/.claude/skills/technical-analyst/SKILL.md +238 -0
- package/.claude/skills/technical-analyst/assets/analysis_template.md +183 -0
- package/.claude/skills/technical-analyst/references/technical_analysis_framework.md +282 -0
- package/.claude/skills/theme-detector/SKILL.md +320 -0
- package/.claude/skills/theme-detector/assets/report_template.md +155 -0
- package/.claude/skills/theme-detector/references/cross_sector_themes.md +252 -0
- package/.claude/skills/theme-detector/references/finviz_industry_codes.md +403 -0
- package/.claude/skills/theme-detector/references/thematic_etf_catalog.md +333 -0
- package/.claude/skills/theme-detector/references/theme_detection_methodology.md +430 -0
- package/.claude/skills/theme-detector/scripts/calculators/__init__.py +1 -0
- package/.claude/skills/theme-detector/scripts/calculators/heat_calculator.py +123 -0
- package/.claude/skills/theme-detector/scripts/calculators/industry_ranker.py +98 -0
- package/.claude/skills/theme-detector/scripts/calculators/lifecycle_calculator.py +172 -0
- package/.claude/skills/theme-detector/scripts/calculators/theme_classifier.py +195 -0
- package/.claude/skills/theme-detector/scripts/calculators/theme_discoverer.py +280 -0
- package/.claude/skills/theme-detector/scripts/config_loader.py +142 -0
- package/.claude/skills/theme-detector/scripts/default_theme_config.py +254 -0
- package/.claude/skills/theme-detector/scripts/etf_scanner.py +609 -0
- package/.claude/skills/theme-detector/scripts/finviz_performance_client.py +131 -0
- package/.claude/skills/theme-detector/scripts/report_generator.py +490 -0
- package/.claude/skills/theme-detector/scripts/representative_stock_selector.py +673 -0
- package/.claude/skills/theme-detector/scripts/scorer.py +87 -0
- package/.claude/skills/theme-detector/scripts/tests/README.md +21 -0
- package/.claude/skills/theme-detector/scripts/tests/conftest.py +9 -0
- package/.claude/skills/theme-detector/scripts/tests/test_config_loader.py +239 -0
- package/.claude/skills/theme-detector/scripts/tests/test_etf_scanner.py +810 -0
- package/.claude/skills/theme-detector/scripts/tests/test_heat_calculator.py +245 -0
- package/.claude/skills/theme-detector/scripts/tests/test_industry_ranker.py +256 -0
- package/.claude/skills/theme-detector/scripts/tests/test_lifecycle_calculator.py +301 -0
- package/.claude/skills/theme-detector/scripts/tests/test_report_generator.py +624 -0
- package/.claude/skills/theme-detector/scripts/tests/test_representative_stock_selector.py +898 -0
- package/.claude/skills/theme-detector/scripts/tests/test_scorer.py +185 -0
- package/.claude/skills/theme-detector/scripts/tests/test_theme_classifier.py +534 -0
- package/.claude/skills/theme-detector/scripts/tests/test_theme_detector_e2e.py +467 -0
- package/.claude/skills/theme-detector/scripts/tests/test_theme_discoverer.py +458 -0
- package/.claude/skills/theme-detector/scripts/tests/test_uptrend_client.py +76 -0
- package/.claude/skills/theme-detector/scripts/theme_detector.py +815 -0
- package/.claude/skills/theme-detector/scripts/themes.yaml +168 -0
- package/.claude/skills/theme-detector/scripts/uptrend_client.py +241 -0
- package/.claude/skills/uptrend-analyzer/SKILL.md +108 -0
- package/.claude/skills/uptrend-analyzer/references/uptrend_methodology.md +215 -0
- package/.claude/skills/uptrend-analyzer/scripts/calculators/__init__.py +1 -0
- package/.claude/skills/uptrend-analyzer/scripts/calculators/historical_context_calculator.py +122 -0
- package/.claude/skills/uptrend-analyzer/scripts/calculators/market_breadth_calculator.py +145 -0
- package/.claude/skills/uptrend-analyzer/scripts/calculators/momentum_calculator.py +183 -0
- package/.claude/skills/uptrend-analyzer/scripts/calculators/sector_participation_calculator.py +204 -0
- package/.claude/skills/uptrend-analyzer/scripts/calculators/sector_rotation_calculator.py +218 -0
- package/.claude/skills/uptrend-analyzer/scripts/data_fetcher.py +236 -0
- package/.claude/skills/uptrend-analyzer/scripts/report_generator.py +329 -0
- package/.claude/skills/uptrend-analyzer/scripts/scorer.py +276 -0
- package/.claude/skills/uptrend-analyzer/scripts/uptrend_analyzer.py +219 -0
- package/.claude/skills/us-market-bubble-detector/CHANGELOG.md +118 -0
- package/.claude/skills/us-market-bubble-detector/SKILL.md +545 -0
- package/.claude/skills/us-market-bubble-detector/references/bubble_framework.md +335 -0
- package/.claude/skills/us-market-bubble-detector/references/historical_cases.md +327 -0
- package/.claude/skills/us-market-bubble-detector/references/implementation_guide.md +473 -0
- package/.claude/skills/us-market-bubble-detector/references/quick_reference.md +354 -0
- package/.claude/skills/us-market-bubble-detector/references/quick_reference_en.md +342 -0
- package/.claude/skills/us-market-bubble-detector/scripts/bubble_scorer.py +309 -0
- package/.claude/skills/us-stock-analysis/SKILL.md +294 -0
- package/.claude/skills/us-stock-analysis/references/financial-metrics.md +172 -0
- package/.claude/skills/us-stock-analysis/references/fundamental-analysis.md +129 -0
- package/.claude/skills/us-stock-analysis/references/report-template.md +207 -0
- package/.claude/skills/us-stock-analysis/references/technical-analysis.md +93 -0
- package/.claude/skills/value-dividend-screener/SKILL.md +562 -0
- package/.claude/skills/value-dividend-screener/references/fmp_api_guide.md +348 -0
- package/.claude/skills/value-dividend-screener/references/screening_methodology.md +315 -0
- package/.claude/skills/value-dividend-screener/scripts/screen_dividend_stocks.py +1138 -0
- package/.claude/skills/vcp-screener/SKILL.md +79 -0
- package/.claude/skills/vcp-screener/references/fmp_api_endpoints.md +45 -0
- package/.claude/skills/vcp-screener/references/scoring_system.md +154 -0
- package/.claude/skills/vcp-screener/references/vcp_methodology.md +124 -0
- package/.claude/skills/vcp-screener/scripts/calculators/__init__.py +1 -0
- package/.claude/skills/vcp-screener/scripts/calculators/pivot_proximity_calculator.py +139 -0
- package/.claude/skills/vcp-screener/scripts/calculators/relative_strength_calculator.py +161 -0
- package/.claude/skills/vcp-screener/scripts/calculators/trend_template_calculator.py +228 -0
- package/.claude/skills/vcp-screener/scripts/calculators/vcp_pattern_calculator.py +322 -0
- package/.claude/skills/vcp-screener/scripts/calculators/volume_pattern_calculator.py +121 -0
- package/.claude/skills/vcp-screener/scripts/fmp_client.py +162 -0
- package/.claude/skills/vcp-screener/scripts/report_generator.py +317 -0
- package/.claude/skills/vcp-screener/scripts/scorer.py +155 -0
- package/.claude/skills/vcp-screener/scripts/screen_vcp.py +536 -0
- package/.claude/skills/vcp-screener/scripts/tests/__init__.py +0 -0
- package/.claude/skills/vcp-screener/scripts/tests/conftest.py +9 -0
- package/.claude/skills/vcp-screener/scripts/tests/test_vcp_screener.py +834 -0
- package/.claude/skills/weekly-trade-strategy/.claude/agents/druckenmiller-strategy-planner.md +300 -0
- package/.claude/skills/weekly-trade-strategy/.claude/agents/market-news-analyzer.md +239 -0
- package/.claude/skills/weekly-trade-strategy/.claude/agents/technical-market-analyst.md +187 -0
- package/.claude/skills/weekly-trade-strategy/.claude/agents/us-market-analyst.md +218 -0
- package/.claude/skills/weekly-trade-strategy/.claude/agents/weekly-trade-blog-writer.md +318 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/breadth-chart-analyst/SKILL.md +662 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/breadth-chart-analyst/assets/SP500_Breadth_Index_200MA_8MA.jpeg +0 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/breadth-chart-analyst/assets/US_Stock_Market_Uptrend_Ratio.jpeg +0 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/breadth-chart-analyst/assets/breadth_analysis_template.md +558 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/breadth-chart-analyst/references/breadth_chart_methodology.md +590 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/earnings-calendar/SKILL.md +721 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/earnings-calendar/assets/earnings_report_template.md +102 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/earnings-calendar/earnings_calendar_2025-11-02.md +447 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/earnings-calendar/references/fmp_api_guide.md +590 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/earnings-calendar/scripts/fetch_earnings_fmp.py +443 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/earnings-calendar/scripts/generate_report.py +366 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/economic-calendar-fetcher/SKILL.md +365 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/economic-calendar-fetcher/references/fmp_api_documentation.md +345 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/economic-calendar-fetcher/scripts/get_economic_calendar.py +267 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/market-environment-analysis/SKILL.md +139 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/market-environment-analysis/references/analysis_patterns.md +124 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/market-environment-analysis/references/indicators.md +99 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/market-environment-analysis/scripts/market_utils.py +127 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/market-news-analyst/SKILL.md +714 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/market-news-analyst/references/corporate_news_impact.md +446 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/market-news-analyst/references/geopolitical_commodity_correlations.md +499 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/market-news-analyst/references/market_event_patterns.md +393 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/market-news-analyst/references/trusted_news_sources.md +510 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/sector-analyst/SKILL.md +206 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/sector-analyst/assets/industory_performance_1.jpeg +0 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/sector-analyst/assets/industory_performance_2.jpeg +0 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/sector-analyst/assets/sector_performance.jpeg +0 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/sector-analyst/references/sector_rotation.md +170 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/stanley-druckenmiller-investment/SKILL.md +84 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/stanley-druckenmiller-investment/references/case-studies.md +148 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/stanley-druckenmiller-investment/references/investment-philosophy.md +80 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/stanley-druckenmiller-investment/references/market-analysis-guide.md +146 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/technical-analyst/SKILL.md +238 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/technical-analyst/assets/analysis_template.md +183 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/technical-analyst/references/technical_analysis_framework.md +282 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/us-market-bubble-detector/CHANGELOG.md +118 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/us-market-bubble-detector/SKILL.md +545 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/us-market-bubble-detector/references/bubble_framework.md +335 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/us-market-bubble-detector/references/historical_cases.md +327 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/us-market-bubble-detector/references/implementation_guide.md +473 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/us-market-bubble-detector/references/quick_reference.md +354 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/us-market-bubble-detector/references/quick_reference_en.md +342 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/us-market-bubble-detector/scripts/bubble_scorer.py +309 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/us-stock-analysis/SKILL.md +294 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/us-stock-analysis/references/financial-metrics.md +172 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/us-stock-analysis/references/fundamental-analysis.md +129 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/us-stock-analysis/references/report-template.md +207 -0
- package/.claude/skills/weekly-trade-strategy/.claude/skills/us-stock-analysis/references/technical-analysis.md +93 -0
- package/.claude/skills/weekly-trade-strategy/CLAUDE.md +454 -0
- package/.claude/skills/weekly-trade-strategy/README.md +287 -0
- package/.claude/skills/weekly-trade-strategy/blogs/.gitkeep +0 -0
- package/.claude/skills/weekly-trade-strategy/charts/.gitkeep +0 -0
- package/.claude/skills/weekly-trade-strategy/earnings_data.json +10054 -0
- package/.claude/skills/weekly-trade-strategy/skills/breadth-chart-analyst/SKILL.md +662 -0
- package/.claude/skills/weekly-trade-strategy/skills/breadth-chart-analyst/assets/SP500_Breadth_Index_200MA_8MA.jpeg +0 -0
- package/.claude/skills/weekly-trade-strategy/skills/breadth-chart-analyst/assets/US_Stock_Market_Uptrend_Ratio.jpeg +0 -0
- package/.claude/skills/weekly-trade-strategy/skills/breadth-chart-analyst/assets/breadth_analysis_template.md +558 -0
- package/.claude/skills/weekly-trade-strategy/skills/breadth-chart-analyst/references/breadth_chart_methodology.md +590 -0
- package/.claude/skills/weekly-trade-strategy/skills/earnings-calendar/SKILL.md +721 -0
- package/.claude/skills/weekly-trade-strategy/skills/earnings-calendar/assets/earnings_report_template.md +102 -0
- package/.claude/skills/weekly-trade-strategy/skills/earnings-calendar/earnings_calendar_2025-11-02.md +447 -0
- package/.claude/skills/weekly-trade-strategy/skills/earnings-calendar/references/fmp_api_guide.md +590 -0
- package/.claude/skills/weekly-trade-strategy/skills/earnings-calendar/scripts/fetch_earnings_fmp.py +443 -0
- package/.claude/skills/weekly-trade-strategy/skills/earnings-calendar/scripts/generate_report.py +366 -0
- package/.claude/skills/weekly-trade-strategy/skills/economic-calendar-fetcher/SKILL.md +365 -0
- package/.claude/skills/weekly-trade-strategy/skills/economic-calendar-fetcher/references/fmp_api_documentation.md +345 -0
- package/.claude/skills/weekly-trade-strategy/skills/economic-calendar-fetcher/scripts/get_economic_calendar.py +267 -0
- package/.claude/skills/weekly-trade-strategy/skills/market-environment-analysis/SKILL.md +139 -0
- package/.claude/skills/weekly-trade-strategy/skills/market-environment-analysis/references/analysis_patterns.md +124 -0
- package/.claude/skills/weekly-trade-strategy/skills/market-environment-analysis/references/indicators.md +99 -0
- package/.claude/skills/weekly-trade-strategy/skills/market-environment-analysis/scripts/market_utils.py +127 -0
- package/.claude/skills/weekly-trade-strategy/skills/market-news-analyst/SKILL.md +714 -0
- package/.claude/skills/weekly-trade-strategy/skills/market-news-analyst/references/corporate_news_impact.md +446 -0
- package/.claude/skills/weekly-trade-strategy/skills/market-news-analyst/references/geopolitical_commodity_correlations.md +499 -0
- package/.claude/skills/weekly-trade-strategy/skills/market-news-analyst/references/market_event_patterns.md +393 -0
- package/.claude/skills/weekly-trade-strategy/skills/market-news-analyst/references/trusted_news_sources.md +510 -0
- package/.claude/skills/weekly-trade-strategy/skills/sector-analyst/SKILL.md +206 -0
- package/.claude/skills/weekly-trade-strategy/skills/sector-analyst/assets/industory_performance_1.jpeg +0 -0
- package/.claude/skills/weekly-trade-strategy/skills/sector-analyst/assets/industory_performance_2.jpeg +0 -0
- package/.claude/skills/weekly-trade-strategy/skills/sector-analyst/assets/sector_performance.jpeg +0 -0
- package/.claude/skills/weekly-trade-strategy/skills/sector-analyst/references/sector_rotation.md +170 -0
- package/.claude/skills/weekly-trade-strategy/skills/stanley-druckenmiller-investment/SKILL.md +84 -0
- package/.claude/skills/weekly-trade-strategy/skills/stanley-druckenmiller-investment/references/case-studies.md +148 -0
- package/.claude/skills/weekly-trade-strategy/skills/stanley-druckenmiller-investment/references/investment-philosophy.md +80 -0
- package/.claude/skills/weekly-trade-strategy/skills/stanley-druckenmiller-investment/references/market-analysis-guide.md +146 -0
- package/.claude/skills/weekly-trade-strategy/skills/technical-analyst/SKILL.md +238 -0
- package/.claude/skills/weekly-trade-strategy/skills/technical-analyst/assets/analysis_template.md +183 -0
- package/.claude/skills/weekly-trade-strategy/skills/technical-analyst/references/technical_analysis_framework.md +282 -0
- package/.claude/skills/weekly-trade-strategy/skills/us-market-bubble-detector/CHANGELOG.md +118 -0
- package/.claude/skills/weekly-trade-strategy/skills/us-market-bubble-detector/SKILL.md +545 -0
- package/.claude/skills/weekly-trade-strategy/skills/us-market-bubble-detector/references/bubble_framework.md +335 -0
- package/.claude/skills/weekly-trade-strategy/skills/us-market-bubble-detector/references/historical_cases.md +327 -0
- package/.claude/skills/weekly-trade-strategy/skills/us-market-bubble-detector/references/implementation_guide.md +473 -0
- package/.claude/skills/weekly-trade-strategy/skills/us-market-bubble-detector/references/quick_reference.md +354 -0
- package/.claude/skills/weekly-trade-strategy/skills/us-market-bubble-detector/references/quick_reference_en.md +342 -0
- package/.claude/skills/weekly-trade-strategy/skills/us-market-bubble-detector/scripts/bubble_scorer.py +309 -0
- package/.claude/skills/weekly-trade-strategy/skills/us-stock-analysis/SKILL.md +294 -0
- package/.claude/skills/weekly-trade-strategy/skills/us-stock-analysis/references/financial-metrics.md +172 -0
- package/.claude/skills/weekly-trade-strategy/skills/us-stock-analysis/references/fundamental-analysis.md +129 -0
- package/.claude/skills/weekly-trade-strategy/skills/us-stock-analysis/references/report-template.md +207 -0
- package/.claude/skills/weekly-trade-strategy/skills/us-stock-analysis/references/technical-analysis.md +93 -0
- package/.mcp.json +3 -0
- package/cli.mjs +16 -16
- package/package.json +4 -2
|
@@ -0,0 +1,383 @@
|
|
|
1
|
+
# 13F Filings Comprehensive Guide
|
|
2
|
+
|
|
3
|
+
## What is a 13F Filing?
|
|
4
|
+
|
|
5
|
+
Form 13F is a quarterly report filed with the SEC by institutional investment managers with at least $100 million in assets under management (AUM). The form discloses their equity holdings as of the end of each calendar quarter.
|
|
6
|
+
|
|
7
|
+
### Legal Requirements
|
|
8
|
+
|
|
9
|
+
**Who Must File:**
|
|
10
|
+
- Investment advisors
|
|
11
|
+
- Banks
|
|
12
|
+
- Insurance companies
|
|
13
|
+
- Pension funds
|
|
14
|
+
- Hedge funds
|
|
15
|
+
- Other institutions managing >$100M in "13F securities"
|
|
16
|
+
|
|
17
|
+
**What Must Be Reported:**
|
|
18
|
+
- Long positions in US-listed equities
|
|
19
|
+
- Convertible bonds
|
|
20
|
+
- Exchange-traded options
|
|
21
|
+
- Shares held as of quarter-end date
|
|
22
|
+
|
|
23
|
+
**What is NOT Reported:**
|
|
24
|
+
- Short positions
|
|
25
|
+
- Non-US securities
|
|
26
|
+
- Private equity investments
|
|
27
|
+
- Fixed income (except convertibles)
|
|
28
|
+
- Cash positions
|
|
29
|
+
- Derivatives (except listed options)
|
|
30
|
+
|
|
31
|
+
**Filing Deadline:**
|
|
32
|
+
- Within 45 days after quarter end
|
|
33
|
+
- Q1 (ended March 31): Due by May 15
|
|
34
|
+
- Q2 (ended June 30): Due by August 14
|
|
35
|
+
- Q3 (ended September 30): Due by November 14
|
|
36
|
+
- Q4 (ended December 31): Due by February 14
|
|
37
|
+
|
|
38
|
+
### Key Data Points in 13F Filings
|
|
39
|
+
|
|
40
|
+
**For Each Holding:**
|
|
41
|
+
1. **Issuer Name** - Company name
|
|
42
|
+
2. **Ticker Symbol** - Stock ticker
|
|
43
|
+
3. **CUSIP** - Unique security identifier
|
|
44
|
+
4. **Shares Held** - Number of shares owned
|
|
45
|
+
5. **Market Value** - Dollar value of position (shares × price at quarter end)
|
|
46
|
+
6. **Investment Discretion** - Sole/Shared/None
|
|
47
|
+
7. **Voting Authority** - Sole/Shared/None
|
|
48
|
+
|
|
49
|
+
**Aggregate Data:**
|
|
50
|
+
- Total number of holdings
|
|
51
|
+
- Total portfolio value
|
|
52
|
+
- Portfolio concentration
|
|
53
|
+
- Sector allocation
|
|
54
|
+
|
|
55
|
+
## Understanding the Data
|
|
56
|
+
|
|
57
|
+
### Position Changes
|
|
58
|
+
|
|
59
|
+
**Types of Changes:**
|
|
60
|
+
1. **New Position** - Stock not held last quarter, now held
|
|
61
|
+
2. **Increased Position** - More shares than last quarter
|
|
62
|
+
3. **Decreased Position** - Fewer shares than last quarter
|
|
63
|
+
4. **Closed Position** - Stock held last quarter, now zero
|
|
64
|
+
|
|
65
|
+
**Calculating Changes:**
|
|
66
|
+
```
|
|
67
|
+
Shares Change = Current Quarter Shares - Previous Quarter Shares
|
|
68
|
+
% Change = (Shares Change / Previous Quarter Shares) × 100
|
|
69
|
+
Dollar Value Change = (Shares Change) × (Current Stock Price)
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
**Example:**
|
|
73
|
+
```
|
|
74
|
+
Previous Quarter: 1,000,000 shares of AAPL @ $150 = $150M
|
|
75
|
+
Current Quarter: 1,200,000 shares of AAPL @ $180 = $216M
|
|
76
|
+
|
|
77
|
+
Shares Change: +200,000 shares (+20%)
|
|
78
|
+
Dollar Value Change: +$66M (includes price appreciation + new purchases)
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
### Aggregate Institutional Ownership
|
|
82
|
+
|
|
83
|
+
**Portfolio-Level Metrics:**
|
|
84
|
+
- **Total Institutional Ownership %** = (Total Shares Held by All Institutions / Shares Outstanding) × 100
|
|
85
|
+
- **Number of Institutional Holders** = Count of unique institutions filing 13F with this stock
|
|
86
|
+
- **Ownership Concentration** = % held by top 10 institutions
|
|
87
|
+
- **Ownership Trend** = QoQ change in total institutional ownership %
|
|
88
|
+
|
|
89
|
+
**Typical Ownership Ranges:**
|
|
90
|
+
- **<20%** - Low institutional interest (micro/small caps, speculative stocks)
|
|
91
|
+
- **20-40%** - Below average (growth stocks, recent IPOs)
|
|
92
|
+
- **40-60%** - Average (most mid/large caps)
|
|
93
|
+
- **60-80%** - Above average (blue chips, dividend aristocrats)
|
|
94
|
+
- **>80%** - Very high (mature, stable companies)
|
|
95
|
+
|
|
96
|
+
## Data Quality Considerations
|
|
97
|
+
|
|
98
|
+
### Timing Lags
|
|
99
|
+
|
|
100
|
+
**Reporting Lag:**
|
|
101
|
+
- Position as of: Quarter-end date (e.g., March 31)
|
|
102
|
+
- Filing deadline: 45 days later (e.g., May 15)
|
|
103
|
+
- Data available: Mid-May onwards
|
|
104
|
+
- **Total lag:** 6-7 weeks from position date
|
|
105
|
+
|
|
106
|
+
**Real-World Impact:**
|
|
107
|
+
- Stock may have moved significantly since quarter-end
|
|
108
|
+
- Institutions may have already changed positions
|
|
109
|
+
- Use 13F data as confirming indicator, not real-time signal
|
|
110
|
+
|
|
111
|
+
### Confidential Treatment
|
|
112
|
+
|
|
113
|
+
**Form 13F-NT (Notice of Confidential Treatment):**
|
|
114
|
+
- Institutions can request delayed disclosure for certain positions
|
|
115
|
+
- Typically granted for 1-2 quarters to prevent front-running
|
|
116
|
+
- Common for large accumulations or activist positions
|
|
117
|
+
|
|
118
|
+
**Red Flags:**
|
|
119
|
+
- Sudden appearance of large positions (may have been confidential)
|
|
120
|
+
- Large institutions with unusually low reported AUM (hidden positions)
|
|
121
|
+
|
|
122
|
+
### Aggregation Issues
|
|
123
|
+
|
|
124
|
+
**Double Counting:**
|
|
125
|
+
- Same shares may be reported by multiple entities within same organization
|
|
126
|
+
- Example: Vanguard Group + Vanguard Index Funds + Vanguard ETF Trust
|
|
127
|
+
- Need to aggregate related entities for accurate institutional ownership
|
|
128
|
+
|
|
129
|
+
**Custodial vs Beneficial Ownership:**
|
|
130
|
+
- Some institutions hold shares as custodians (not beneficial owners)
|
|
131
|
+
- Example: State Street as custodian for pension funds
|
|
132
|
+
- Look for "voting authority" and "investment discretion" fields
|
|
133
|
+
|
|
134
|
+
## Common Pitfalls and How to Avoid Them
|
|
135
|
+
|
|
136
|
+
### Pitfall 1: Ignoring Price Changes
|
|
137
|
+
|
|
138
|
+
**Problem:**
|
|
139
|
+
- Institutional ownership % can decrease even if institutions hold same share count
|
|
140
|
+
- Happens when: Stock price falls, institution's AUM falls below reporting threshold
|
|
141
|
+
|
|
142
|
+
**Solution:**
|
|
143
|
+
- Track both share count changes AND ownership % changes
|
|
144
|
+
- Focus on share count for more accurate signal
|
|
145
|
+
|
|
146
|
+
**Example:**
|
|
147
|
+
```
|
|
148
|
+
Q1: Institution holds 1M shares, stock at $100, ownership = 5%
|
|
149
|
+
Q2: Institution holds 1M shares, stock at $50, ownership = 2.5%
|
|
150
|
+
Interpretation: No actual selling, just price decline affecting percentage
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
### Pitfall 2: Interpreting Passive Index Funds
|
|
154
|
+
|
|
155
|
+
**Problem:**
|
|
156
|
+
- Index funds must buy/sell based on index composition, not fundamental views
|
|
157
|
+
- Large inflows to index funds mechanically increase institutional ownership
|
|
158
|
+
|
|
159
|
+
**Solution:**
|
|
160
|
+
- Separate active managers from passive funds
|
|
161
|
+
- Weight active manager changes more heavily
|
|
162
|
+
- Track: ARK, Berkshire, Baupost > Vanguard Index Funds
|
|
163
|
+
|
|
164
|
+
**Active vs Passive Indicators:**
|
|
165
|
+
- Active: Concentrated portfolios (20-50 stocks), high conviction bets
|
|
166
|
+
- Passive: Diversified portfolios (500+ stocks), matching index weights
|
|
167
|
+
|
|
168
|
+
### Pitfall 3: Ignoring Institution Quality
|
|
169
|
+
|
|
170
|
+
**Problem:**
|
|
171
|
+
- Not all institutional investors are equal
|
|
172
|
+
- 100 small funds buying ≠ Warren Buffett buying
|
|
173
|
+
|
|
174
|
+
**Solution:**
|
|
175
|
+
- Tier institutions by track record and strategy alignment
|
|
176
|
+
- Weight Tier 1 (quality long-term investors) more heavily
|
|
177
|
+
|
|
178
|
+
**Institutional Tiers:**
|
|
179
|
+
- **Tier 1** (High conviction): Berkshire, Appaloosa, Baupost, Pershing Square
|
|
180
|
+
- **Tier 2** (Quality active): Fidelity, T. Rowe Price, Wellington
|
|
181
|
+
- **Tier 3** (Passive/momentum): Vanguard Index, State Street, momentum funds
|
|
182
|
+
|
|
183
|
+
### Pitfall 4: Overreacting to Single Quarter Changes
|
|
184
|
+
|
|
185
|
+
**Problem:**
|
|
186
|
+
- One quarter of buying/selling may not indicate trend
|
|
187
|
+
- Could be portfolio rebalancing, redemptions, or temporary factors
|
|
188
|
+
|
|
189
|
+
**Solution:**
|
|
190
|
+
- Look for multi-quarter trends (3+ quarters)
|
|
191
|
+
- Higher conviction when sustained accumulation/distribution
|
|
192
|
+
- One quarter = noise, three quarters = signal
|
|
193
|
+
|
|
194
|
+
**Trend Quality:**
|
|
195
|
+
```
|
|
196
|
+
Strong Signal (3+ quarters same direction):
|
|
197
|
+
Q1: +10% institutional ownership
|
|
198
|
+
Q2: +8% institutional ownership
|
|
199
|
+
Q3: +12% institutional ownership
|
|
200
|
+
Interpretation: Sustained accumulation, high conviction
|
|
201
|
+
|
|
202
|
+
Noise (inconsistent):
|
|
203
|
+
Q1: +10% institutional ownership
|
|
204
|
+
Q2: -5% institutional ownership
|
|
205
|
+
Q3: +3% institutional ownership
|
|
206
|
+
Interpretation: No clear trend, likely portfolio adjustments
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
## Advanced Analysis Techniques
|
|
210
|
+
|
|
211
|
+
### Flow Analysis
|
|
212
|
+
|
|
213
|
+
Track net shares added/removed across all institutions:
|
|
214
|
+
|
|
215
|
+
```
|
|
216
|
+
Net Institutional Flow = Sum(All Institutional Share Changes)
|
|
217
|
+
Flow Ratio = (Shares Added by Buyers) / (Shares Sold by Sellers)
|
|
218
|
+
|
|
219
|
+
Flow Ratio > 2.0 = Strong accumulation
|
|
220
|
+
Flow Ratio 1.5-2.0 = Moderate accumulation
|
|
221
|
+
Flow Ratio 0.8-1.2 = Neutral/Balanced
|
|
222
|
+
Flow Ratio 0.5-0.8 = Moderate distribution
|
|
223
|
+
Flow Ratio < 0.5 = Strong distribution
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
### Concentration Risk Analysis
|
|
227
|
+
|
|
228
|
+
**Herfindahl-Hirschman Index (HHI):**
|
|
229
|
+
```
|
|
230
|
+
HHI = Sum of (Each Institution's Ownership %)²
|
|
231
|
+
|
|
232
|
+
HHI < 1000 = Diversified ownership (low concentration risk)
|
|
233
|
+
HHI 1000-1800 = Moderate concentration
|
|
234
|
+
HHI > 1800 = High concentration (risk if top holder sells)
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
**Example:**
|
|
238
|
+
```
|
|
239
|
+
Top 3 holders: 15%, 12%, 10% of institutional ownership
|
|
240
|
+
HHI = 15² + 12² + 10² = 225 + 144 + 100 = 469 (low concentration)
|
|
241
|
+
|
|
242
|
+
Top 3 holders: 40%, 30%, 20% of institutional ownership
|
|
243
|
+
HHI = 40² + 30² + 20² = 1600 + 900 + 400 = 2900 (high concentration)
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
### New Buyers vs Sellers Analysis
|
|
247
|
+
|
|
248
|
+
**Quarterly Cohort Tracking:**
|
|
249
|
+
```
|
|
250
|
+
New Buyers = Institutions with zero shares last Q, non-zero this Q
|
|
251
|
+
Increasers = Institutions with more shares this Q
|
|
252
|
+
Decreasers = Institutions with fewer shares this Q
|
|
253
|
+
Exited = Institutions with shares last Q, zero this Q
|
|
254
|
+
|
|
255
|
+
Bull Signal: New Buyers > Exited AND Increasers > Decreasers
|
|
256
|
+
Bear Signal: Exited > New Buyers AND Decreasers > Increasers
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
### Smart Money Clustering
|
|
260
|
+
|
|
261
|
+
Identify when multiple quality investors accumulate simultaneously:
|
|
262
|
+
|
|
263
|
+
**Clustering Score:**
|
|
264
|
+
```
|
|
265
|
+
Score = Sum of (Institution Tier × % Position Change)
|
|
266
|
+
|
|
267
|
+
Tier 1 institutions: Weight = 3.0
|
|
268
|
+
Tier 2 institutions: Weight = 2.0
|
|
269
|
+
Tier 3 institutions: Weight = 1.0
|
|
270
|
+
|
|
271
|
+
Example:
|
|
272
|
+
Berkshire (Tier 1) +10% position = 3.0 × 10 = 30 points
|
|
273
|
+
Fidelity (Tier 2) +5% position = 2.0 × 5 = 10 points
|
|
274
|
+
Index Fund (Tier 3) +2% position = 1.0 × 2 = 2 points
|
|
275
|
+
Total Clustering Score = 42
|
|
276
|
+
|
|
277
|
+
Score > 50 = Strong smart money accumulation
|
|
278
|
+
Score 25-50 = Moderate accumulation
|
|
279
|
+
Score < 25 = Weak/no clustering
|
|
280
|
+
```
|
|
281
|
+
|
|
282
|
+
## Historical Success Patterns
|
|
283
|
+
|
|
284
|
+
### Pre-Breakout Accumulation
|
|
285
|
+
|
|
286
|
+
**Pattern:**
|
|
287
|
+
- Stock trading sideways for 2-4 quarters
|
|
288
|
+
- Institutional ownership quietly rising (10-20% increase)
|
|
289
|
+
- Stock breaks out 1-2 quarters after accumulation visible in 13F
|
|
290
|
+
|
|
291
|
+
**Example Stocks:**
|
|
292
|
+
- NVDA (2019): Institutions accumulated before AI boom
|
|
293
|
+
- TSLA (2019-2020): Steady institutional buying before 500% run
|
|
294
|
+
|
|
295
|
+
### Early Distribution Warning
|
|
296
|
+
|
|
297
|
+
**Pattern:**
|
|
298
|
+
- Stock in uptrend
|
|
299
|
+
- Institutional ownership declining for 2+ quarters
|
|
300
|
+
- Top-tier institutions exiting
|
|
301
|
+
- Stock peaks 1-2 quarters after distribution begins
|
|
302
|
+
|
|
303
|
+
**Example Stocks:**
|
|
304
|
+
- Dot-com stocks (1999-2000): Smart money exited before crash
|
|
305
|
+
- Housing stocks (2006-2007): Institutional distribution before crisis
|
|
306
|
+
|
|
307
|
+
## Integration with Fundamental Analysis
|
|
308
|
+
|
|
309
|
+
**Bullish Confirmation:**
|
|
310
|
+
- Strong fundamentals (revenue growth, margin expansion)
|
|
311
|
+
- Rising institutional ownership
|
|
312
|
+
- Quality investors adding positions
|
|
313
|
+
- **Action:** High conviction buy
|
|
314
|
+
|
|
315
|
+
**Bearish Warning:**
|
|
316
|
+
- Strong fundamentals but declining institutional ownership
|
|
317
|
+
- Quality investors exiting despite good numbers
|
|
318
|
+
- **Action:** Investigate further, may be hidden risks
|
|
319
|
+
|
|
320
|
+
**Value Opportunity:**
|
|
321
|
+
- Weak short-term fundamentals
|
|
322
|
+
- Stable/rising institutional ownership (value investors accumulating)
|
|
323
|
+
- **Action:** Contrarian opportunity if fundamentals inflect
|
|
324
|
+
|
|
325
|
+
**Avoid:**
|
|
326
|
+
- Weak fundamentals
|
|
327
|
+
- Declining institutional ownership
|
|
328
|
+
- Quality investors exiting
|
|
329
|
+
- **Action:** Stay away
|
|
330
|
+
|
|
331
|
+
## Regulatory Changes and Updates
|
|
332
|
+
|
|
333
|
+
**Current as of 2025:**
|
|
334
|
+
- Reporting threshold: $100M AUM
|
|
335
|
+
- Filing deadline: 45 days after quarter end
|
|
336
|
+
- Amendment rules: Allowed within filing period
|
|
337
|
+
|
|
338
|
+
**Proposed Changes (Monitor):**
|
|
339
|
+
- Potential reduction in filing deadline to 30 days
|
|
340
|
+
- Potential requirement to disclose short positions
|
|
341
|
+
- Potential reduction in AUM threshold to $50M
|
|
342
|
+
|
|
343
|
+
**Stay Updated:**
|
|
344
|
+
- SEC website: https://www.sec.gov/rules
|
|
345
|
+
- Industry news: Follow regulatory announcements
|
|
346
|
+
|
|
347
|
+
## Tools and Resources
|
|
348
|
+
|
|
349
|
+
**Official Sources:**
|
|
350
|
+
- SEC EDGAR Database: https://www.sec.gov/edgar/searchedgar/companysearch.html
|
|
351
|
+
- Form 13F instructions: https://www.sec.gov/pdf/form13f.pdf
|
|
352
|
+
|
|
353
|
+
**Third-Party Aggregators:**
|
|
354
|
+
- WhaleWisdom: https://whalewisdom.com (free tier available)
|
|
355
|
+
- DataRoma: https://www.dataroma.com (tracks superinvestors)
|
|
356
|
+
- Fintel: https://fintel.io (institutional ownership data)
|
|
357
|
+
|
|
358
|
+
**API Access:**
|
|
359
|
+
- FMP API: Institutional ownership endpoints
|
|
360
|
+
- SEC API: Direct access to filings (free, rate-limited)
|
|
361
|
+
|
|
362
|
+
## Summary: Using 13F Data Effectively
|
|
363
|
+
|
|
364
|
+
**Best Practices:**
|
|
365
|
+
1. ✅ Track multi-quarter trends, not single quarters
|
|
366
|
+
2. ✅ Focus on share count changes, not just ownership %
|
|
367
|
+
3. ✅ Weight quality institutions more heavily
|
|
368
|
+
4. ✅ Combine with fundamental analysis
|
|
369
|
+
5. ✅ Use as confirming indicator, not standalone signal
|
|
370
|
+
6. ✅ Update quarterly after filing deadlines
|
|
371
|
+
|
|
372
|
+
**What to Avoid:**
|
|
373
|
+
1. ❌ Don't assume 13F = real-time positions
|
|
374
|
+
2. ❌ Don't ignore passive fund flows
|
|
375
|
+
3. ❌ Don't overweight single institution moves
|
|
376
|
+
4. ❌ Don't use for short-term trading
|
|
377
|
+
5. ❌ Don't ignore price changes when calculating ownership
|
|
378
|
+
6. ❌ Don't forget about confidential treatment requests
|
|
379
|
+
|
|
380
|
+
**Expected Returns:**
|
|
381
|
+
- Academic studies show 13F-based strategies can generate 2-4% annual alpha
|
|
382
|
+
- Best results when combined with momentum and value factors
|
|
383
|
+
- Effectiveness highest in small/mid caps where information asymmetry is greater
|