mcpField
C
Canli Backtest

Canli Backtest

ローカル
canlicapital.com金融データ53 日前に更新

Canli Backtest について

Canli Backtestは、クオンツ研究者やエージェント向けに、SECのポイントインタイム因子を作成し、持ち込み価格データでシグナルをバックテストするMCPサーバーです。売買のラグで先読みを防ぎ、売買コストを計上し、試行台帳に各バリアントを記録します。

主な機能

  1. 01SECポイントインタイム因子の生成
  2. 02クロスセクショナルなシグナル検証
  3. 03先読みの強制防止
  4. 04売買回転率に応じたコスト計上
  5. 05試行台帳によるバリアント記録

活用シーン

  1. 01SEC提出書類から因子を作成
  2. 02持ち込み価格データでシグナルを検証
  3. 03探索全体を考慮して結果を比較

MCP 対応

因子の検索・生成とシグナル検証のツールをMCPクライアントに公開します。ローカルのstdioで動作し、価格、シグナル、台帳はマシン外に送信されません。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"arhancanli-canli-backtest": {
"command": "npx",
"args": [
"-y",
"canli-backtest-mcp"
]
}
}
}
起動コマンドnpx -y canli-backtest-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmcanli-backtest-mcp0.3.0

ツール

3

掲載時のツール一覧 · 4 日前に更新

このツールにパラメーターはありません。

詳細

canli-backtest-mcp

AI エージェントが信頼できるバックテストです。SEC 提出書類からポイント・イン・タイムのファクターを構築し、先読みを一切行わず(コードで強制)、独自の価格データ上で任意のシグナルのクロスセクション・バックテストを実行し、実際の取引にコストを適用して、すべてのバリエーションを試行台帳に記録する MCP サーバーです。これにより、検索で得られた最良の結果を単独で評価するのではなく、検索全体を考慮して評価できます。

ローカルの stdio のみを使用します。価格データ、シグナル、台帳がマシンの外に出ることはありません。

理由

エージェントが実行するバックテストの多くが、実際よりも良く見える原因となる間違いが3つあります。

  1. 先読み。 公開前の数値を使ってしまうことです。たとえば、2月に提出された年次数値を1月に使ったり、後に修正された値を使ったりするケースです。pit_factor は各日付時点で SEC に提出済みだった情報のみを使用します。backtest_signal は lag_days 取引日前までの日付が付いたシグナル行のみで取引し、それより先のデータがあれば処理を停止します。
  2. 取引コストなし。 売買回転率を無視してしまうことです。リバランスの間にポジションは価格変動に応じてずれていき、コストはそのずれたポジションから新しい目標ポジションへの取引に対して適用されます。
  3. 勝者だけを数える。 エージェントが200種類のバリエーションを試し、最良の結果だけを報告することです。ledger を使うと、すべての実行が記録され(canli-validation-mcp のハッシュチェーン付き台帳に記録されます)、各応答には、すべての実行を考慮した最良の実行のデフレート・シャープレシオと、運だけで達成できるシャープレシオが示されます。

ツール

ツール内容
list_factorspit_factor が構築するファクターと、それぞれが測定する内容です。
pit_factorティッカーを対象に、各日付時点で判明していた情報に基づいて月次のファクター(roa、gross_margin、operating_margin、revenue_growth、asset_growth、accruals、または level:<measure>)を作成します。シグナル CSV を出力します。
backtest_signalシグナルの順位に基づいて、上位の分位をロング(下位の分位をショート)し、lag_days、cost_bps、省略可能な ledger を指定して、週次、月次、四半期ごと、または N 日ごとにリバランスします。

クイックスタート

npx -y canli-backtest-mcp

Claude Code:

claude mcp add canli-backtest -- npx -y canli-backtest-mcp

次のように依頼します:「この200銘柄について、2015年から2024年までの roa を構築し、prices.csv の価格データで月次バックテストを実行してください。コストは10 bps とし、台帳 'roa-search' で分位 0.1、0.2、0.3 を試して、最良の結果が検索を考慮しても有効かどうかを教えてください。」

ファイル

どちらのファイルも、date 列(YYYY-MM-DD)と、ティッカーごとの列で構成される CSV です。

  • 価格データ:取引日ごとに1行の終値です。独自の価格データを用意してください。トータルリターンが必要な場合は、株式分割と配当を調整してください。サーバーは価格データを提供しません(ベンダーのライセンスにより、価格データの受け渡しは禁止されています)。
  • シグナル:値が判明した日付ごとに1行です。pit_factor がこれを出力します。各行の日付が値の入手可能日を示していれば、独自のシグナルも使用できます。

空のセルは欠損値であり、ゼロではありません。

結果からは立証できないこと

  • 価格データは独自のものです。生存者バイアス、株式分割、配当、データエラーは、そのまま結果に反映されます。
  • バックテストで測定できるのは、これらのコストを前提とした過去の一つの経路です。シグナルが今後も機能し続けることを立証するものではありません。
  • コストは取引単位あたりの一律料金です。cost_bps に含めない限り、市場インパクト、空売りの借株料、資金調達コストは適用されません。
  • SEC の値は、企業が XBRL で報告し、提出した内容です。提出の遅い企業、XBRL を使用しない企業、タグの変更は、データから欠落する場合があります。

設定

変数デフォルト意味
CANLI_LEDGER_DIR~/.canli/ledgers台帳の保存先(canli-validation-mcp と共有)
CANLI_CACHE_DIR~/.cache/canli-fundamentalsSEC データのキャッシュ

Canli Capital MCP ファミリーの一部

canli-validation-mcp(バリデーターと試験用台帳)、canli-fundamentals-mcp(SEC の時点情報を含むファンダメンタルズ)、canli-research-mcp(オープンな調査記録)。ソース:github.com/arhancanli/canlicapital。MIT ライセンス。Arhan Canli が開発しました。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。