Ich gehe mal davon aus, dass du bereits ein LLM dazu bringen kannst, kluge Dinge über eine Aktie zu sagen. Das kann jeder. Das ist nicht der Job.
Der Job ist das Geschirr, die Schicht um das Modell herum, die entscheidet, ob dein Analyst ein Schreibtisch ist, dem du vertraust, oder ein Zufallszahlengenerator mit guter Grammatik. Das Modell ist der am einfachsten austauschbare Teil des Ganzen.

Drei Teile:
- Wie man es richtig ausführt
- Wie man es zu einer Finanzmaschine ausbildet (der wahre Vorteil)
- Die Repos und Dienste, die es erweitern.
Lies den mittleren Teil zweimal.
Keine Finanzberatung. Mach deine eigene Recherche. Mein eigenes Projekt - @coldvisionXYZ
TEIL 1: AUSFÜHREN UND VERSTEHEN, WAS DU AUSFÜHRST
Eine Zeile. Sie richtet Python, Node, Git, alles, in ~/.hermes/ ein:
1curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
Linux, macOS, WSL2, Android via Termux (automatisch erkannt), natives Windows (frühe Beta, kein WSL nötig). Python 3.11+. Dann hermes setup für den Assistenten oder hermes model / hermes tools / hermes gateway setup einzeln. Ausführen mit hermes (klassisches CLI) oder hermes --tui (empfohlen).
Die Provider-Abstraktion ist die stille Superkraft
Dieselbe Laufzeitumgebung treibt Chat-Completions-APIs, Anthropic Messages, Codex Responses, einen Out-of-Process-Codex-App-Server-Pfad und Bedrock an.
Tool-Call-Formate und Provider-Eigenheiten werden von Transportadaptern normalisiert, sodass auf Loop-Ebene die Modelloberfläche identisch aussieht, egal was dahinter steckt.
Das bedeutet, Provider-Failover ist real, und das Austauschen von Modellen ist wirklich null Code.
Praktische Konsequenz für dein Budget: Du betreibst nicht ein Modell.
Unter auxiliary in config.yaml kann jede Nebenaufgabe, Kurator-Läufe, Vision, Embeddings, Titelerzeugung, Sitzungssuche, der Komprimierungs-Summarizer, seinen eigenen Provider, sein Modell, seine base_url und seinen Reasoning-Aufwand festlegen.
Dein teures Reasoning-Modell verbrennt also nie Tokens, um alte Chats zusammenzufassen oder eine Sitzung zu benennen.
Es gibt auch smart_model_routing, um schwierige Aufgaben an das starke Modell zu senden und alles andere an ein billiges.
Günstigste sinnvolle Einrichtung: Nous Portal (ein Abo, 300+ Modelle + das Tool Gateway für Web/Browser/Bild/TTS) als primär, ein billiges Modell für alle Nebenarbeiten festgelegt, lokales Ollama/vLLM als kostenloser Fallback. Wenn du lokal gehst, verwendet Ollama standardmäßig einen 4k-Kontext und schneidet stillschweigend ab; setze num_ctx auf 64k+, sonst wird der Agent dumm und du gibst dem Modell die Schuld.
Das Ding, das du verstehen musst, bevor du die Konfiguration anfasst: Der Prompt ist Cache-förmig
Das ist die Invariante, für die das gesamte System gebaut ist, und wenn du sie nicht verstehst, wirst du deine Rechnung stillschweigend verzehnfachen.
Hermes setzt den System-Prompt in drei Ebenen zusammen:
- stabil
- Kontext
- flüchtig

Stabil trägt die Identität (SOUL.md), Tool-Anleitungen für nur aktivierte Tools, den Skills-Index, Umgebungshinweise. Kontext wird aus dem aktuellen Arbeitsverzeichnis abgeleitet. Flüchtig ändert sich Zug um Zug. Die Abstufung ist aus einem Grund explizit im Code: Gültigkeit des Prompt-Präfix-Caches. Provider cachen das Präfix deines Prompts und berechnen gecachte Tokens zu einem Bruchteil. Jedes Mal, wenn sich die stabile Ebene ändert, zerstörst du diesen Cache und zahlst den vollen Preis für alles.
Deshalb behandelt Hermes das Ändern des Kontexts als fast heilig. Aus den eigenen Engineering-Regeln des Agenten: Der einzige Zeitpunkt, an dem er absichtlich den Kontext ändert, ist während der Komprimierung. Slash-Befehle, die den System-Prompt-Status mutieren (Installieren eines Skills, Umschalten eines Tools), verwenden standardmäßig die aufgeschobene Ungültigmachung: Die Änderung wird erst in der nächsten Sitzung wirksam, mit einem optionalen --now-Flag, wenn du sie wirklich sofort brauchst. /skills install --now ist das kanonische "Ich akzeptiere den Cache-Bruch"-Muster.
Warum dich das als Analyst interessiert: Jeder Skill, den du aktivierst, und jedes Tool, das du einschaltest, lebt in dieser stabilen Ebene und kostet Präfix-Tokens bei jedem einzelnen Aufruf. Ein aufgeblähter Agent mit 60 aktivierten Tools bezahlt für alle 60 Beschreibungen bei jeder Runde für immer. Schlanke Toolsets und On-Demand-Skills sind keine Ordnung, sie sind das Kostenmodell.
Komprimierung ist Abstammung, nicht Abschneiden
Wenn der Kontext voll wird, verwerfen naive Agenten alte Runden und bekommen Amnesie.
Hermes führt zwei unabhängige Komprimierungsebenen aus:
- ein Gateway-"Sitzungshygiene"-Sicherheitsnetz, das bei etwa 85% des Kontexts auf Basis einer groben Schätzung auslöst, bevor der Agent überhaupt läuft
- die echte, der In-Loop-ContextCompressor, der bei etwa 50% mit genauen, von der API gemeldeten Token-Zahlen auslöst.
Es fasst mittlere Runden in einer neuen Nachricht zusammen, anstatt sie zu löschen, und Sitzungen verfolgen die Eltern-Kind-Abstammung für jede Komprimierungsaufteilung. Die Zusammenfassung wird Teil des Transkripts; das Original bleibt in der Abstammung erhalten.

Verlustbehaftet ist in Ordnung, verlustfrei würde den Speicher sprengen.
Sitzungen sind Infrastruktur, nicht nur Transkripte.
Sie tragen Quell-Tags und Routing-Metadaten, und es gibt ein modellseitiges session_search-Tool plus einen FTS5-SQLite-Index über jede vergangene Runde. Dein Agent kann sich mitten im Reasoning daran erinnern, "was habe ich vor drei Wochen über COIN geschlussfolgert", nicht weil du es in den Kontext gestopft hast, sondern weil er seine eigene Geschichte auf Abfrage durchsuchen kann.
Wo es läuft
Sechs Terminal-Backends:
- lokal
- Docker
- SSH
- Singularity
- Modal
- Daytona
Modal und Daytona sind serverlos, die Umgebung schläft im Leerlauf und wacht bei Bedarf auf, was zwischen den Läufen fast nichts kostet.
Ein $5-VPS oder eine ruhende serverlose Box ist der wahre "$5". Verbinde das Gateway und derselbe Agent läuft auf über 20 Plattformen (Telegram, Discord, Slack, Signal, …) mit einheitlichem Sitzungs-Routing, sodass du von deinem Telefon aus mit ihm sprichst, während er auf der Cloud-Box arbeitet.
Sitzungen überleben Neustarts dank SQLite im WAL-Modus mit einer benutzerdefinierten Wiederholungsschicht für Multi-Prozess-Schreibkonflikte, sodass Cron-Jobs und Gateway-Arbeit sich nicht gegenseitig beschädigen.
TEIL 2 - ZU EINER FINANZMASCHINE AUSBILDEN
Ein einfacher Agent ist ein brillanter Praktikant ohne Fachkenntnisse und ohne Urteilsdisziplin. Du bildest ihn buchstäblich über vier Kanäle aus: Identität, Playbooks, Gedächtnis und Standards. Dann bildet er sich selbst weiter, und deine eigentliche Aufgabe wird zur Kuratierung.
2a. Identität - SOUL.md ist Slot #1
SOUL.md ist buchstäblich das Erste im System-Prompt, vor Tools, vor Skills, vor allem. Es ist die Persona- und Werte-Ebene.
Für einen Finanzanalysten legst du hier das epistemische Temperament fest, nicht Persönlichkeits-Schnickschnack.
Dinge wie: "Du bist ein skeptischer Buy-Side-Analyst. Du misstraust runden Zahlen und Narrativen. Du nennst nie eine Zahl, die du nicht in dieser Sitzung aus einem Tool gezogen hast.
Du sagst lieber 'unzureichende Daten' als zu raten. Du behandelst deine eigenen früheren Schlussfolgerungen als Priors, die aktualisiert werden müssen."
Das sitzt in der Cache-stabilen Ebene und färbt jede einzelne Runde kostenlos. Die meisten Leute lassen SOUL.md standardmäßig. Für einen Analysten sind das deine am stärksten gehebelten 1.500 Zeichen.
2b. Playbooks - Skills, und warum die Beschreibung das eigentliche Engineering ist
Ein Skill ist eine SKILL.md, Name + Beschreibung + Ablauf, gespeichert in ~/.hermes/skills/.
Nur die kurzen Beschreibungen sitzen im immer geladenen Skills-Index.
Der vollständige Ablauf wird bei Bedarf geladen, wenn eine Aufgabe passt. Deine Skill-Bibliothek kann also riesig sein, ohne das Präfix aufzublähen.
Was bedeutet: Die Beschreibung ist der Punkt, an dem der Skill erfolgreich ist oder scheitert.
Sie ist ein Router. Wenn die Beschreibung vage ist, lädt der Agent den Skill nie, wenn er sollte, oder lädt ihn, wenn er nicht sollte. Schreibe Beschreibungen wie Auslösebedingungen, nicht wie Zusammenfassungen.
"Verwenden, wenn der Benutzer ein an der US-Börse notiertes Eigenkapital nennt und eine fundamentale Analyse wünscht" schlägt "analysiert Aktien."
Ein echter Analysten-Skill, beachte die Standards aus 2d, die direkt in den Ablauf eingebacken sind:
1---2name: equity-snapshot3description: Verwenden, wenn der Benutzer ein an der US-Börse notiertes Ticker-Symbol nennt und eine fundamentale + Preisanalyse mit Risikokennzeichen wünscht.4---56# Eigenkapital-Schnappschuss781. Löse Ticker -> CIK über die SEC company_tickers Map auf. NIEMALS einen Ticker raten.92. Rufe den neuesten 10-K/10-Q (Umsatz, Schulden, FCF) über EDGAR ab. Notiere die Zugangsnummer.103. Berechne NIEMALS Kennzahlen selbst. Rufe das calc-Tool für KGV, Margen, YoY auf.114. Überprüfe den Umsatz über zwei Quellen hinweg. Wenn sie nicht übereinstimmen, MELDE die Diskrepanz, wähle keine aus.125. Ausgabe: These (2 Zeilen), 3 Katalysatoren, 3 Risiken, Bewertungseinschätzung, Konfidenz 0-1,13 und "welcher eine Datenpunkt würde dies umkehren." Wenn die Daten dünn sind, gib "pass" zurück.
Skills unterstützen plattformspezifisches Aktivieren/Deaktivieren, bedingte Aktivierung basierend auf Tool-Verfügbarkeit und Voraussetzungsprüfung, sodass ein Skill deklarieren kann "nur verfügbar, wenn das EDGAR-Tool vorhanden ist."
Das Format ist der offene agentskills.io-Standard, sodass das, was du schreibst, auf andere kompatible Agenten übertragbar ist.
2c. Die Selbstverbesserungsschleife und die Wartung
Der Agent schreibt seine eigenen Skills.
Nachdem er etwas durch Versuch und Irrtum gelöst hat (typischerweise eine Aufgabe mit mehreren Tool-Aufrufen), speichert er den funktionierenden Ansatz als SKILL.md in agent_created/.
Das Skill-Management-Tool hat sechs Aktionen, und die, die man kennen sollte, ist patch: eine gezielte Korrektur, bevorzugt gegenüber vollständigen Bearbeitungsüberschreibungen, weil sie Token-effizient ist.
Der Agent verfeinert buchstäblich seine eigenen Playbooks während der Nutzung an Ort und Stelle.
Ohne Wartung metastasieren Auto-Skills.
Du endest mit Dutzenden von engen, überlappenden Playbooks, die Präfix-Tokens verbrennen und den Router verschmutzen.

Der Kurator kümmert sich darum, und seine Mechanik ist wissenswert. Es ist kein Cron-Daemon, es läuft bei einer Inaktivitätsprüfung: Ungefähr wenn 7 Tage seit seinem letzten Lauf vergangen sind und der Agent 2+ Stunden im Leerlauf war, startet ein Hintergrund-Fork mit seinem eigenen Prompt-Cache, der niemals das aktive Gespräch berührt, und führt eine LLM-Überprüfungsschleife durch, die veraltete Skills automatisch archiviert (in .archive/, wiederherstellbar, nichts geht jemals verloren).
Die Konfiguration lebt unter curator in config.yaml: interval_hours, min_idle_hours, stale_after_days, archive_after_days.
Behandle Auto-Skills wie Praktikantenentwürfe. hermes curator review, um sie zu begutachten, pinne die wirklich guten, damit sie überleben, lass den Rest archivieren. Diese Schleife zu kuratieren ist die Ausbildung.
Ein unkuratierter Agent wird mit der Zeit schlechter, nicht besser.
2d. Standards - die Disziplin, geordnet nach dem, was sie dir sparen
Das sind die Regeln, die du in SOUL.md und jede SKILL.md einbackst. In der Reihenfolge ihrer Auswirkung.
1. Rechnen verbieten. LLMs sagen Tokens voraus. Das ist die häufigste Quelle für selbstbewusst falsche Zahlen. Die saubere Implementierung verwendet execute_code (behandelt in 2e), sodass ein deterministisches Skript die Mathematik erledigt und das Modell nur Eingaben entscheidet und Ausgaben interpretiert.
Eine DCF, die das Modell "geschätzt" hat, ist Fiktion; eine, die ein Skript berechnet und das Modell einem Stresstest unterzogen hat, ist ein Produkt.
2. Belege für jede Zahl. Jede Zahl wird mit ihrer Quelle und ihrem Stand-Datum zurückgegeben, niemals nackt. Der Renderer verwirft alles ohne Beleg.
Die Auszahlung ist konfrontativ: Wenn zwei Quellen nicht übereinstimmen, ist die Nichtübereinstimmung das Signal.
3. Nur zeitpunktbezogen. Vorausschauverzerrung ist der stille Killer jedes Backtests und jedes "ich habe es vorhergesagt"-Screenshots. APIs liefern standardmäßig neu dargestellte, aktuelle Daten.
Kennzeichne Fakten mit Stand-Daten und beschränke den Agenten auf das, was zum Entscheidungszeitpunkt bekannt war.
4. Von Natur aus konfrontativ. Ein Unteragent baut den Long-Fall auf, ein zweiter wird angewiesen, ihn zu widerlegen, ein dritter gleicht mit einer angegebenen Konfidenz ab. Der Wert liegt vollständig in den Zielen, die wirklich gegensätzlich sind, nicht in der Anzahl der Agenten.
Neutral ausgerichtete Modelle sind hier wichtig, weil sie den Bären-Fall hart vertreten, anstatt ihn zu Brei zu verwässern.
5. Lizenz zum Enthalten. Erzwinge "welcher eine Datenpunkt würde dies umkehren" bei jedem Aufruf.
Wenn das Daten sind, die der Agent nicht hat, ist die Antwort keine Position.
2e. Der fortgeschrittene Zug: Programmatischer Tool-Aufruf kollabiert Pipelines zu null Kontextkosten
Das ist die Funktion, die, sobald du sie verstehst, verändert, wie du jeden Analysten-Workflow baust.
Normalerweise verbrennt eine mehrstufige Pipeline eine LLM-Runde pro Schritt: "Ich werde suchen… jetzt werde ich lesen… jetzt werde ich zusammenfassen… jetzt werde ich schreiben."
Jeder mechanische Schritt kostet Inferenz-Tokens und verschmutzt den Kontext mit Zwischenmüll.
execute_code tötet das
Der Agent schreibt ein Python-Skript, das Hermes' eigene Tools über einen Unix-Domain-Socket-RPC aufruft. Das Skript läuft in einem Kindprozess; Tool-Aufrufe reisen über den Socket zurück zum Elternprozess und werden über denselben Handler wie normale Tool-Aufrufe weitergeleitet.
Entscheidend: Nur die print()-Ausgabe des Skripts wird an das Modell zurückgegeben. Zwischenergebnisse von Tools gelangen nie in das Kontextfenster.
1# der Agent schreibt dies EINMAL; das Modell ist nur am Entscheidungspunkt beteiligt2from hermes_tools import edgar_fetch, market_price, calc34ticker = ["TSLA", "NVDA", "COIN"]5zeilen = []6for t in ticker:7 f = edgar_fetch(t, form="10-Q") # Tool-Aufruf über RPC8 px = market_price(t) # Tool-Aufruf über RPC9 kgv = calc("pe", price=px["last"], eps=f["eps"]) # deterministische Mathematik, nicht das LLM10 zeilen.append({"ticker": t, "pe": kgv, "src": f["accession"], "as_of": f["period_end"]})1112print(zeilen) # NUR dies erreicht das Kontextfenster
Für einen Finanzanalysten ist das enorm.
Ein morgendlicher Durchlauf über 20 Ticker mit drei Tool-Aufrufen pro Ticker sind 60 Tool-Aufrufe, die, konventionell durchgeführt, deinen Kontext und dein Token-Budget sprengen würden.
Als Skript ist es eine Runde, eine saubere gedruckte Tabelle, Mathematik deterministisch inline erledigt. Du faltest ganze Pipelines in einzelne Inferenzen, und das Modell denkt nur an den Punkten, die tatsächlich Urteilsvermögen erfordern. Baue deine wiederkehrenden Analysten-Workflows als execute_code-Skripte, die in Skills eingewickelt sind. (Nur Linux/macOS, es benötigt Unix-Domain-Sockets.)
2f. Gedächtnis - Fakten vs. Benutzermodell
Hermes' Gedächtnis besteht aus drei orthogonalen Mechanismen (die "3 Ebenen"-Darstellung ist eine didaktische Vereinfachung, im Code sind sie unabhängig):
- MEMORY.md - dauerhafte Fakten. ~2.200 Zeichen Limit.
- USER.md - das Modell von dir. ~1.375 Zeichen Limit.
- SessionDB - SQLite, WAL, FTS5 über jede vergangene Runde, abgefragt über
session_search.
Ein MemoryStore liest MEMORY.md und USER.md einmalig zu Sitzungsbeginn und bettet sie als einen einzigen unveränderlichen Block in den System-Prompt ein.
Der Agent kann während der Sitzung in diese Dateien schreiben, und die Schreibvorgänge treffen die Festplatte, aber die Kopie im Prompt ändert sich erst in der nächsten Sitzung, weil eine Änderung den Präfix-Cache zerstören würde (dieselbe Invariante wie überall sonst).
Plus 8 optionale externe Anbieter (Honchos dialektische Benutzermodellierung, Mem0, Hindsight, Supermemory…), Einzelauswahl, hermes memory setup.
Die Zeichenlimits sind ein Feature. Sie zwingen dich, USER.md als hochsignalige Infrastruktur zu halten, nicht als Abladeplatz.
Für einen Analysten ist USER.md dein Mandat: Risikotoleranz, Zeithorizont, die Kennzahlen, nach denen du tatsächlich handelst, Ausgabeformat.
MEMORY.md ist für dauerhafte Fakten, die der Agent erarbeitet hat ("COIN-Umsatz passt sauberer zum 10-K als zu FMP").
SessionDB als dein Punktezähler: Speichere jeden Aufruf, bewerte ihn anhand der Ergebnisse, und der Agent aktualisiert Priors, während du seine Kalibrierung lernst, wo er scharf ist und wo er chronisch zu optimistisch ist. Diese Kalibrierungskarte ist Alpha, das kein Einzelhändler-Build zu sammeln sich die Mühe macht.
2g. Wenn Prompts nicht ausreichen: GAPA, dann RL
Bevor du zum Feintuning greifst: Hermes hat GAPA, systematische Prompt-Optimierung für deine SOUL.md, Skill-Anweisungen und System-Prompts, anstatt manuelles Trial-and-Error-Tuning.
Probiere es aus, wenn die Leistung ein Plateau erreicht.
Darüber hinaus macht Hermes Batch-Trajektorien-Generierung und exportiert ShareGPT-Format-Traces für SFT, und es gibt einen RL-Pfad (Atropos), um das Tool-Call-Verhalten tatsächlich auf deinen eigenen Trajektorien zu verfeinern. Das ist die wahre Obergrenze von "bilde es aus", es endet im Training eines Modells, wie dein Analyst arbeitet.
TEIL 3 - ERWEITERE ES: REPOS, MCP, DIENSTE
MCP: Registrierung von Exposition trennen
Füge Server über die CLI oder config.yaml hinzu; der Agent listet ihre Tools beim Start auf und registriert sie neben den integrierten. Wichtige Disziplin, die die Cache-Logik oben widerspiegelt: Whiteliste mit tools.include, sodass du nur exponierst, was du brauchst, denn jedes exponierte Tool kostet Präfix-Tokens und vergrößert deine Angriffsfläche.
1hermes mcp add github --command npx --args "-y,@modelcontextprotocol/server-github"2hermes mcp configure github # einzelne Tools umschalten
1mcp_servers:2 filesystem:3 command: npx4 args: ["-y", "@modelcontextprotocol/server-filesystem", "/home/you/research"]5 tools: { include: [read_file, list_directory] } # schreibgeschützt, keine Schreibvorgänge
/reload-mcp zum Anwenden.
Composio MCP ist der Cheat-Code: Ein Server, Hunderte von SaaS-Verbindungen; Leute bauen Finanz-Agenten auf Hermes, die Marktdaten abrufen und Berichte in Google Docs schreiben, vollständig darüber. Und hermes mcp serve lässt Hermes als MCP-Server laufen und gibt seine Sitzungshistorie frei, sodass Claude Desktop oder Cursor abfragen können, was dein Analyst gefunden hat; der Agent wird zu einer Wissensdatenbank, aus der deine anderen Tools lesen.
Die Datenquellen (geordnet: Rückgrat vs. Garnitur)
Krypto-Rückgrat:
DefiLlama
(kostenlos, kein Schlüssel, keine echte Ratenbegrenzung, TVL/Gebühren/Renditen/Preise, die Hälfte der bezahlten Dashboards sind Neuverpackungen)
+ Helius
(Solana-König, erweiterte Transaktionsanalyse verwandelt Byte-Suppe in lesbare Swaps).
Garnitur:
Birdeye (OHLCV+Websocket), Jupiter (Routing/Angebote), Dune+Flipside (SQL On-Chain), Bitquery (GraphQL Multichain), Nansen/Arkham (Labels, kostenpflichtig).
TradFi-Rückgrat:
FRED
(St. Louis Fed, höchstsignalstarke kostenlose Makrodaten, die Daten, die die Desks tatsächlich beobachten)
+ edgartools
(MIT, kein Schlüssel, typisierte Finanzdaten aus 10-Ks mit Zugangsnummern).
Garnitur:
Finnhub (bester kostenloser Tarif), FMP (vorberechnete Kennzahlen), Polygon/Tiingo (saubere historische Daten), yfinance (Klebeband, bricht stillschweigend), GDELT (globale Nachrichtenereignisse).
Falle: Kostenlose Tarife sind knapp (Alpha Vantage ~2 Dutzend Aufrufe/Tag). Du wirst denken, dein Code sei kaputt. Cache alles und verwende Anmeldeinformationspools (config.yaml), um automatisch über mehrere Schlüssel zu rotieren und Ratenbegrenzungen zu überleben.
Repos, die deine Zeit wert sind
- NousResearch/hermes-agent
Lies die Developer-Guide-Dokumente: Architektur, Agenten-Loop, Kontextkomprimierung und -Caching. Die DeepWiki- und mudrii/hermes-agent-docs-Spiegel sind gut für die Interna.

- 0xNyk/awesome-hermes-agent
Kuratierte Skills, Tools, MCP-Server, Integrationen. Beginne hier. Skill-Hubs: der offizielle Hub (680+ Skills, 18 Kategorien), skills.sh, ClawHub.

- OpenBB-finance/OpenBB
Open-Source-Bloomberg, das MCP-Server ausliefert, also direkt in Hermes einsteckt und dem Agenten eine riesige Marktdaten- + Analyseoberfläche über eine einzige Schnittstelle zur Verfügung stellt. Die am höchsten gehebelte einzelne Anbaulösung.

- polakowo/vectorbt
Numba-schnelles Backtesting, Tausende von Variationen in Sekunden. Wickle es in einen Skill, damit der Agent jede Hypothese testet, bevor du ihr vertraust.

- TauricResearch/TradingAgents (+ auronsun/TradingAgents-crypto)
Multi-Agenten-Handelsfirmen-Simulation. Lies es für die Struktur, baue dann die schlankere Bullen-/Bären-Unteragenten-Version, die du verstehst. microsoft/qlib und nautechsystems/nautilus_trader für echte systematische Strategien. wilsonfreitas/awesome-quant als Bibliothekskarte.






