- Add exchange_validation.py module for validating exchange requirements
before running strategies (backtest, paper, live modes)
- Fix AttributeError in Signals.py: 'Indicators' object has no attribute
'indicators' - created IndicatorWrapper class for proper data access
- Fix testnet balance issue: explicitly pass testnet=False to all
connect_exchange calls to prevent pickle corruption from old testnet
Exchange objects
- Add balance exchange selector: display one exchange at a time with
dropdown to switch between connected exchanges (defaults to chart view)
- Add unique tbl_key generation for exchange_data to prevent duplicate
entries (format: user:exchange)
- Fix DataCache balance serialization for list types
- Update frontend error handling for exchange validation errors
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>