trading/shared
Viktor Barzin e2a3bd456d
feat: real data pipeline — market data, DB persistence, portfolio sync, signal-trade linkage
Wire the trading bot to real Alpaca market data and persist pipeline
state to the database so the dashboard displays live information.

- Add market-data service fetching OHLCV bars from Alpaca, publishing
  to market:bars Redis Stream; signal generator consumes bars and
  injects current_price into signals for position sizing
- Sentiment analyzer now persists Article + ArticleSentiment rows to
  DB after scoring, with duplicate and error handling
- API gateway runs a background portfolio sync task that snapshots
  Alpaca account state into PortfolioSnapshot/Position DB tables
  during market hours
- TradeSignal carries a signal_id UUID; signal generator and trade
  executor both persist their records to DB with cross-references
- 303 unit tests pass (57 new tests added)
2026-02-22 19:52:45 +00:00
..
broker feat: brokerage abstraction layer with Alpaca implementation 2026-02-22 15:26:41 +00:00
models chore: remove cached pycache files [ci skip] 2026-02-22 15:20:15 +00:00
schemas feat: real data pipeline — market data, DB persistence, portfolio sync, signal-trade linkage 2026-02-22 19:52:45 +00:00
strategies feat: trading strategies — momentum, mean reversion, news-driven 2026-02-22 15:32:18 +00:00
__init__.py feat: project foundation — monorepo setup, shared config, redis streams, telemetry 2026-02-22 15:13:26 +00:00
config.py feat: project foundation — monorepo setup, shared config, redis streams, telemetry 2026-02-22 15:13:26 +00:00
db.py feat: database models and alembic migrations — all tables per design 2026-02-22 15:17:07 +00:00
redis_streams.py fix: resolve 13 important issues from code review 2026-02-22 17:58:01 +00:00
telemetry.py feat: project foundation — monorepo setup, shared config, redis streams, telemetry 2026-02-22 15:13:26 +00:00