alphaStream: The Open-Source Trading Terminal That Turns News Into a Watchlist-Scoped Signal Feed
A FastAPI, Next.js, and FinBERT stack that streams market sentiment, persists it as a live ledger, and wraps it in a quant-focused Copilot.
- alphaStream’s real innovation is the loop that turns a user’s own watchlist into a live, deduplicated sentiment ledger.
- The backend feels immediate because it separates fast WebSocket sentiment updates from slower REST market data.
- LoRA makes the FinBERT layer practical by specializing financial sentiment without paying full fine-tuning costs.
- The Copilot is useful because it is intentionally narrow and speaks from user-specific portfolio context, not generic chat.
alphaStream is not trying to be another charting app with a chatbot bolted on. It behaves more like a miniature market infrastructure stack, built to keep reinterpreting the news around your holdings as new headlines arrive.
A terminal that watches your world, not the whole market
That choice changes the whole product. Instead of asking the user to search for signal, alphaStream binds watchlists, RSS headlines, sentiment scores, and price context into a single stream that keeps refreshing around a narrow set of names.
The effect is closer to a desk analyst than a dashboard. You are not looking at every market movement. You are looking at the part of the market that already matters to you, and the system keeps compressing new information into that frame.
The trick is not the UI. It is the pipeline behind the feed.
The backend is built around a tight sequence. A websocket tick kicks off scraping every 15 seconds, RSS sources fan out asynchronously, headlines move through sentiment inference, and the result is upserted into MongoDB so the stream stays fresh without duplicating history.
That matters because it separates freshness from persistence. The UI can feel alive while the database still behaves like a ledger, which is the right trade-off if you want a terminal that updates quickly without becoming a pile of repeated headlines.
Why LoRA changes the economics of financial sentiment
This is the part that makes alphaStream more than a wrapper around an API. The repository includes LoRA adapter files for a FinBERT base, which means the model is being specialized for the app’s financial domain instead of relying on a generic sentiment classifier.
That is an economic decision as much as a technical one. Full fine-tuning would be heavier and harder to maintain. LoRA gives the project a narrower, cheaper path to a more opinionated signal.
The Copilot is useful because it refuses to be general
The Copilot is not a universal assistant pasted into a finance product. It is a guarded, context-injected helper that pulls from the user’s own watchlists and portfolios, then stays in a finance-only lane.
That constraint is the point. In a high-noise domain, a narrow assistant that knows your holdings is more useful than a broad one that knows everything and nothing at the same time.
| Pattern | What it optimizes for | What it loses |
|---|---|---|
| Generic chat assistant | Breadth and convenience | Domain guardrails and user context |
| alphaStream Copilot | Watchlist-specific financial guidance | Open-ended conversation |
| Manual analyst workflow | Maximum control | Speed and automatic context injection |
Market data and sentiment are split on purpose
That separation is pragmatic. REST is used where durability and fetch simplicity matter, especially for historical market data. WebSockets are reserved for the live sentiment feed, where latency and repetition control matter more than request simplicity.
The result is a hybrid system that matches transport to signal. Not every market input deserves to move at the same speed, and alphaStream’s architecture respects that.
What alphaStream is really competing with
alphaStream sits at the intersection of three categories. It borrows the visual density of a market dashboard, the conversational promise of an AI assistant, and the speed of an automated sentiment scraper. Its niche is the overlap, not any single category by itself.
| Alternative | Strong at | Weak at |
|---|---|---|
| Generic market dashboard | Charts and price views | Narrative context and live opinion |
| Generic AI chat tool | Conversation and flexibility | Watchlist scope and finance guardrails |
| Manual RSS plus spreadsheet | Control and transparency | Speed, deduplication, and integration |
| alphaStream | Watchlist-scoped signal flow | Institutional breadth |
That is why the project feels opinionated. It is not trying to outrun Bloomberg or replace a research stack. It is trying to make a smaller system that answers a sharper question: what just changed for the names I care about?