[Feature] Custom portfolio and watchlist panels for stocks, ETFs, and broker imports #37
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Add custom market panels so operators can track their own stocks, ETFs, crypto, cash positions, and broker portfolios next to the existing global market section.
The first version should support local-first manual/watchlist panels and file imports. Trade Republic and other brokers should be handled through importer/adapters, not by storing broker login credentials in the dashboard.
Why This Matters
The current market section is useful for broad macro context, but it is not personal. Operators want to see how live OSINT, conflict, macro, energy, and volatility signals affect their actual portfolio or watchlist. This turns the market area from a generic quote board into a personal risk cockpit.
Scope
Proposed Behavior
AAPL,MSFT,VWCE.DE,SXR8.DE,BTC-USD,XAUUSD, or Yahoo-compatible tickers.Acceptance Criteria
Maintenance Impact
This adds a user-owned finance layer. Treat portfolio data as private runtime data: no logs with raw holdings by default, no committed examples with realistic private positions, and no broker credentials in
.envunless a future read-only official integration justifies it.Direct Trade Republic integration is risky as a first milestone because public evidence points mainly to CSV/export workflows and third-party/unofficial tools rather than a stable official developer API. The implementation should therefore start with import/export compatibility and keep direct broker sync behind a later adapter decision.
Additional Context
Related existing code paths:
apis/sources/yfinance.mjsalready fetches live market quotes.dashboard/inject.mjsanddashboard/public/jarvis.htmlalready build the market cards./portfoliocommands currently say portfolio integration requires an external Alpaca MCP connection; this feature can replace that placeholder with local portfolio summaries.Suggested phases:
Pausiert, keinder darf hierdran arbeiten kar!