Skip to main content
Glama

Echolon

PyPI Python License Status By DolphinQuant

📖 English · 简体中文

LLMエージェントネイティブな先物リサーチ用バックテストフレームワーク。 MCPサーバー、22個のパッケージ内スキル、32個のカタログ化されたエラーコード、型定義されたPydantic設定を提供します。エージェントは、ドキュメントを読んでAPIの形状を推測する代わりに、構造化されたツールを呼び出します。上海先物取引所(SHFE)の日次先物データを用いたエンドツーエンドの分析に対応しています。

DolphinQuantのAIネイティブ戦略生成プロダクトであるQorkaの内部エンジンとして使用されています。毎日、SHFEでの実運用で鍛えられています。

クイックスタート

初心者がたどるべき自然な流れを3つのコマンドでカバーします:

コマンド

目的

時間

echolon hello

クイックデモ。akshare経由でSHFEのアルミニウムデータ(過去2年分)をダウンロードし、戦略をスキャフォールディングしてバックテストを実行します。ネットワーク接続が必要です。

約30秒

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

本格的なプロジェクトを開始します。akshare経由で市場データをダウンロードし(無料、登録不要)、テンプレートから戦略をスキャフォールディングし、ワークスペースマーカーを作成します。

約1〜5分

echolon backtest single <strategy_dir> [--json]

編集後の反復作業。ワークスペースマーカーからコンテキストを復元し、インジケーターを再計算してバックテストを実行します。フラグは不要です。

約5〜10秒

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

echolon helloは、約2年分のアルミニウムデータをダウンロードし、momentum_breakoutテンプレートをスキャフォールディングし、.echolon-workspace.jsonを作成してバックテストを実行します。./echolon-hello/strategy/baseline/entry.pyを開いてパラメータを調整し、echolon backtest single ./echolon-hello/strategy/baseline/を再実行して、シャープレシオの変化を確認してください。

パッケージにはminimalmomentum_breakoutrsi_mean_reversionの3つのテンプレートが含まれています。echolon examples --listで確認でき、echolon init / echolon hello--template <name>を渡すことで、それらから開始できます。

Linux ARM64 / Alpine / FreeBSDでpip installが失敗する場合は、echolon doctorを実行してください。標準のプリビルドホイールプラットフォーム(Linux x86_64、macOS x86_64+arm64、Windows x86_64、Python 3.11〜3.12)以外でソースビルドが必要となる唯一の依存関係であるta-libのCライブラリを診断します。

エージェントからの操作

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

次に、以下のように指示を出します:

「銅のトレンドフォロー戦略を構築し、2018年から2024年までバックテストしてください。」

舞台裏では、エージェントがlist_skillsを呼び出し → patternsquick_startを選択 → load_template("momentum_breakout")list_indicators(has_lookback=True)entry.pyexit.pyを編集 → すべてがパスするまでvalidate_strategy_full(strategy_dir)をループ → バックテストを実行します。何らかのエラーが発生した場合は、トレースバックから[CODE-NNN]を解析し、get_error_doc(code)を呼び出します。推測が必要な場面はありません。

ランタイム

セットアップ

Claude Code

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

Cursor

~/.cursor/mcp.jsonmcpServersの下に以下を追加: "echolon": {"command": "echolon-mcp", "args": []}

OpenAI Codex CLI

codex mcp add echolon -- echolon-mcp (~/.codex/config.toml[mcp_servers.echolon]を書き込みます)

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": []}})

その他のMCP互換クライアント (CrewAI, AutoGen, …)

command="echolon-mcp"(引数なし)のstdioサーバーとして設定してください。呼び出し形式については、各クライアントのMCPドキュメントを参照してください。

Claude Codeの場合、-s userを指定するとすべてのプロジェクトで登録が適用されます(現在のプロジェクトのみにする場合は削除してください)。--は登録名と起動コマンドを分離します。一度実行した後、claude mcp listecholonが接続されたstdioサーバーとして表示されるはずです。エージェント向けのオリエンテーションガイドはllms.txtです。これはecholon init / helloによってワークスペースのルートにも配置されるため、プロジェクトに入ったエージェントはパッケージなしでそれを参照できます。

現在のスコープ

エンドツーエンドで完了済み(本番グレード、毎日運用中):

  • SHFE日次先物リサーチ — データ取り込み、214個のインジケーターカタログ、Backtrader実行、Optuna TPE最適化(単一および多目的)、デプロイ準備スコアリング付きウォークフォワード分析、KMeansベースの堅牢なトライアル選択。

  • エージェントインターフェース — 23個のMCPツール、22個のスキル、32個のエラーコード、3個の動作テンプレート。

未対応(機能追加を希望する場合はIssueを作成してください):

  • SHFE日中バックテスト — データパイプラインは準備済み、エンジン配管を強化中。

  • MiniQMT経由のライブ取引 — クリーンなパブリックリリースを準備中。

  • 暗号資産パーペチュアル(CCXTアダプターのスケルトンあり)、CME先物、株式。

  • Optunaの代替(グリッド、ランダム、ベイズ予算探索なし)、分散オーケストレーション、Python ≤ 3.10。

  • 1.0未満 — パブリックAPIはマイナーバージョン間で変更される可能性があります。破壊的変更はCHANGELOG.mdに記載されています。

独自のデータの持ち込み

すでにSHFEの生XLSファイル(shfe.com.cnからダウンロードしたもの)がある場合は、akshareを使用せずにSHFEFileDayExtractorを直接実行してください。その他の形式(ブローカーCSV、tushare、カスタムDB)の場合、以下の3つのファイルが{workspace}/workspace/data/market_data/SHFE/{instrument}/の下に配置されている必要があります:

ファイル

スキーマ

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

同じ列、すべての行が連結され、日付順にソートされていること。

trading_calendar.csv

date, is_trading_day (boolean)。

さらに、{workspace}/data/SHFE/{instrument_code}/の下に(SHORTコードに注意してください。例:aluminumではなくal):

ファイル

スキーマ

main_contract.csv

date, main_contractmain_contract.SFサフィックス付きのコントラクトコード(例:al2401.SF)。メインコントラクト変更日ごとに1行。

Echolonは、生のOHLCVからmain_contract.csvを自動生成しません。これは、ロール慣習(出来高、建玉、または満期までの日数に基づくルール)をエンコードするユーザー入力です。akshare経由のSHFEの場合、echolon initが自動生成しますが、それ以外の場合は自分で作成して配置してください。

プロジェクト情報

Apache 2.0 — LICENSEを参照してください。商用・非商用を問わず自由に使用できます。活発に開発中、v0.1.2ベータ版。SHFEでQorkaを運用しているDolphinQuantチームによって構築・保守されています。Issueやプルリクエストは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