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,558 @@
|
|
|
1
|
+
# Target Allocation Models
|
|
2
|
+
|
|
3
|
+
This document provides model portfolio allocations for different investor risk profiles, serving as benchmarks for portfolio analysis and rebalancing.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
Target allocations provide a framework for:
|
|
8
|
+
1. Assessing if current portfolio matches investor risk tolerance
|
|
9
|
+
2. Identifying allocation gaps and concentration risks
|
|
10
|
+
3. Guiding rebalancing decisions
|
|
11
|
+
4. Setting position sizing guidelines
|
|
12
|
+
|
|
13
|
+
**Important:** These are templates, not prescriptions. Actual allocations should be customized based on individual circumstances, goals, time horizon, and constraints.
|
|
14
|
+
|
|
15
|
+
## Investor Risk Profile Classification
|
|
16
|
+
|
|
17
|
+
### Factors Determining Risk Profile
|
|
18
|
+
|
|
19
|
+
| Factor | Conservative | Moderate | Growth | Aggressive |
|
|
20
|
+
|--------|-------------|----------|--------|------------|
|
|
21
|
+
| **Age** | 60+ | 45-60 | 30-45 | <30 |
|
|
22
|
+
| **Time Horizon** | 0-5 years | 5-15 years | 15-25 years | 25+ years |
|
|
23
|
+
| **Income Stability** | Fixed income (retired) | Stable salary | Growing career | Variable/high |
|
|
24
|
+
| **Net Worth** | Low to moderate | Moderate | High | Very high |
|
|
25
|
+
| **Loss Tolerance** | Cannot afford >10% loss | Can handle 15-25% loss | Can handle 25-35% loss | Can handle >40% loss |
|
|
26
|
+
| **Investment Goal** | Preserve capital, income | Balanced growth & income | Long-term growth | Maximum growth |
|
|
27
|
+
| **Market Experience** | Limited | Moderate | Experienced | Very experienced |
|
|
28
|
+
|
|
29
|
+
**Self-Assessment:**
|
|
30
|
+
Rate yourself on each factor, assign the corresponding risk profile, and determine your overall profile based on the majority classification.
|
|
31
|
+
|
|
32
|
+
## Conservative Portfolio (Capital Preservation)
|
|
33
|
+
|
|
34
|
+
### Profile
|
|
35
|
+
- **Investor:** Near or in retirement, low risk tolerance, need for income and capital preservation
|
|
36
|
+
- **Time Horizon:** 0-5 years
|
|
37
|
+
- **Max Acceptable Drawdown:** -10 to -15%
|
|
38
|
+
- **Expected Annual Return:** 4-6%
|
|
39
|
+
- **Expected Volatility:** 6-10%
|
|
40
|
+
|
|
41
|
+
### Asset Allocation
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
Total Portfolio Allocation:
|
|
45
|
+
├── Equities: 30%
|
|
46
|
+
│ ├── US Stocks: 20%
|
|
47
|
+
│ ├── International Developed: 7%
|
|
48
|
+
│ └── Emerging Markets: 3%
|
|
49
|
+
├── Fixed Income: 55%
|
|
50
|
+
│ ├── Investment Grade Bonds: 30%
|
|
51
|
+
│ ├── Government Bonds: 20%
|
|
52
|
+
│ └── High Yield Bonds: 5%
|
|
53
|
+
├── Cash & Equivalents: 10%
|
|
54
|
+
└── Alternatives (Optional): 5%
|
|
55
|
+
├── REITs: 3%
|
|
56
|
+
└── Gold: 2%
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### Equity Allocation (30% of total portfolio)
|
|
60
|
+
|
|
61
|
+
**US Stocks (20% of total, 67% of equity):**
|
|
62
|
+
|
|
63
|
+
| Sector | % of Total Portfolio | % of US Equity | Characteristics |
|
|
64
|
+
|--------|---------------------|----------------|-----------------|
|
|
65
|
+
| **Utilities** | 3.5% | 17.5% | High dividends, stable cash flows |
|
|
66
|
+
| **Consumer Staples** | 3.0% | 15.0% | Defensive, recession-resistant |
|
|
67
|
+
| **Healthcare** | 3.5% | 17.5% | Defensive with growth potential |
|
|
68
|
+
| **Financials** | 2.5% | 12.5% | Dividend income, moderate growth |
|
|
69
|
+
| **Technology** | 2.5% | 12.5% | Quality large-caps only (AAPL, MSFT) |
|
|
70
|
+
| **Communication Services** | 2.0% | 10.0% | Stable cash flows (T, VZ) |
|
|
71
|
+
| **Consumer Discretionary** | 1.5% | 7.5% | Underweight cyclicals |
|
|
72
|
+
| **Industrials** | 1.0% | 5.0% | Minimal exposure |
|
|
73
|
+
| **Real Estate** | 0.5% | 2.5% | Via separate REIT allocation |
|
|
74
|
+
| **Energy** | 0% | 0% | Avoid volatility |
|
|
75
|
+
| **Materials** | 0% | 0% | Avoid volatility |
|
|
76
|
+
|
|
77
|
+
**International & Emerging (10% of total, 33% of equity):**
|
|
78
|
+
- International Developed: 7% (Europe, Japan, UK - stable, dividend-focused)
|
|
79
|
+
- Emerging Markets: 3% (minimal exposure, diversification only)
|
|
80
|
+
|
|
81
|
+
**Position Sizing:**
|
|
82
|
+
- Maximum single position: 5% of total portfolio
|
|
83
|
+
- Typical position: 2-3%
|
|
84
|
+
- Number of positions: 12-20 stocks OR 4-6 diversified ETFs
|
|
85
|
+
|
|
86
|
+
**Preferred Holdings:**
|
|
87
|
+
- Large-cap dividend aristocrats (25+ years of dividend growth)
|
|
88
|
+
- Defensive sectors with recession resistance
|
|
89
|
+
- Low beta stocks (β < 0.8)
|
|
90
|
+
- Established companies with strong balance sheets
|
|
91
|
+
|
|
92
|
+
**Example Portfolio (ETF-based):**
|
|
93
|
+
- 10% VZ (Verizon) - Telecom, 6% yield
|
|
94
|
+
- 10% JNJ (Johnson & Johnson) - Healthcare, dividend aristocrat
|
|
95
|
+
- 10% PG (Procter & Gamble) - Consumer staples, stable
|
|
96
|
+
- 5% SO (Southern Company) - Utility, high yield
|
|
97
|
+
- 5% KO (Coca-Cola) - Consumer staples, dividend
|
|
98
|
+
- 5% PFE (Pfizer) - Healthcare, value
|
|
99
|
+
- (Or equivalent via dividend-focused ETFs: VYM, SCHD, DVY)
|
|
100
|
+
|
|
101
|
+
### Fixed Income Allocation (55% of total portfolio)
|
|
102
|
+
|
|
103
|
+
| Bond Type | % of Total Portfolio | Purpose |
|
|
104
|
+
|-----------|---------------------|---------|
|
|
105
|
+
| **Investment Grade Corporate** | 30% | Income, moderate risk |
|
|
106
|
+
| **US Treasury Bonds** | 15% | Safety, low risk |
|
|
107
|
+
| **TIPS (Inflation-Protected)** | 5% | Inflation hedge |
|
|
108
|
+
| **High Yield (Junk Bonds)** | 5% | Higher income, higher risk |
|
|
109
|
+
|
|
110
|
+
**Duration:** Short to intermediate (3-7 years) to reduce interest rate risk
|
|
111
|
+
|
|
112
|
+
**Example Holdings:**
|
|
113
|
+
- AGG (Core Bond ETF)
|
|
114
|
+
- BND (Total Bond Market)
|
|
115
|
+
- LQD (Investment Grade Corporate)
|
|
116
|
+
- TIP (TIPS)
|
|
117
|
+
- HYG (High Yield - small allocation)
|
|
118
|
+
|
|
119
|
+
### Cash & Equivalents (10%)
|
|
120
|
+
|
|
121
|
+
**Purpose:**
|
|
122
|
+
- Emergency liquidity
|
|
123
|
+
- Opportunistic buying on dips
|
|
124
|
+
- Reduce overall volatility
|
|
125
|
+
|
|
126
|
+
**Holdings:**
|
|
127
|
+
- Money market funds
|
|
128
|
+
- Short-term Treasury bills
|
|
129
|
+
- High-yield savings accounts
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## Moderate Portfolio (Balanced Growth & Income)
|
|
134
|
+
|
|
135
|
+
### Profile
|
|
136
|
+
- **Investor:** Mid-career, balanced objectives, moderate risk tolerance
|
|
137
|
+
- **Time Horizon:** 5-15 years
|
|
138
|
+
- **Max Acceptable Drawdown:** -15 to -25%
|
|
139
|
+
- **Expected Annual Return:** 6-8%
|
|
140
|
+
- **Expected Volatility:** 10-14%
|
|
141
|
+
|
|
142
|
+
### Asset Allocation
|
|
143
|
+
|
|
144
|
+
```
|
|
145
|
+
Total Portfolio Allocation:
|
|
146
|
+
├── Equities: 60%
|
|
147
|
+
│ ├── US Stocks: 42%
|
|
148
|
+
│ ├── International Developed: 12%
|
|
149
|
+
│ └── Emerging Markets: 6%
|
|
150
|
+
├── Fixed Income: 32%
|
|
151
|
+
│ ├── Investment Grade Bonds: 20%
|
|
152
|
+
│ ├── Government Bonds: 7%
|
|
153
|
+
│ └── High Yield Bonds: 5%
|
|
154
|
+
├── Cash & Equivalents: 5%
|
|
155
|
+
└── Alternatives (Optional): 3%
|
|
156
|
+
├── REITs: 2%
|
|
157
|
+
└── Commodities/Gold: 1%
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
### Equity Allocation (60% of total portfolio)
|
|
161
|
+
|
|
162
|
+
**US Stocks (42% of total, 70% of equity):**
|
|
163
|
+
|
|
164
|
+
| Sector | % of Total Portfolio | % of US Equity | Benchmark (S&P 500) |
|
|
165
|
+
|--------|---------------------|----------------|---------------------|
|
|
166
|
+
| **Technology** | 11.0% | 26% | 28% |
|
|
167
|
+
| **Healthcare** | 7.0% | 17% | 13% |
|
|
168
|
+
| **Financials** | 6.0% | 14% | 13% |
|
|
169
|
+
| **Consumer Discretionary** | 5.5% | 13% | 11% |
|
|
170
|
+
| **Industrials** | 4.0% | 10% | 9% |
|
|
171
|
+
| **Consumer Staples** | 3.5% | 8% | 7% |
|
|
172
|
+
| **Communication Services** | 2.5% | 6% | 9% |
|
|
173
|
+
| **Energy** | 1.0% | 2% | 4% |
|
|
174
|
+
| **Utilities** | 1.0% | 2% | 3% |
|
|
175
|
+
| **Real Estate** | 0.5% | 1% | 3% |
|
|
176
|
+
| **Materials** | 0.5% | 1% | 3% |
|
|
177
|
+
|
|
178
|
+
**Sector Strategy:**
|
|
179
|
+
- Slight overweight in Technology and Healthcare (growth + quality)
|
|
180
|
+
- Balanced exposure to Financials and Consumer sectors
|
|
181
|
+
- Underweight Energy and Materials (volatility)
|
|
182
|
+
- Defensive sectors (Utilities, Staples) lower than conservative portfolio
|
|
183
|
+
|
|
184
|
+
**International & Emerging (18% of total, 30% of equity):**
|
|
185
|
+
- International Developed: 12% (Europe, Japan, UK, Canada)
|
|
186
|
+
- Emerging Markets: 6% (China, India, Brazil - growth exposure)
|
|
187
|
+
|
|
188
|
+
**Position Sizing:**
|
|
189
|
+
- Maximum single position: 8% of total portfolio
|
|
190
|
+
- High conviction positions: 6-8%
|
|
191
|
+
- Medium conviction: 4-6%
|
|
192
|
+
- Low conviction: 2-3%
|
|
193
|
+
- Number of positions: 15-25 stocks OR 6-10 ETFs
|
|
194
|
+
|
|
195
|
+
**Market Cap Distribution:**
|
|
196
|
+
- Large-cap (>$10B): 70% of US equity
|
|
197
|
+
- Mid-cap ($2-10B): 20%
|
|
198
|
+
- Small-cap (<$2B): 10%
|
|
199
|
+
|
|
200
|
+
**Example Portfolio (Individual Stocks):**
|
|
201
|
+
- 8% MSFT - Technology, quality growth
|
|
202
|
+
- 7% AAPL - Technology, ecosystem
|
|
203
|
+
- 6% GOOGL - Technology, advertising
|
|
204
|
+
- 6% JNJ - Healthcare, defensive
|
|
205
|
+
- 5% JPM - Financials, dividend
|
|
206
|
+
- 5% UNH - Healthcare, growth
|
|
207
|
+
- 4% V - Financials, payments
|
|
208
|
+
- 4% HD - Consumer Discretionary, housing
|
|
209
|
+
- 4% DIS - Communication, entertainment
|
|
210
|
+
- 3% BA - Industrials, aerospace
|
|
211
|
+
- (Additional 15% in 8-10 smaller positions)
|
|
212
|
+
- 18% International (VEA, VWO, or individual stocks)
|
|
213
|
+
|
|
214
|
+
### Fixed Income Allocation (32% of total portfolio)
|
|
215
|
+
|
|
216
|
+
| Bond Type | % of Total Portfolio | Purpose |
|
|
217
|
+
|-----------|---------------------|---------|
|
|
218
|
+
| **Investment Grade Corporate** | 20% | Core income, moderate risk |
|
|
219
|
+
| **US Treasury Bonds** | 5% | Safety ballast |
|
|
220
|
+
| **TIPS** | 2% | Inflation hedge |
|
|
221
|
+
| **High Yield Bonds** | 5% | Enhanced income |
|
|
222
|
+
|
|
223
|
+
**Duration:** Intermediate (5-10 years)
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## Growth Portfolio (Long-Term Capital Appreciation)
|
|
228
|
+
|
|
229
|
+
### Profile
|
|
230
|
+
- **Investor:** Younger investor, long time horizon, growth-focused
|
|
231
|
+
- **Time Horizon:** 15-25 years
|
|
232
|
+
- **Max Acceptable Drawdown:** -25 to -35%
|
|
233
|
+
- **Expected Annual Return:** 8-10%
|
|
234
|
+
- **Expected Volatility:** 14-18%
|
|
235
|
+
|
|
236
|
+
### Asset Allocation
|
|
237
|
+
|
|
238
|
+
```
|
|
239
|
+
Total Portfolio Allocation:
|
|
240
|
+
├── Equities: 80%
|
|
241
|
+
│ ├── US Stocks: 52%
|
|
242
|
+
│ ├── International Developed: 18%
|
|
243
|
+
│ └── Emerging Markets: 10%
|
|
244
|
+
├── Fixed Income: 15%
|
|
245
|
+
│ ├── Investment Grade Bonds: 8%
|
|
246
|
+
│ └── High Yield Bonds: 7%
|
|
247
|
+
├── Cash & Equivalents: 3%
|
|
248
|
+
└── Alternatives: 2%
|
|
249
|
+
└── REITs or Commodities: 2%
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
### Equity Allocation (80% of total portfolio)
|
|
253
|
+
|
|
254
|
+
**US Stocks (52% of total, 65% of equity):**
|
|
255
|
+
|
|
256
|
+
| Sector | % of Total Portfolio | % of US Equity | Notes |
|
|
257
|
+
|--------|---------------------|----------------|-------|
|
|
258
|
+
| **Technology** | 16.0% | 31% | Growth focus, secular trends |
|
|
259
|
+
| **Healthcare** | 8.0% | 15% | Innovation, demographics |
|
|
260
|
+
| **Consumer Discretionary** | 7.5% | 14% | Economic growth exposure |
|
|
261
|
+
| **Communication Services** | 6.0% | 12% | Digital transformation |
|
|
262
|
+
| **Financials** | 5.5% | 11% | Economic expansion |
|
|
263
|
+
| **Industrials** | 5.0% | 10% | Capital spending cycles |
|
|
264
|
+
| **Consumer Staples** | 2.0% | 4% | Underweight defensive |
|
|
265
|
+
| **Energy** | 1.0% | 2% | Minimal exposure |
|
|
266
|
+
| **Materials** | 0.5% | 1% | Minimal exposure |
|
|
267
|
+
| **Utilities** | 0.5% | 1% | Minimal exposure |
|
|
268
|
+
| **Real Estate** | 0% | 0% | Separate REIT allocation |
|
|
269
|
+
|
|
270
|
+
**Sector Strategy:**
|
|
271
|
+
- Heavy overweight Technology (innovation, secular growth)
|
|
272
|
+
- Overweight Healthcare (demographics, innovation)
|
|
273
|
+
- Growth and cyclical sectors emphasized
|
|
274
|
+
- Minimal defensive sectors (don't need stability)
|
|
275
|
+
|
|
276
|
+
**International & Emerging (28% of total, 35% of equity):**
|
|
277
|
+
- International Developed: 18% (quality international growth)
|
|
278
|
+
- Emerging Markets: 10% (higher growth potential)
|
|
279
|
+
|
|
280
|
+
**Position Sizing:**
|
|
281
|
+
- Maximum single position: 10% of total portfolio
|
|
282
|
+
- High conviction positions: 8-10%
|
|
283
|
+
- Medium conviction: 5-7%
|
|
284
|
+
- Low conviction: 2-4%
|
|
285
|
+
- Number of positions: 15-30 stocks
|
|
286
|
+
|
|
287
|
+
**Market Cap Distribution:**
|
|
288
|
+
- Large-cap: 60% of US equity
|
|
289
|
+
- Mid-cap: 25%
|
|
290
|
+
- Small-cap: 15% (growth potential)
|
|
291
|
+
|
|
292
|
+
**Growth vs Value Tilt:** Balanced to slight growth tilt (not extreme)
|
|
293
|
+
|
|
294
|
+
**Example Portfolio:**
|
|
295
|
+
- 10% NVDA - Technology, AI leadership
|
|
296
|
+
- 9% MSFT - Technology, cloud + AI
|
|
297
|
+
- 8% AAPL - Technology, ecosystem
|
|
298
|
+
- 7% GOOGL - Technology, AI + advertising
|
|
299
|
+
- 6% AMZN - Consumer Discretionary, AWS
|
|
300
|
+
- 6% META - Communication, digital advertising
|
|
301
|
+
- 5% TSLA - Consumer Discretionary, EV + energy
|
|
302
|
+
- 5% UNH - Healthcare, managed care
|
|
303
|
+
- 4% V - Financials, payments
|
|
304
|
+
- 4% MA - Financials, payments
|
|
305
|
+
- (Remaining 36% in 15-20 smaller positions + international)
|
|
306
|
+
|
|
307
|
+
### Fixed Income Allocation (15% of total portfolio)
|
|
308
|
+
|
|
309
|
+
| Bond Type | % of Total Portfolio | Purpose |
|
|
310
|
+
|-----------|---------------------|---------|
|
|
311
|
+
| **Investment Grade Corporate** | 8% | Moderate income, volatility dampening |
|
|
312
|
+
| **High Yield Bonds** | 7% | Enhanced returns, equity-like exposure |
|
|
313
|
+
|
|
314
|
+
**Duration:** Intermediate to long (7-15 years) - can handle rate risk
|
|
315
|
+
|
|
316
|
+
---
|
|
317
|
+
|
|
318
|
+
## Aggressive Portfolio (Maximum Growth)
|
|
319
|
+
|
|
320
|
+
### Profile
|
|
321
|
+
- **Investor:** Young, high income, very high risk tolerance, long horizon
|
|
322
|
+
- **Time Horizon:** 20+ years
|
|
323
|
+
- **Max Acceptable Drawdown:** -35 to -50%
|
|
324
|
+
- **Expected Annual Return:** 9-12%
|
|
325
|
+
- **Expected Volatility:** 18-22%
|
|
326
|
+
|
|
327
|
+
### Asset Allocation
|
|
328
|
+
|
|
329
|
+
```
|
|
330
|
+
Total Portfolio Allocation:
|
|
331
|
+
├── Equities: 95%
|
|
332
|
+
│ ├── US Stocks: 57%
|
|
333
|
+
│ ├── International Developed: 23%
|
|
334
|
+
│ └── Emerging Markets: 15%
|
|
335
|
+
├── Fixed Income: 0-5%
|
|
336
|
+
└── Cash & Equivalents: 0-5%
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
### Equity Allocation (95% of total portfolio)
|
|
340
|
+
|
|
341
|
+
**US Stocks (57% of total, 60% of equity):**
|
|
342
|
+
|
|
343
|
+
| Sector | % of Total Portfolio | % of US Equity | Strategy |
|
|
344
|
+
|--------|---------------------|----------------|----------|
|
|
345
|
+
| **Technology** | 20.0% | 35% | Maximum exposure to innovation |
|
|
346
|
+
| **Healthcare** | 9.0% | 16% | Biotech, medical devices, innovation |
|
|
347
|
+
| **Consumer Discretionary** | 9.0% | 16% | E-commerce, luxury, travel |
|
|
348
|
+
| **Communication Services** | 6.0% | 11% | Digital platforms, streaming |
|
|
349
|
+
| **Financials** | 6.0% | 11% | Fintechs, growth-oriented |
|
|
350
|
+
| **Industrials** | 4.0% | 7% | Aerospace, automation |
|
|
351
|
+
| **Consumer Staples** | 1.0% | 2% | Minimal |
|
|
352
|
+
| **Energy** | 1.0% | 2% | Renewables focus |
|
|
353
|
+
| **Materials** | 0.5% | 1% | Minimal |
|
|
354
|
+
| **Utilities** | 0.5% | 1% | Minimal |
|
|
355
|
+
|
|
356
|
+
**Sector Strategy:**
|
|
357
|
+
- Extreme overweight Technology (35% vs 28% benchmark)
|
|
358
|
+
- Growth sectors dominate (80%+ of portfolio)
|
|
359
|
+
- Minimal defensive exposure
|
|
360
|
+
- Willing to accept high volatility
|
|
361
|
+
|
|
362
|
+
**International & Emerging (38% of total, 40% of equity):**
|
|
363
|
+
- International Developed: 23% (European tech, Asian growth)
|
|
364
|
+
- Emerging Markets: 15% (China tech, India growth, LatAm)
|
|
365
|
+
|
|
366
|
+
**Position Sizing:**
|
|
367
|
+
- Maximum single position: 12% of total portfolio
|
|
368
|
+
- High conviction positions: 10-12%
|
|
369
|
+
- Medium conviction: 6-9%
|
|
370
|
+
- Low conviction: 3-5%
|
|
371
|
+
- Number of positions: 12-25 stocks (concentrated)
|
|
372
|
+
|
|
373
|
+
**Market Cap Distribution:**
|
|
374
|
+
- Large-cap: 55%
|
|
375
|
+
- Mid-cap: 30%
|
|
376
|
+
- Small-cap: 15% (higher growth potential, higher risk)
|
|
377
|
+
|
|
378
|
+
**Growth vs Value:** Strong growth tilt
|
|
379
|
+
|
|
380
|
+
**Style Characteristics:**
|
|
381
|
+
- High P/E ratios acceptable (growth premium)
|
|
382
|
+
- Focus on revenue growth over profitability (for some positions)
|
|
383
|
+
- Secular themes: AI, cloud, EVs, fintech, biotech
|
|
384
|
+
- May include speculative positions (5-10% total)
|
|
385
|
+
|
|
386
|
+
**Example Portfolio:**
|
|
387
|
+
- 12% NVDA - Technology, AI chips
|
|
388
|
+
- 10% TSLA - Consumer Discretionary, EVs + autonomy
|
|
389
|
+
- 9% MSFT - Technology, cloud + AI
|
|
390
|
+
- 8% GOOGL - Technology, AI + advertising
|
|
391
|
+
- 8% META - Communication, VR/AI
|
|
392
|
+
- 7% AMZN - Consumer Discretionary, AWS
|
|
393
|
+
- 6% AAPL - Technology, ecosystem
|
|
394
|
+
- 5% SHOP - Technology, e-commerce platform
|
|
395
|
+
- 5% SQ - Fintech, payments
|
|
396
|
+
- 4% CRSP - Healthcare, gene editing
|
|
397
|
+
- 4% ENPH - Energy, solar
|
|
398
|
+
- (Remaining 22% in smaller growth positions + international exposure)
|
|
399
|
+
|
|
400
|
+
### Fixed Income Allocation (0-5% of total portfolio)
|
|
401
|
+
|
|
402
|
+
**Minimal to none:**
|
|
403
|
+
- 0-5% investment grade or cash for liquidity only
|
|
404
|
+
- No need for volatility dampening given time horizon
|
|
405
|
+
- 100% equity acceptable for this profile
|
|
406
|
+
|
|
407
|
+
---
|
|
408
|
+
|
|
409
|
+
## Specialized Allocation Considerations
|
|
410
|
+
|
|
411
|
+
### Dividend Income Portfolio
|
|
412
|
+
|
|
413
|
+
**Objective:** Maximize current income while preserving capital
|
|
414
|
+
|
|
415
|
+
**Allocation:**
|
|
416
|
+
- Equities: 60% (dividend-focused)
|
|
417
|
+
- High-yield stocks (4-7% yields): 40%
|
|
418
|
+
- Dividend growth stocks: 20%
|
|
419
|
+
- Fixed Income: 30% (income-focused)
|
|
420
|
+
- Investment grade corporate: 15%
|
|
421
|
+
- High yield bonds: 10%
|
|
422
|
+
- Preferred stocks: 5%
|
|
423
|
+
- REITs: 10% (high dividends, inflation hedge)
|
|
424
|
+
|
|
425
|
+
**Target Yield:** 4-6% on total portfolio
|
|
426
|
+
|
|
427
|
+
### Tax-Efficient Portfolio (Taxable Account)
|
|
428
|
+
|
|
429
|
+
**Considerations:**
|
|
430
|
+
- Minimize turnover (reduce capital gains)
|
|
431
|
+
- Favor qualified dividends and long-term gains
|
|
432
|
+
- Tax-loss harvesting opportunities
|
|
433
|
+
- Municipal bonds (if high tax bracket)
|
|
434
|
+
|
|
435
|
+
**Allocation Adjustments:**
|
|
436
|
+
- Growth stocks (low/no dividends): Higher weight
|
|
437
|
+
- Municipal bonds: Replace corporate bonds
|
|
438
|
+
- Index funds: Higher weight vs active funds
|
|
439
|
+
- International: Lower weight (foreign tax complexity)
|
|
440
|
+
|
|
441
|
+
### Retirement Portfolio (Post-Retirement)
|
|
442
|
+
|
|
443
|
+
**Objective:** Generate income, preserve capital, manage longevity risk
|
|
444
|
+
|
|
445
|
+
**Allocation (varies by age):**
|
|
446
|
+
- Age 65: 40/60 stocks/bonds
|
|
447
|
+
- Age 75: 30/70 stocks/bonds
|
|
448
|
+
- Age 85: 20/80 stocks/bonds
|
|
449
|
+
|
|
450
|
+
**Income Strategy:**
|
|
451
|
+
- 4% withdrawal rate (sustainable)
|
|
452
|
+
- Bucket approach:
|
|
453
|
+
- Bucket 1 (0-2 years expenses): Cash
|
|
454
|
+
- Bucket 2 (3-7 years): Bonds
|
|
455
|
+
- Bucket 3 (8+ years): Stocks
|
|
456
|
+
|
|
457
|
+
---
|
|
458
|
+
|
|
459
|
+
## Position Sizing Guidelines by Risk Profile
|
|
460
|
+
|
|
461
|
+
| Risk Profile | Max Single Position | Typical Position | Min # of Stocks | Max # of Stocks |
|
|
462
|
+
|--------------|--------------------|--------------------|----------------|----------------|
|
|
463
|
+
| **Conservative** | 5% | 2-3% | 12 | 20 |
|
|
464
|
+
| **Moderate** | 8% | 4-6% | 15 | 25 |
|
|
465
|
+
| **Growth** | 10% | 5-7% | 15 | 30 |
|
|
466
|
+
| **Aggressive** | 12% | 6-9% | 12 | 25 |
|
|
467
|
+
|
|
468
|
+
**Single Sector Maximums:**
|
|
469
|
+
|
|
470
|
+
| Risk Profile | Max Single Sector |
|
|
471
|
+
|--------------|------------------|
|
|
472
|
+
| **Conservative** | 25% |
|
|
473
|
+
| **Moderate** | 30% |
|
|
474
|
+
| **Growth** | 35% |
|
|
475
|
+
| **Aggressive** | 40% |
|
|
476
|
+
|
|
477
|
+
---
|
|
478
|
+
|
|
479
|
+
## Rebalancing Triggers by Risk Profile
|
|
480
|
+
|
|
481
|
+
| Risk Profile | Rebalancing Frequency | Asset Class Drift Trigger | Position Drift Trigger |
|
|
482
|
+
|--------------|----------------------|--------------------------|------------------------|
|
|
483
|
+
| **Conservative** | Quarterly | >3% | >2% |
|
|
484
|
+
| **Moderate** | Quarterly | >5% | >3% |
|
|
485
|
+
| **Growth** | Semi-Annually | >7% | >4% |
|
|
486
|
+
| **Aggressive** | Annually | >10% | >5% |
|
|
487
|
+
|
|
488
|
+
---
|
|
489
|
+
|
|
490
|
+
## Lifecycle Allocation (Age-Based)
|
|
491
|
+
|
|
492
|
+
**Traditional Rule of Thumb:** "120 minus your age" in stocks
|
|
493
|
+
|
|
494
|
+
| Age | Stock % | Bond % | Formula |
|
|
495
|
+
|-----|---------|--------|---------|
|
|
496
|
+
| 25 | 95% | 5% | 120 - 25 |
|
|
497
|
+
| 35 | 85% | 15% | 120 - 35 |
|
|
498
|
+
| 45 | 75% | 25% | 120 - 45 |
|
|
499
|
+
| 55 | 65% | 35% | 120 - 55 |
|
|
500
|
+
| 65 | 55% | 45% | 120 - 65 |
|
|
501
|
+
| 75 | 45% | 55% | 120 - 75 |
|
|
502
|
+
|
|
503
|
+
**Modern Adjustment:** "130 minus your age" (accounts for longer lifespans, low interest rates)
|
|
504
|
+
|
|
505
|
+
---
|
|
506
|
+
|
|
507
|
+
## Using Target Allocations in Portfolio Analysis
|
|
508
|
+
|
|
509
|
+
### 1. Identify Current Allocation
|
|
510
|
+
Calculate actual portfolio percentages across:
|
|
511
|
+
- Asset classes (stocks/bonds/cash)
|
|
512
|
+
- Sectors (within stocks)
|
|
513
|
+
- Geographic regions
|
|
514
|
+
- Market caps
|
|
515
|
+
|
|
516
|
+
### 2. Compare to Target Model
|
|
517
|
+
Select appropriate model based on:
|
|
518
|
+
- Investor risk tolerance assessment
|
|
519
|
+
- Time horizon
|
|
520
|
+
- Financial situation
|
|
521
|
+
- Goals
|
|
522
|
+
|
|
523
|
+
### 3. Calculate Deviations
|
|
524
|
+
```
|
|
525
|
+
Deviation = Current % - Target %
|
|
526
|
+
|
|
527
|
+
Example:
|
|
528
|
+
Target (Moderate): 60% stocks
|
|
529
|
+
Current: 68% stocks
|
|
530
|
+
Deviation: +8% (overweight stocks)
|
|
531
|
+
```
|
|
532
|
+
|
|
533
|
+
### 4. Generate Rebalancing Plan
|
|
534
|
+
- Trim overweight positions/sectors
|
|
535
|
+
- Add to underweight positions/sectors
|
|
536
|
+
- Prioritize based on magnitude of deviation
|
|
537
|
+
|
|
538
|
+
### 5. Adjust for Individual Circumstances
|
|
539
|
+
Templates are starting points, not rigid rules:
|
|
540
|
+
- Tax situation may favor certain holdings
|
|
541
|
+
- Unique expertise may justify sector overweight
|
|
542
|
+
- Employer stock may create concentration
|
|
543
|
+
- Real estate holdings (home) affect allocation
|
|
544
|
+
|
|
545
|
+
---
|
|
546
|
+
|
|
547
|
+
## Summary
|
|
548
|
+
|
|
549
|
+
**Key Takeaways:**
|
|
550
|
+
|
|
551
|
+
1. **Target allocations are guidelines,** not mandates - customize to individual circumstances
|
|
552
|
+
2. **Risk profile drives allocation** - match stocks/bonds to risk tolerance and time horizon
|
|
553
|
+
3. **Sector allocation matters** - within equity allocation, sector mix drives risk and return
|
|
554
|
+
4. **Position sizing discipline** - enforce maximum position sizes to control concentration
|
|
555
|
+
5. **Rebalance systematically** - maintain target allocation over time, don't drift unintentionally
|
|
556
|
+
6. **Lifecycle matters** - adjust allocation as you age and circumstances change
|
|
557
|
+
|
|
558
|
+
**Remember:** The best allocation is one you can stick with through market cycles. Don't choose an aggressive allocation if you'll panic-sell in a 30% drawdown. Match allocation to your true risk tolerance, not your aspirational risk tolerance.
|