2.9 KiB
2.9 KiB
ETF Dividend Portfolio Builder
A comprehensive tool for discovering, analyzing, and building dividend-focused ETF portfolios using real-time market data.
Features
- ETF Discovery & Filtering: Find ETFs based on yield, category, AUM, and other criteria
- Portfolio Builder: Create balanced portfolios with custom allocations
- DRIP Calculator: Project growth with dividend reinvestment
- Economic Comparison: Compare DRIP vs. No-DRIP strategies with accurate capital recovery calculation
- Risk Assessment: AI-powered analysis of NAV and yield erosion risks
- PDF Reports: Generate downloadable PDF reports of your portfolio analysis
- ETF Analyzer: Detailed analysis of individual ETFs including holdings, sectors, and dividend history
- CLI Tool: Command-line interface for managing the ETF Suite applications
Requirements
- Python 3.8+
- Streamlit
- Financial Modeling Prep API key (paid subscription)
- Pandas, Numpy, Plotly, and other dependencies
Setup
- Clone the repository
- Install dependencies:
pip install -r requirements.txt - Get an API key from Financial Modeling Prep
- Create a
.streamlit/secrets.tomlfile with your API key:fmp_api_key = "YOUR_API_KEY_HERE" - Install the ETF Suite CLI:
pip install -e . - Run the application using the CLI:
etf-suite start --component all
ETF Suite CLI
The ETF Suite CLI provides a convenient way to manage the different components of the ETF Suite from the command line.
Installation
pip install -e .
Usage
# Start the entire ETF Suite (Launcher, Portfolio Builder, Analyzer)
etf-suite start --component all
# Start just the ETF Analyzer
etf-suite start --component analyzer
# Start without opening browser automatically
etf-suite start --component launcher --no-browser
# Start in background mode (daemon)
etf-suite start --component all --background
# Stop all running ETF Suite components
etf-suite stop
# Stop a specific component
etf-suite stop --component portfolio_builder
# Restart all components
etf-suite restart
# Restart a specific component
etf-suite restart --component analyzer
# Restart in background mode
etf-suite restart --background
# Check status of running components
etf-suite status
# View recent logs
etf-suite logs
# Update configuration
etf-suite config --key ports.launcher --value 8600
Usage
- Set your initial capital amount
- Use the filters to discover ETFs based on your criteria
- Add ETFs to your portfolio and adjust allocations
- Run the analysis to see projections and comparisons
- Generate a PDF report for your records
Data Source
This application uses the Financial Modeling Prep (FMP) API for real-time ETF data, including:
- ETF listings and details
- Price and dividend history
- Fundamental data
License
MIT License
Author
Pascal