- Cleaned up whitespace and formatting in various files including http.py, language.py, logger.py, safe_exec.py, and SQL migration scripts.
- Consolidated import statements and removed unnecessary blank lines.
- Updated logging configuration for better clarity.
- Enhanced the safe execution code with improved error handling and logging.
- Removed commented-out code and unnecessary variables in backfill_zero_trades.py and other scripts.
- Added a pyproject.toml for Ruff and Vulture configuration.
- Introduced requirements-dev.txt for development dependencies.
- Removed commented-out stock entries in init.sql for cleaner migration scripts.
- Add get_ticker() method for real-time quotes across all markets
- Add get_realtime_price() service with ticker/kline fallback chain
- Fix yfinance end date issue for US stocks and futures
- Fix forex timezone parsing for Tiingo UTC timestamps
- Add retry mechanism with exponential backoff for Tiingo API
- Add API rate limiting for portfolio (3 concurrent, 0.3s interval)
- Add force refresh option to bypass price cache on manual refresh