mvest ist ein AI Investment Research & Recommendation Assistant. Das System soll Aktien/ETFs (v1) und später Derivate (v2) recherchieren, quantitativ analysieren, Strategien vorschlagen und die Vorschläge auf Risiko bewerten. Es führt keine Trades aus — Outputs sind Reports, Empfehlungen und Backtests, die der Nutzer in einer Web-UI konsumiert und selbst entscheidet, ob er sie umsetzt.
Die Recherche- und Analyse-Pipeline besteht aus mehreren qualitativ unterschiedlichen Schritten (qualitative News-Recherche, quantitative Auswertung, strategische Synthese, kritisches Review, Risiko-Bewertung). Diese Schritte unterscheiden sich in benötigten Tools, akzeptabler Latenz, sinnvoller Modell-Wahl und Verifikationsstrategie. Ein einzelner monolithischer Agent würde diese Heterogenität nicht abbilden.
Eine zentrale Anforderung ist Output-Verifikation: LLMs halluzinieren, und im Investment-Kontext sind halluzinierte Zahlen oder erfundene News besonders gefährlich. Die Architektur muss deterministische und probabilistische Verifikations-Schichten einbauen können.
Wir wählen Option B: Coordinator orchestriert eine DAG aus spezialisierten Sub-Agents. Die Architektur balanciert Verifizierbarkeit, Modell-Diversität, Tool-Isolation und Auditierbarkeit und vermeidet gleichzeitig die Komplexität einer vollwertigen Event-Bus-Architektur.
| Agent | Verantwortung | Output | Modell-Profil |
|---|---|---|---|
| Coordinator | Workflow-Orchestrierung. Nimmt Trigger + Watchlist entgegen, ruft Sub-Agents in der richtigen Reihenfolge auf, persistiert Endergebnis. | Run-Summary mit verlinkten Sub-Outputs | Mittel — wenig LLM-Aufwand, eher Code |
| Screener | Reduziert große Watchlists/Universen auf eine Shortlist von Kandidaten basierend auf günstigen Filterkriterien (Marktkapitalisierung, Liquidität, simple Indikatoren, jüngste News-Aktivität). | Shortlist (Tickers) mit Begründung | Klein/günstig (z. B. Haiku / GPT-4o-mini) |
| Research | Qualitative Recherche zu Shortlist-Items: News, Filings (10-K/Q/8-K), Earnings-Calls, Sentiment. Pflicht-Citations für jede Aussage. | Research-Report mit Citations pro Item | Mittel-Groß |
| Analyst | Quantitative Auswertung: Technische Indikatoren (RSI, MACD, Bollinger), Fundamentaldaten (PE, P/B, Margin-Trends), Volatilitäts-Metriken. Daten kommen aus deterministischen APIs, nicht aus dem LLM. | Quant-Snapshot pro Item | Mittel (Daten-Aggregation, kein heavy Reasoning) |
| Strategy | Synthetisiert Research- und Analyst-Outputs zu einer konkreten Strategie-Empfehlung (z. B. „Buy on dips below $X with 5% trailing stop"). Muss Backtest-Resultat im Output haben, sonst gilt der Vorschlag als unvollständig. | Empfehlung mit Reasoning, Confidence, Backtest-Resultat | Groß (z. B. Opus / GPT-4 / Gemini-Pro) |
| Critic | Devil's Advocate gegen Strategy-Empfehlungen. Liest Strategy-Output, sucht aktiv nach Gegenargumenten, Datenlücken, Survivor-Bias im Backtest, Confirmation-Bias im Reasoning. Läuft auf einem anderen Provider/Modell als Strategy, um Halluzinations-Korrelation zu brechen. | Critic-Review (Concerns, Counter-Evidence, Vertrauens-Adjustment) | Groß, aber anderer Provider als Strategy |
| Risk-Assessment | Bewertet die Strategie-Empfehlung quantitativ: erwarteter Drawdown, Volatilität, Korrelation zu bestehenden Watchlist-Items, hypothetische Positionsgröße. Kein Hard-Gate (es werden keine Trades platziert), sondern Info-Layer im Decision-Log. | Risk-Profile als strukturiertes Metadatum | Klein bis Mittel (überwiegend Tool-Use auf Daten) |
Nicht in v1: Execution-Agent, Portfolio-Monitor (im Trade-Sinn), Broker-Anbindung. mvest gibt Empfehlungen, keine Orders. Diese Komponenten würden in einer späteren Phase (separate ADRs) hinzukommen.
Der Standard-Workflow für einen Watchlist-Lauf:
Research und Analyst laufen parallel, da sie keine gegenseitigen Abhängigkeiten haben. Strategy ist der Sync-Punkt. Critic und Risk-Assessment laufen nach Strategy ebenfalls parallel.
Verifikation ist deterministisch wo möglich, probabilistisch nur wo nötig.
| Schicht | Mechanismus | Greift bei |
|---|---|---|
| 1 | Structured Outputs via Pydantic-Schemas. Schema-Validation = Format/Typen erzwungen. | Jeder Agent, immer |
| 2 | Source-Grounding-Pflicht: jede Behauptung braucht Citation (URL, Filing-ID). Code prüft Erreichbarkeit / Existenz der Quelle. | Research-Output |
| 3 | Quantitative Fact-Checks: alle Zahlen werden gegen Daten-API verifiziert (Analyst sagt „PE=28" → yfinance/Polygon-Check). | Analyst-Output |
| 4 | Backtest-Forcing: Strategy-Empfehlung gilt nur als gültig, wenn ein Backtest-Resultat angehängt ist, das vom Backtest-Tool (deterministisch, kein LLM) berechnet wurde. | Strategy-Output |
| 5 | Critic-Agent (anderes Modell): unabhängiges Review, sucht aktiv Gegenargumente. | Strategy-Output |
| 6 | Risk-Assessment-Layer: bewertet quantitativ; in v1 nur informativ (kein Gate), aber im UI prominent angezeigt. | Strategy-Output |
| 7 | Decision-Log: Reasoning, Inputs, Quellen, Modelle, Token-Counts persistiert. Audit-Trail. | Immer, jeder Agent |
Wichtig: Niemals nur LLM-prüft-LLM ohne Code-Anker. Critic ist eine Ergänzung zu deterministischen Checks, kein Ersatz.