Skip to content

Conversation

@mpnikhil
Copy link

This PR introduces yfinance as a free alternative to the existing Financial Datasets API, making the platform more accessible to users who don't have premium API access.

Key Changes

Data Provider Infrastructure

  • Add src/data/providers.py with configurable data source management
  • Add src/utils/financial_data.py for safe financial data access utilities
  • Integrate data provider selection into CLI workflow

Yahoo Finance Integration

  • Add yfinance dependency to pyproject.toml
  • Implement get_prices_yfinance() function in api.py
  • Add fallback logic for price data fetching
  • Update all 16 investment analyst agents to support dynamic data provider selection

Enhanced Reliability

  • Add safe field access utilities for financial data
  • Implement proper error handling for missing/invalid data
  • Add working capital and shareholders equity calculation helpers
  • Validate required fields before processing

CLI Improvements

  • Add data provider selection to main CLI workflow
  • Default to Yahoo Finance as free option
  • Maintain backward compatibility with existing Financial Datasets API

🤖 Generated with Claude Code

Nikhil Pujari and others added 2 commits August 16, 2025 11:47
This PR introduces yfinance as a free alternative to the existing Financial Datasets API, making the platform more accessible to users who don't have premium API access.

## Key Changes

### Data Provider Infrastructure
- Add `src/data/providers.py` with configurable data source management
- Add `src/utils/financial_data.py` for safe financial data access utilities
- Integrate data provider selection into CLI workflow

### Yahoo Finance Integration
- Add yfinance dependency to pyproject.toml
- Implement `get_prices_yfinance()` function in api.py
- Add fallback logic for price data fetching
- Update all 16 investment analyst agents to support dynamic data provider selection

### Enhanced Reliability
- Add safe field access utilities for financial data
- Implement proper error handling for missing/invalid data
- Add working capital and shareholders equity calculation helpers
- Validate required fields before processing

### CLI Improvements
- Add data provider selection to main CLI workflow
- Default to Yahoo Finance as free option
- Maintain backward compatibility with existing Financial Datasets API

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Use getattr() to safely access dividends_and_other_cash_distributions attribute to prevent AttributeError when the attribute doesn't exist on financial line items.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant