Universe
pre-approved tickers
Every symbol the rebalancer, signal engine, and data-sync cron are allowed to touch. This is the universe the strategies pick from — add or remove tickers to steer every pipeline at once.
Watchlist
0 symbols
Used by /api/rebalance,/api/signals, and the daily/api/data-sync cron.
Loading watchlist…
How the universe is consumed
/api/rebalance — when the portfolio is empty (cold start), the rebalancer asks its strategy to allocate across this watchlist. Once positions exist, it rebalances among those directly.
/api/signals — Claude analyzes holdings first; if empty, falls back to the watchlist so you still get a market signal.
/api/data-sync — daily cron at 21:00 UTC pulls 30 days of OHLCV for every holding + every watchlist symbol, merged and deduped.
The Python RL stack has its own DEFAULT_UNIVERSE in python/src/portfolio_rl/data/loaders.py kept in sync with this list. When you retrain, re-check both match — a trained policy can only be evaluated on the exact universe it was trained on.