A comprehensive platform for analyzing and visualizing financial statements from publicly traded companies, powered by SEC EDGAR data, AI predictions, and macroeconomic indicators.
- Real-time Data Collection: Fetch financial statements directly from SEC EDGAR API
- Comprehensive Coverage: Income statements, balance sheets, and cash flow statements
- Multi-year Analysis: Historical data spanning 15+ years
- Interactive Tables: Sortable, filterable financial data tables
- Dynamic Charts: Create custom charts with multiple metrics and comparison tickers
- Drag & Resize: Moveable and resizable chart panels for custom layouts
- LSTM Price Forecasting: 11-day stock price predictions using neural networks
- GARCH Volatility Analysis: Advanced volatility modeling and forecasting
- Market Indices Tracking: Real-time tracking of SPY, DJIA, NDAQ, and IWM
- Model Performance Metrics: Detailed evaluation metrics and training loss visualization
- Commodities: Energy, metals, agricultural, livestock, and industrial commodities
- Currencies: Major global currency exchange rates
- Economic Indicators: Inflation (CPI), debt-to-GDP, dollar index, money velocity
- Labor Market: Unemployment rates and trends
- Real Estate: Housing market indicators
- Bond Markets: Global bond yields across regions
- Resizable Panels: All charts and visualizations can be resized
- Draggable Layout: Arrange charts to create custom dashboard layouts
- Multi-Ticker Comparison: Compare up to multiple tickers simultaneously (comma-separated)
- Real-time Progress Tracking: Live progress updates during data collection
- Smart Caching: JSON-based caching for instant data retrieval
- FastAPI: High-performance REST API framework
- Data Collection Service: Automated SEC EDGAR data fetching and processing
- AI/ML Endpoints: LSTM and GARCH model serving
- Macro Data Integration: Economic indicators from multiple sources
- Smart Caching: Automatic CSV cleanup after JSON caching
- React 18: Modern component-based UI
- Recharts: Interactive financial charts
- Plotly.js: Advanced plotting for AI/ML visualizations
- Axios: API communication
- Draggable/Resizable Components: Custom panel system
- SEC EDGAR API: Raw financial data retrieval
- XML/XBRL Parsing: Financial statement extraction
- Data Normalization: Standardized format conversion
- Multi-year Merging: Consolidated historical data
- JSON Caching: Optimized storage and retrieval
- Python 3.8+
- Node.js 14+
- npm or yarn
# Navigate to backend directory
cd backend
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Run the server
uvicorn app.main:app --reload --port 8000
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000# Navigate to frontend directory
cd frontend
# Install dependencies
npm install
# Start development server
npm startThe application will be available at http://localhost:3000
- Enter a ticker symbol (e.g., AAPL, GOOGL, MSFT)
- Click "Search" or press Enter
- View financial statements in interactive tables
- Create custom charts using the Chart Builder
- Select metrics from the financial table
- Choose chart type (Line, Bar, Area)
- Add comparison tickers (comma-separated: AMZN,GOOGL,MSFT)
- Click "Add Chart" to generate visualization
- Drag and resize the chart panel as needed
- Navigate to AI tab
- Enter ticker symbol
- Select model (Price Forecast or Volatility)
- Click "Run Model" and wait 30-60 seconds
- Interact with results - drag and resize charts
- Navigate to Economy tab
- Select category (Commodities, Currencies, etc.)
- View interactive charts
- Resize and reposition for custom layout
- FastAPI - Modern Python web framework
- Pandas - Data manipulation and analysis
- NumPy - Numerical computing
- yfinance - Yahoo Finance data
- requests - HTTP library
- Beautiful Soup - XML/HTML parsing
- TensorFlow/Keras - Deep learning (LSTM)
- arch - GARCH volatility modeling
- React - UI framework
- Axios - HTTP client
- Recharts - Charting library
- Plotly.js - Scientific plotting
- React Router - Navigation
- Bootstrap - CSS framework
- SEC EDGAR API - Financial statements
- Yahoo Finance - Stock prices and indices
- FRED - Economic indicators
- Alpha Vantage - Additional market data
financial_data_tool/
βββ backend/
β βββ app/
β β βββ main.py # FastAPI application
β β βββ data.py # Financial data endpoints
β β βββ ai_endpoints.py # AI/ML model endpoints
β β βββ macro_endpoints.py # Economic data endpoints
β β βββ data_collection_service.py
β βββ api/
β βββ cached_statements/ # JSON cache storage
βββ frontend/
β βββ src/
β β βββ components/
β β β βββ FinancialTable.js
β β β βββ ChartManager.js
β β β βββ AIView.js
β β β βββ MacroView.js
β β β βββ DraggableResizablePanel.js
β β βββ App.js
β βββ public/
βββ data-collection/
β βββ scripts/
β βββ main.py # Data collection entry point
β βββ Company.py
β βββ Filling.py
β βββ FinancialStatement.py
βββ AI_ML/
β βββ AI/
β β βββ stock_forecaster.py # LSTM implementation
β βββ Macro/
β βββ macro_data.py # Economic data fetchers
βββ GIFs/ # Demo GIFs (TO BE ADDED)
βββ images/ # Documentation images (TO BE ADDED)
βββ README.md
Create a .env file in the backend directory:
# API Keys (if needed)
ALPHA_VANTAGE_KEY=your_key_here
FRED_API_KEY=your_key_here
# Server Configuration
HOST=0.0.0.0
PORT=8000By default, CSV files are cleaned up after JSON caching. To disable this:
# In data_collection_service.py
cleanup_csv=False # Set to False to keep CSV filesContributions are welcome! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request


