Skip to main content
Glama

Echolon

PyPI Python License Status By DolphinQuant

📖 Englisch · 简体中文

Ein LLM-Agent-natives Backtest-Framework für die Futures-Forschung. Enthält einen MCP-Server, 22 integrierte Skills, 32 katalogisierte Fehlercodes und typisierte Pydantic-Konfigurationen – Agenten rufen strukturierte Tools auf, anstatt API-Formen aus Prosatexten zu erraten. End-to-End für tägliche SHFE-Futures.

Produktions-Engine innerhalb von Qorka, dem KI-nativen Strategiegenerierungsprodukt von DolphinQuant. Wird jeden Handelstag mit echtem Geld an der SHFE eingesetzt.

Schnellstart

Drei Befehle decken den natürlichen Einstieg ab:

Befehl

Zweck

Zeit

echolon hello

Kurze Demo. Lädt SHFE-Aluminium (letzte 2 Jahre) über akshare herunter, erstellt ein Strategie-Gerüst und führt einen Backtest durch. Netzwerk erforderlich.

~30s

echolon init <workspace> --market SHFE --instrument <i> --start <d> --end <d> --template <t>

Startet ein echtes Projekt. Lädt Marktdaten über akshare herunter (kostenlos, keine Registrierung), erstellt ein Strategie-Gerüst aus einer Vorlage und schreibt eine Workspace-Markierung.

~1–5 Min

echolon backtest single <strategy_dir> [--json]

Iteration nach der Bearbeitung. Navigiert nach oben, um den Kontext aus der Workspace-Markierung wiederherzustellen, berechnet Indikatoren neu und führt den Backtest durch. Keine Flags erforderlich.

~5–10s

pip install echolon
mkdir -p ~/echolon-playground && cd ~/echolon-playground
echolon hello                  # 30-second demo

echolon hello lädt ca. 2 Jahre Aluminiumdaten herunter, erstellt das momentum_breakout-Gerüst, schreibt .echolon-workspace.json und führt den Backtest aus. Öffnen Sie ./echolon-hello/strategy/baseline/entry.py, passen Sie einen Parameter an und führen Sie dann echolon backtest single ./echolon-hello/strategy/baseline/ erneut aus, um zu sehen, wie sich die Sharpe-Ratio verändert.

Drei Vorlagen sind im Paket enthalten — minimal, momentum_breakout, rsi_mean_reversion. echolon examples --list zeigt diese an; übergeben Sie --template <name> an echolon init / echolon hello, um mit einer davon zu beginnen.

Falls pip install fehlschlägt unter Linux ARM64 / Alpine / FreeBSD, führen Sie echolon doctor aus — es diagnostiziert die C-Bibliothek von ta-lib, die einzige Abhängigkeit, die möglicherweise außerhalb der standardmäßigen vorgefertigten Wheel-Plattformen (Linux x86_64, macOS x86_64+arm64, Windows x86_64; Python 3.11–3.12) aus dem Quellcode erstellt werden muss.

Steuerung durch Ihren Agenten

pip install echolon                                # 1. install
claude mcp add -s user echolon -- echolon-mcp      # 2. register MCP server (user-wide)
# 3. restart Claude Code to load mcp__echolon__* tools

Fragen Sie dann:

"Erstelle eine Trendfolge-Strategie für Kupfer, Backtest 2018–2024."

Hinter den Kulissen ruft der Agent list_skills auf → wählt patterns und quick_startload_template("momentum_breakout")list_indicators(has_lookback=True) → bearbeitet entry.py und exit.py → durchläuft validate_strategy_full(strategy_dir), bis alles erfolgreich ist → führt den Backtest aus. Wenn etwas fehlschlägt, analysiert er [CODE-NNN] aus dem Traceback und ruft get_error_doc(code) auf. Es gibt keinen Punkt, an dem er raten muss.

Laufzeit

Einrichtung

Claude Code

claude mcp add -s user echolon -- echolon-mcp

Cursor

Fügen Sie in ~/.cursor/mcp.json einen Eintrag unter mcpServers hinzu: "echolon": {"command": "echolon-mcp", "args": []}

OpenAI Codex CLI

codex mcp add echolon -- echolon-mcp (schreibt [mcp_servers.echolon] in ~/.codex/config.toml)

OpenAI Agents SDK (Python)

MCPServerStdio(name="echolon", params={"command": "echolon-mcp", "args": []})

LangChain / LangGraph

langchain-mcp-adapters: MultiServerMCPClient({"echolon": {"transport": "stdio", "command": "echolon-mcp", "args": []}})

Jeder andere MCP-kompatible Client (CrewAI, AutoGen, …)

Konfigurieren Sie ihn als stdio-Server mit command="echolon-mcp", keine Argumente. Siehe die MCP-Dokumentation Ihres Clients für das Aufrufformat.

Für Claude Code: -s user sorgt dafür, dass die Registrierung für alle Ihre Projekte gilt (lassen Sie es weg, wenn es nur für das aktuelle Projekt gelten soll); -- trennt den Registrierungsnamen vom Startbefehl. Nach einmaligem Ausführen sollte claude mcp list echolon als verbundenen stdio-Server anzeigen. Der Orientierungsleitfaden für den Agenten ist llms.txt — er wird auch von echolon init / hello im Workspace-Stammverzeichnis abgelegt, sodass ein Agent, der das Projekt betritt, ihn findet, ohne das Paket zu benötigen.

Was heute im Umfang enthalten ist

End-to-End fertiggestellt (produktionsreif, täglich im Einsatz):

  • SHFE tägliche Futures-Forschung — Datenerfassung, Katalog mit 214 Indikatoren, Backtrader-Ausführung, Optuna TPE-Optimierung (Einzel- + Mehrzieloptimierung), Walk-Forward-Analyse mit Scoring für die Einsatzbereitschaft, KMeans-basierte robuste Auswahl von Testläufen.

  • Agenten-Oberfläche — 23 MCP-Tools, 22 Skills, 32 Fehlercodes, 3 funktionierende Vorlagen.

Noch nicht enthalten (eröffnen Sie ein Issue, wenn Sie einen Bereich vorantreiben möchten):

  • SHFE Intraday-Backtesting — Daten-Pipeline bereit, Engine-Infrastruktur wird derzeit gefestigt.

  • Live-Handel über MiniQMT — saubere öffentliche Veröffentlichung in Arbeit.

  • Krypto-Perpetuals (CCXT-Adapter-Gerüst vorhanden), CME-Futures, Aktien.

  • Optuna-Alternativen (kein Grid, kein Random, keine Bayesian-Budget-Suche), verteilte Orchestrierung, Python ≤ 3.10.

  • Vor 1.0 — öffentliche API kann sich zwischen Nebenversionen ändern. Breaking Changes sind in CHANGELOG.md dokumentiert.

Bringen Sie Ihre eigenen Daten mit

Wenn Sie bereits rohe SHFE-XLS-Dateien haben (heruntergeladen von shfe.com.cn), führen Sie SHFEFileDayExtractor direkt aus, anstatt akshare zu verwenden. Für andere Formate (Broker-CSV, Tushare, benutzerdefinierte DB) müssen drei Dateien unter {workspace}/workspace/data/market_data/SHFE/{instrument}/ landen:

Datei

Schema

sort_by_contract/{contract}.csv

contract, date, prev_close, prev_settlement, open, high, low, close, settlement, price_change, settlement_change, volume, turnover, open_interest

sort_by_date.csv

Gleiche Spalten, alle Zeilen verkettet und nach Datum sortiert.

trading_calendar.csv

date, is_trading_day (boolean).

Zusätzlich unter {workspace}/data/SHFE/{instrument_code}/ (beachten Sie den KURZ-Code, z. B. al nicht aluminum):

Datei

Schema

main_contract.csv

date, main_contract wobei main_contract der Vertragscode mit .SF-Suffix ist (z. B. al2401.SF). Eine Zeile pro Datum des Wechsels des Hauptkontrakts.

Echolon leitet main_contract.csv nicht automatisch aus rohen OHLCV-Daten ab — es ist eine BENUTZEREINGABE, die Ihre Roll-Konvention kodiert (Regeln basierend auf Volumen, Open Interest oder Tagen bis zum Verfall). Für SHFE via akshare leitet echolon init dies für Sie ab; andernfalls erstellen Sie es selbst und legen Sie es ab.

Projektinformationen

Apache 2.0 — siehe LICENSE. Frei verwendbar, kommerziell oder anderweitig. Aktive Entwicklung, v0.1.2 Beta. Erstellt und gewartet von DolphinQuant — demselben Team, das Qorka auf der SHFE betreibt. Issues und Pull Requests sind willkommen unter github.com/dolphinquant/echolon.

@software{echolon,
  title = {Echolon: AI-native quantitative trading engine},
  author = {DolphinQuant},
  year = {2026},
  url = {https://github.com/dolphinquant/echolon},
}
Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
2Releases (12mo)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/DolphinQuant/echolon'

If you have feedback or need assistance with the MCP directory API, please join our Discord server