Oneqaz Trading Mcp について
Oneqaz Trading Mcpは、暗号資産、米国株、韓国株、マクロ市場を分析するAIエージェント向けの金融MCPサーバーです。ライブデータ由来のシグナルや市場レジーム検出に加え、予測や戦略を評価するための精度・校正・ガバナンス情報を提供します。
主な機能
- 01ライブデータ由来の取引シグナル
- 02市場レジーム検出
- 03予測精度と校正の確認
- 04特徴量ガバナンスと台帳の整合性
- 05クロスアセット分析とポートフォリオ分析
- 06市場ブリーフと次のアクション提案
活用シーン
- 01シグナルを参照する前に信頼性を確認
- 02基準値と照らして予測精度を点検
- 03市場間の関連性とポートフォリオリスクを分析
- 041回の呼び出しで市場概要を作成
MCP 対応
ホスト型エンドポイントまたはローカル実行のサーバーを通じて、金融ツールとリソースをMCPクライアントに提供します。クライアントはカタログを確認し、信頼性評価、市場分析、ペーパートレードのツールを利用できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://api.oneqaz.com/mcpclaude mcp add --transport http oneqaz-trading https://api.oneqaz.com/mcp{"mcpServers":{"oneqaz-trading":{"type":"http","url":"https://api.oneqaz.com/mcp"}}}Cursor で開く{"servers":{"oneqaz-trading":{"type":"http","url":"https://api.oneqaz.com/mcp"}}}VS Code で開く{"mcpServers":{"oneqaz-trading":{"type":"http","url":"https://api.oneqaz.com/mcp"}}}{"mcpServers":{"oneqaz-trading":{"serverUrl":"https://api.oneqaz.com/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
https://api.oneqaz.com/mcp認証が必要ツール
43| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| limit | integer | いいえ | 返される最大行数(デフォルト 50、最大 1000)。行はページ分割されます。total_available / truncated を参照してください。注:統計値(win_rate、avg_pnl)は返された行ではなく、スキャン対象全体を集計したものです。stats_scope を参照してください。 |
| symbol | any | いいえ | ティッカーシンボルで絞り込みます(例:"BTC"、"AAPL")。大文字と小文字は区別しません |
| max_pnl | any | いいえ | 最大損益率のフィルター(例:10.0) |
| min_pnl | any | いいえ | 最小損益率のフィルター(例:-5.0) |
| market_id | enum | はい | マーケット ID(crypto、kr_stock、us_stock。別名 coin/kr/us も使用できます)crypto | kr_stock | us_stock |
| hours_back | any | いいえ | 過去 N 時間以内の取引のみ |
| action_filter | enum | いいえ | アクションで絞り込みます(all、buy、sell)buy | sell | hold |
詳細
oneqaz-trading-mcp
金融 AI のための専門 API — 会話を考慮したレスポンスフックを搭載。
AI エージェントは価格を見るだけでなく、読み取っているシグナルがどの程度機能してきたかを確認し、次に何を尋ねるべきかを把握できるべきです。ホスト型エンドポイントは、10 カテゴリーにわたる 42 個のツールを提供します。3 個のエンティティコンテキストツール(銘柄、セクター、市場全体について、その状態、値動きに先行する要因、タグ付きニュース、追跡されていない項目を 1 回の呼び出しで取得)、13 個の Trust Layer ツール(正直なベースラインと照合して算出する的中率、キャリブレーション、ガバナンス)、改ざん検知可能な予測台帳(
get_ledger_integrity— あらゆるマクロレジーム予測を対象とした日次 SHA-256 ハッシュチェーン。誰でも再計算できます)、4 個のクロスアセット相関ツール(セクター/マクロ/同業銘柄)、ポートフォリオ分析(MDD/シャープレシオ/ソルティノレシオ/カルマーレシオ)、ペーパートレードのエビデンスツール、そして 1 回の呼び出しで市場を概観できる高頻度のget_daily_briefを備えています。すべてのレスポンスには_next_actions(レスポンスデータに応じた次のツールの推奨)と_followup_questions_for_user(AI がユーザーにそのまま提示できる、韓国語の自然言語によるフォローアップ質問)が含まれており、OneQAZ を静的な API から会話型の専門家へと進化させます。暗号資産、米国株、韓国株に対応し、約 1,300 銘柄と 40 以上のマクロ金融商品を扱います。シグナルスコアはリアルタイムの市場価格に基づいて算出され、5〜15 分ごとに再計算されます(パブリックベータのため、稼働時間は保証されません)。 投資助言ではありません。取引、ポジション、損益はペーパートレード(シミュレーション上の約定であり、実際のお金は使用しません)です。
Keywords: MCP, trading, signals, market analysis, regime, portfolio, sentiment, technical analysis, crypto, stocks, Fear & Greed, cross-market, Trust Layer, AI-verifiable, daily brief, next actions, conversational specialist, Claude, model context protocol
OneQAZ を選ぶ理由
金融データ API は至るところにあります。しかし、AI が検証できる市場インテリジェンスはそうではありません。
| 一般的な金融 MCP | OneQAZ | |
|---|---|---|
| 価格/OHLCV データ | ✅ | ✅ |
| テクニカル指標 | ✅ | ✅ |
| レジーム検出(トレンド/レンジ/高ボラティリティ) | ❌ | ✅ |
| 自己修正型シグナル(ペーパートレードの結果に対するトンプソンサンプリング) | ❌ | ✅ |
| マクロレジーム+市場構造オーバーレイ(独立した 2 つのループを、各銘柄の判断時に統合) | ❌ | ✅ |
| Trust Layer(持続性および多数派クラスのベースラインと照合した的中率+キャリブレーション) | ❌ | ✅ |
自己申告された欠陥(known_biases、採点パイプの ledger_health) | ❌ | ✅ |
| 特徴量ガバナンス(3 系統の p 値検証) | ❌ | ✅ |
| クロスアセット相関(セクター/マクロ/銘柄間の先行・遅行関係) | ❌ | ✅ |
会話フック(_next_actions+_followup_questions_for_user) | ❌ | ✅ |
単一呼び出しでの市場ブリーフィング(get_daily_brief) | ❌ | ✅ |
動的な検出(イントロスペクション+data_freshness プローブ) | ❌ | ✅ |
| ホスト型 24 時間 365 日エンドポイント(API キー不要) | ❌ | ✅ |
信頼性レイヤー — OneQAZ を評価する AI エージェント向け
データソースとして OneQAZ を信頼する前に、AI エージェントは 7 回の呼び出しでその実績を確認できます。
get_prediction_accuracy— 8 つのマクロカテゴリーにわたるマクロから市場への予測のセル単位の的中率です。読み解きに必要なヌルモデルも併せて提供されます。持続性の正解率(レジームは持続しやすいため、未加工の正解率は主に持続性を測定します)、自己相関を補正したskill_ci_95を伴うskill_score、および多数派クラスのベースライン(beats_majority_baseline)が含まれます。また、known_biases(自己測定された欠陥)とledger_health(採点パイプの稼働状況)も含まれます。セルの評価には、未加工の正解率ではなく、スキルスコアとベースラインを使用してください。get_ledger_integrity— これらの予測の改ざん検知機能です。正規のレシピを用いた日次の SHA-256 ハッシュチェーンで、get_resolved_predictionsから再計算できます。get_backtest_tuning_state— セルごとに自動調整されたlag_hours/sensitivityです(last_backtestで調整の鮮度を確認できます)。get_monthly_accuracy_trend— 月ごとの正解率の時系列です。持続性の高いレジームでは、この傾向は主に市場の持続性を反映するため、手順 1 のベースラインと照らし合わせて確認してください。get_signal_calibration— シグナルレベルの信頼性です。信頼度バケットごとの実績的中率を示します。get_feature_governance_state— 3 系統の p 値検証に合格した特徴量を示します(OBSERVATION / CONDITIONAL / ACTIVE / DEPRECATED)。get_strategy_leaderboard— ペーパーテスト済みの RL 戦略です。GLOBAL プールには合成された勝率が含まれる場合があります。測定済みの結果にはper_symbol_leaderboardを使用してください。
セルには n_nominal と n_effective が含まれます。結果は自己相関しているため、サンプルサイズとして n_effective を使用してください。すべてのツールは、AI エージェントのコンテキストウィンドウ向けに調整されたプレーンテキストの要約 _llm_summary も返します。
ニュースの先行時間指標は信頼性チェーンに含まれません。
get_news_leading_indicator_performance、get_news_causality_breakdown、market://derived/event-leadingはverification_status: UNVERIFIEDを返します。先行性/予測手法は監査中のため、これらの数値は非公開で、ツールはカバレッジのみを報告します。
シグナルの生成方法
OneQAZ のシグナルは、固定されたインジケーターのクロスオーバーではありません。AbsoluteZero スタイルの自己対戦ループによって生成されます。
- 戦略の生成 — RL パイプラインが、レジームごとに候補戦略を作成します。
- 自己対戦シミュレーション — シミュレーション市場で戦略同士を競わせます。
- Thompson Sampling — バックテスト曲線ではなく、実際の仮想取引の結果に基づいてシグナルの重みを継続的に更新します。
- レジーム適応 — トレンド相場、レンジ相場、ボラティリティの高い相場で、それぞれ異なる戦略プールが有効になります。
つまり、BTC +0.82 のようなシグナルスコアは、過去のデータに当てはめるだけでなく、リアルタイムのペーパートレード結果に基づいて評価され、その結果が蓄積するにつれて重みが変化します。スコアが実際に較正されているかどうかは、断言するのではなく公開データで示されます。get_signal_calibration は信頼性曲線を提供し、get_prediction_accuracy は手数料控除後の signal_gauge_v2 と known_biases(たとえば、極端なテールスコアは反転していることが判明し、買い側では低く評価されています)を含みます。
市場カバレッジ
| 市場 | 取引所/情報源 | 対象範囲 | 銘柄数 |
|---|---|---|---|
| 暗号資産 | Bithumb | KRW建て上場ペアすべて | 約460 |
| 韓国株 | KOSPI/KOSDAQ | KOSPI 200 + KOSDAQ 150 | 約350 |
| 米国株 | NYSE/NASDAQ | S&P 500 | 約500 |
| マクロ | 金利、FX、先物、ETF | 債券 · クレジット · FX · 流動性 · コモディティ · エネルギー · インフレ · ボラティリティ | 40以上 |
| 市場構造 | ETF/セクターバスケット | 市場構造分析用の市場別グループ | 約180 |
パイプラインは24時間365日稼働します。暗号資産は終日取引され、韓国株と米国株のシグナルは各取引所の取引時間に従います。ローソク足の間隔は、暗号資産が15m/30m/4h/1d、韓国株と米国株が5m/15m/30m/1dです。シグナル、レジーム検出、ペーパートレード、Trust Layer のスコアリングは、これらのデータに基づいて継続的に実行されます。シグナルスコアは、韓国株と米国株では5分ごと(取引時間中)、暗号資産では15分ごとにリアルタイム価格から再計算されます。形成中のローソク足の指標値は、そのローソク足が始まった時点で算出された値を維持し、マクロレジームは毎日更新されます。
クイックスタート
オプション1:ライブAPI — インストール不要
ライブデータ — 新しいローソク足が確定するたびにシグナルが更新されます(5分足から日足まで)。無料プラン(1日あたり1,500回の呼び出し)では、get_account_status だけを除き、すべてのツールとリソースをキーなしで呼び出せます。get_account_status は接続済みの OneQAZ アカウントの情報を返します(アクセス方針を参照)。
リモートURLを設定に指定できる Cursor(mcp.json)やその他のクライアント:
{
"mcpServers": {
"oneqaz-trading": {
"url": "https://api.oneqaz.com/mcp"
}
}
}
Claude Desktop の設定ファイルでは、mcp-remote ブリッジが必要です:
{
"mcpServers": {
"oneqaz-trading": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://api.oneqaz.com/mcp"]
}
}
}
Claude Code:claude mcp add --transport http oneqaz-trading https://api.oneqaz.com/mcp。
Claude.ai と ChatGPT:https://api.oneqaz.com/mcp をカスタムコネクターとして追加します。
VS Code などのクライアント:同じURLを使用するリモート(HTTP)MCP サーバーのオプションを選択します。
次のいずれかを試してみてください:
- 「
get_daily_briefを呼び出して、市場の概要をまとめてください。」 — 1回の呼び出しで概要を取得し、AI が_next_actionsに従って自動的に詳細を調べます。 - 「
get_prediction_accuracyを呼び出して、OneQAZ を信頼すべきか教えてください。」 — Trust Layer のエントリーポイントで、サンプル数で重み付けした的中率を返します。 - 「まず
market://meta/discoveryを読み込んでから、計画を立ててください。」 — ホストされているすべてのツール/リソース/テンプレートを動的に一覧表示します(アカウントツールを含むツール43個、リソース17個、テンプレート17個)。data_freshnessのプローブも含まれます。
オプション 2:セルフホスト(ソースの透明性)
このパッケージには、api.oneqaz.com/mcp を提供するサーバーコードが含まれています。このコードは、scripts/sync_from_monorepo.py によって OneQAZ モノレポから同期されています(0.5.0 は 2026-10-17 時点のホスト版コードです)。同じ 42 個のツール、17 個のリソース、17 個のテンプレート、4 個のプロンプトが登録されます。また、パッケージ版とホスト版のコードを同じデータベースに対して並行実行すると、get_macro_influence_map を除くすべてのツールとリソースで同じ結果(成功またはエラー)が得られます。つまり、ホスト版の応答を生成するコードを読んで実行できます。異なる点は次のとおりです。
- モノレポのみで利用できるデータパス:
get_macro_influence_mapは構造化エラーを返し、エンティティコンテキストツールはマクロリンクをgapsの下に一覧表示します。これは、ライブのマクロプロファイルテーブルがこのパッケージに含まれていないモノレポモジュールにあるためです。統合リソース内のエージェント履歴の RAG コンテキストも同様に機能が制限されます。 - API キー:ホスト版のキー保存機能は含まれていません。デフォルトでは、すべての呼び出し元が無料として扱われます。キーを独自に検証するには、
MCP_TIER_RESOLVERを設定してください(API キーを使ったセルフホスティングを参照)。 - OAuth アカウント接続(「無料で接続」)は含まれていますが、デフォルトでは無効です(
MCP_OAUTH_MODE、MCP_OAUTH_AS)。ホスト版のアカウントテーブルが必要です。 - ホスト版のみの設定はここでは空欄です。使用状況の分析に使われる運営者自身のトラフィック一覧(
MCP_SELF_TRAFFIC_IPS)は、デフォルトで空です。
pip install oneqaz-trading-mcp
# point it at a OneQAZ-compatible PostgreSQL (TimescaleDB) instance:
export PG_HOST=... PG_PORT=5432 PG_DB=auto_trader PG_USER=... PG_PASSWORD=...
oneqaz-trading-mcp serve # starts at http://localhost:8010
- MCP エンドポイント:
http://localhost:8010/mcp - Python 3.11 および 3.13 で、FastMCP 2.14.7、4.0.11、4.1.0 を使ってテスト済みです(未テストのため FastMCP 3.x は対象外です)。
- サーバーが対応するデータベースは PostgreSQL のみです(以前の SQLite デモ用バックエンドは 0.4.0 で廃止されました。現在、
oneqaz-trading-mcp initは非推奨の通知を表示するだけです)。 接続可能な OneQAZ 互換データベースがなくてもサーバーは起動し、/healthはdegradedを報告しますが、各呼び出しでは接続タイムアウトを待ってから(スキーマごとに約 1 分)、エラーまたは空の結果が返されます。評価には、ライブ APIを使用してください。 - localhost の外部に公開する場合:
127.0.0.1/::1からのリクエストではレート制限とキー確認が省略され、クライアントのアドレスは最初にCF-Connecting-IP/X-Forwarded-Forヘッダーから読み取られます(ホスト版サーバーは Cloudflare の背後で稼働しています)。サーバーを公開する場合は、これらのヘッダーを上書きするプロキシの背後に配置してください。そうしないと、クライアントが自分を localhost として申告できます。
任意の MCP クライアントから接続します。
{
"mcpServers": {
"oneqaz-trading": {
"url": "http://localhost:8010/mcp"
}
}
}
アクセスポリシー
すべてのツールとリソースを無料プランで呼び出せます。 プランによる制限は呼び出し回数を対象としており、呼び出せる機能を制限するものではありません。OneQAZ は B2AI インフラストラクチャであり、AI エージェントがユーザーに OneQAZ を引用する前に信頼性を評価するには、すべての根拠が必要なため、データに有料の壁はありません。これには、ペーパートレーディングのポジション、意思決定ログ、シグナルも含まれます。
| プラン | 認証 | 1 日あたりの上限 | バースト上限 | 備考 |
|---|---|---|---|---|
| free | なし | 1,500 / 日 | 60 / 分 | 42 個すべてのツール + 17 個のリソース + 17 個のテンプレート |
| pro | 有効な API キー | 50,000 / 日 | 200 / 分 | 同じ機能で、利用回数が増加 — ボット/スケジューラー向け |
| internal | オーナーのみ | 無制限 | 無制限 | 実際のユーザー資金を扱うツール用(現在は空) |
ホスト版サーバーが認識しない API キーは、HTTP 401 で拒否されます。黙って無料プランに切り替わることはないため、キーの入力ミスはすぐにわかります。アカウントの作成は任意です。OAuth に対応した AI アプリ(たとえば Claude)では、「無料で接続」を選択して API キーなしで無料の OneQAZ アカウントをリンクできます。その場合、制限はアカウントごとに追跡され、get_account_status はプランと残りの上限を報告します。
すべての応答に、レート制限ヘッダー X-RateLimit-Tier、X-RateLimit-Daily-Limit、X-RateLimit-Daily-Remaining、X-RateLimit-Minute-Remaining が含まれます。上限を超えると、サーバーは Retry-After を付けて HTTP 429 を返します。料金とキーの申請については、https://api.oneqaz.com/pricing をご覧ください。
APIキーを使用したセルフホスト
サーバーをローカルで実行し、pro の呼び出し元(より高いクォータ)を認証する場合は、MCP_TIER_RESOLVER に module:function パスを設定します。
MCP_TIER_RESOLVER=myauth.keystore:resolve_tier oneqaz-trading-mcp serve
この関数は生の API キー文字列を受け取り、"free"、"pro"、"internal"、呼び出し元を free として処理する None、または HTTP 401 でキーを拒否する "invalid"(ホスト型サーバーで不明なキーに対して行う処理と同じ)を返します。リゾルバーをインポートできない場合、または例外が発生した場合は、エラーがログに記録され、呼び出し元は free として処理されます。デフォルトの動作(リゾルバーなし)では、すべての呼び出し元が free です。
すべて無料で提供する理由
OneQAZ の取引データは、自己修正型の Thompson サンプリングシステムによって生成されたペーパートレーディングの証拠です。ユーザー資金に関する PII は一切含まれていません。これをティアの背後に隠すと B2AI ファネルの目的に反します。AI エージェントは、データを利用する前に、私たちの主張(予測精度、シグナル品質、戦略の成果)を検証する必要があるからです。そのため、証拠は公開し、代わりにレート制限を設けています。
アップグレードするかどうかを判断する価値シグナルは、すべての応答の _value_signals に含まれており、AI エージェントは直接読み取れます。
{
"_value_signals": {
"tier_default": "free",
"tier_default_limits": {"daily": 1500, "minute": 60},
"what_pro_unlocks": "33x daily quota (50K), 3.3x burst (200/min) — same tools, higher volume",
"pricing_url": "https://api.oneqaz.com/pricing",
"key_signup_url": "https://api.oneqaz.com/keys",
"self_correcting": true
}
}
応答形式(2つの対象者向け)
ツールの応答には、AI エージェントと人間のエンドユーザーの両方を対象としたフィールドが含まれます。
| フィールド | 対象者 | 目的 |
|---|---|---|
full_data | AI | 信頼性検証のための生の証拠 |
disclaimer, is_investment_advice, is_real_money, data_classification | 両方 | すべての応答に含まれるコンプライアンス情報(false / false / research_information_only) |
paper_trading_notice | 両方 | 取引、ポジション、または損益を含む応答(ホスト型エンドポイントのみ)に表示されます。これらの数値はペーパートレーディングのものであり、実際の資金ではありません |
timestamp, request_id, _source | AI | 応答時刻、問題を報告する際に伝えるリクエスト ID、提供元/データソース |
_contract | AI | ステータス/外部/派生/統合リソースのみ:来歴+エンティティ+評価+信頼度(スキーマバージョン管理)。ツールには含まれません。 |
_llm_summary | AI | 複数行の説明 |
ai_summary | AI | コンテキストウィンドウ向けの1行の圧縮された要約 |
_value_signals | AI | B2AI へのコンバージョン判断に使う価格設定/アップグレードのシグナル |
summary_for_user | 人間 | 専門用語を使わない韓国語の1行要約。Claude.ai などでそのまま引用できます。 |
_next_actions | AI | intent、tool、args、rationale、priority を含む、応答データに応じた次のツールの推奨事項。ツール呼び出しの連鎖を自動的に実行します。 |
_followup_questions_for_user | 人間 | AI がユーザーにそのまま提示できる韓国語の追加質問。クリックすると次の呼び出しが実行されます。 |
会話フック — _next_actions + _followup_questions_for_user
OneQAZ はデータを返すだけではありません。AI に次に何を尋ねるべきかも伝えます。
{
"ai_summary": "Prediction accuracy — 24 cells, avg hit rate 32.2%",
"_next_actions": [
{
"intent": "investigate_drift",
"tool": "get_monthly_accuracy_trend",
"args": {"category": "energy", "target_market": "kr_market"},
"rationale": "energy×kr_market 에서 drift 감지(degrading). 월별 시계열로 추세 검증 필요.",
"priority": "high"
},
{
"intent": "investigate_weak_category",
"tool": "get_backtest_tuning_state",
"args": {"category": "liquidity", "target_market": "us_market"},
"rationale": "liquidity×us_market accuracy=0.06 (sub-50%). 자기보정이 lag/sensitivity 를 어떻게 조정했는지 확인.",
"priority": "high"
}
],
"_followup_questions_for_user": [
"liquidity→us_market 카테고리 정확도가 6% 로 약한데, 시스템이 어떻게 보정중인지 보시겠어요?",
"가장 정확한 credit→us_market (62%) 패턴의 월별 추세도 보여드릴까요?",
"최근 OneQAZ 가 만든 활성 예측 5개도 볼까요?"
]
}
_next_actions— AI エージェント向けです。最大3件の項目を含みます。値を事前入力したargsを含みます。静的な依存関係グラフではなく、応答データに基づきます(例:精度がaccuracy < 0.5 + samples >= 30の場合にのみ、弱いカテゴリの検出が実行されます)。_followup_questions_for_user— エンドユーザー向けです。自然な韓国語で記載されています。そのまま引用するか、翻訳して使えます。
その結果、一般的なセッションは、次に何をすべきか AI が推測しながら7回以上の一般的な呼び出しを行うものから、ドリフト、弱いカテゴリ、合成値と実測値に基づくリーダーボードの比較など、実態を明らかにする4回の的を絞った呼び出しへと変わります。
ツール(ホスト型エンドポイントに42個 — すべて無料ティア)
さらに、get_account_status(接続された OneQAZ アカウントのプランと残りのクォータ。OAuth アカウント接続が有効な場合にのみ登録されます)があります。セルフホストパッケージには同じ42個が登録されます。詳しくはオプション2を参照してください。
エンティティのコンテキスト(3 個のツール)— 0.5.0 で追加
銘柄やコイン、セクター/ETF バスケット、または市場全体について、「X で何が起きていますか?」という質問に 1 回の呼び出しで回答します。各レスポンスでは、まず単独で意味が通る見出し付きの主張を示し、次にエンティティの観測された状態、その前に動くもの(先行・遅行のリンク、マクロおよび構造グループ)、その後に続くもの、タグ付きニュース、そして OneQAZ が追跡していない項目であるギャップを示します。
| ツール | 返される内容 |
|---|---|
get_symbol_context | 1 つの株式またはコイン(ティッカー、KRX コード、または名前):シグナルの状態、その構造グループ、上流リンク、その後に続く同業銘柄、タグ付きニュース、ギャップ。名前が曖昧な場合は推測せず、候補を返します。 |
get_group_context | セクター、テーマ、ETF バスケット、またはインデックスバスケット:各時間間隔のレジーム状態、連動するグループ、最新シグナルのバイアスを含む構成銘柄、バスケットが先行する銘柄、ギャップ。 |
get_market_context | 市場全体(KR、US、暗号資産):構造レジームと世界マクロレジーム、影響すると想定されるマクロカテゴリー(調整済みのラグを含む)、レジーム段階別の市場グループ、市場タグ付きニュース、ギャップ。 |
高頻度のエントリーポイント — get_daily_brief(1 個のツール)
| ツール | 返される内容 |
|---|---|
get_daily_brief | 1 回の呼び出しで市場の概要を返します:マクロレジーム + 強いシグナルの上位 5 件 + 昨日のペーパートレード損益 + アクティブな予測件数 + 韓国語の説明。「今日の市場はどうなっていますか?」と尋ねるときの自然な最初の呼び出しです。 |
検証可能な予測台帳(3 個のツール)— 0.4.0 で追加
| ツール | 返される内容 |
|---|---|
get_ledger_integrity | 予測台帳の改ざん検知:作成または解決されたすべてのマクロレジーム予測行を対象とする、日次の SHA-256 ハッシュチェーンです。正確な正規化手順が公開されているため、第三者が再計算して検証できます。各 UTC 日は終了後に 1 回ハッシュ化され、過去のすべての日に連結されるため、その後に密かに編集すると再計算結果が一致しなくなります。対象範囲にご注意ください。予測期間は 0~24 時間で、多くの予測は作成された当日に解決されるため、このチェーンが証明するのは、日が終了した後に変更がなかったことだけです。各結果の前にハッシュが存在していたことを証明するものではありません。公開アンカーには、OpenTimestamps を介して Bitcoin ブロックチェーン上に追加のタイムスタンプが付与されます(台帳アンカー)。 |
get_resolved_predictions | 行単位の予測台帳の生データ:すべてのマクロレジーム予測の全ライフサイクル(created_at → resolved_at → 結果)を返します。判断ごとの証拠を監査できます。 |
get_trade_outcomes_bulk | 予測 → 取引 → 結果のチェーンをカーソルページネーションで一括エクスポートします(実現損益を含むペーパートレード。各取引は、ベストエフォートで、エントリー前のシグナル予測と同じ銘柄・2 時間の範囲で紐付けられます)。こちらの値を鵜呑みにせず、ご自身で的中率を計算できます。 |
ポートフォリオ分析(1 個のツール)— 0.4.0 で追加
| ツール | 返される内容 |
|---|---|
get_performance_metrics | 市場別およびアカウント種別(paper/live)のポートフォリオレベルの MDD/Sharpe/Sortino/Calmar/勝率。オプションで日次のエクイティカーブも返します。ペーパー損益はグロスです(ローソク足の約定で、手数料やスリッページは含みません)。 |
シグナルのキャリブレーション(1 個のツール)— 0.4.0 で追加
| ツール | 返される内容 |
|---|---|
get_signal_calibration | シグナルの信頼度に関する信頼性図のデータ:信頼度バケットごとの実現的中率と ECE の要約を返します。信頼度 0.9 のシグナルが実際に約 90% 的中するかを検証できます。 |
ChatGPT コネクター標準(2 個のツール)— 0.4.0 で追加
| ツール | 返される内容 |
|---|---|
search | OneQAZ の稼働中の提供機能(ツール、リソース、3 市場すべての最新の強いシグナル)を対象とする、ChatGPT コネクター標準の検索です。結果 ID は fetch で使用できます。 |
fetch | search が返した ID を指定して、単一の結果を取得するコネクター標準のフェッチです。 |
信頼性レイヤー(13 ツール)
| ツール | 戻り値 |
|---|---|
get_prediction_accuracy | セルごとの的中率、持続性ベースおよび多数派クラスベースのベースライン、スキルスコアと自己相関補正済み信頼区間、known_biases、ledger_health |
get_backtest_tuning_state | 現在有効なチューニングパラメーターと最後の再調整のタイムスタンプ |
get_monthly_accuracy_trend | (カテゴリー、対象市場、ラグ)ごとの月次精度系列 — 上記のベースラインと照らし合わせて読み取ります |
get_news_leading_indicator_performance | 未検証 — ニュースイベント分類の網羅範囲。手法の監査中のため、先行時間/スコア指標は非公開です |
get_news_causality_breakdown | 未検証 — パイプラインのニュースラベル(ANTICIPATED / SURPRISE_WITH_PRECURSOR / SURPRISE)ごとの件数。先行指標は非公開です |
get_feature_governance_state | ステータス(OBSERVATION/CONDITIONAL/ACTIVE/DEPRECATED)別の特徴量 |
get_structure_calibration | セクター/ETF レベルの的中率と、数値を読み取るために必要な多数派クラスベースのベースライン — 測定値であり、優位性を主張するものではありません |
get_structure_validation_history | 構造検証スコアの履歴 |
get_strategy_leaderboard | ペーパーテスト済みの RL 戦略。測定対象は per_symbol_leaderboard です(GLOBAL プールには合成値が含まれる場合があります) |
get_active_predictions | 結果を追跡中の現在オープンなマクロ予測 |
get_macro_influence_map | マクロ → 市場の因果仮説(ラグ時間 + 感度) |
get_cross_market_correlation | 市場間相関行列 |
get_role_analysis | 役割ベースの戦略分析 |
シグナルの根拠(3 ツール)
| ツール | パラメーター |
|---|---|
get_signals | market_id、symbol、min_score、max_score、action_filter、interval |
get_signal_detail | market_id、symbol、interval |
explain_decision | market_id、symbol |
レイヤー間の相関 — クロスアセット構造(4 ツール)
agent_history パイプラインからのステージ 2 の出力です。セクタークラスター、マクロ因果グラフ、シンボル間のリード・ラグを提供します。これにより、クロスアセットの状況を踏まえて「BTC が上昇」から「4 時間前に DXY が下落したため BTC が上昇」へと説明できます。
| ツール | 戻り値 |
|---|---|
get_sector_correlations_tool | 市場内 ETF/セクター相関行列 + 自動クラスタリング(60 日ウィンドウ、6 時間ごとに更新) |
get_macro_causality_graph_tool | 8 つのマクロカテゴリー(債券/VIX/外国為替/信用/インフレ/流動性/コモディティ/エネルギー)間のラグを考慮した因果関係 |
get_symbol_peer_links_tool | シンボル間のリード・ラグ(例:META → AMZN、15 分のラグ、ρ=+0.62) |
get_feature_governance_status_tool | 特徴量のライフサイクル分布 + 過去 7 日間のステータス遷移 |
ペーパートレードの結果(11 ツール)
OneQAZ は、自身のシグナルのうちエントリーフィルターを通過した BUY シグナルを使い、継続的にペーパートレードを行います。これらのツールではポジションと結果(損失を含む)を確認できるため、AI エージェントが主張を検証できます。約定はローソク足ベースで、手数料やスリッページはないため、損益は総額です。
| ツール | 戻り値 |
|---|---|
get_positions | ROI 付きのオープン中のペーパーポジション |
get_position_detail | 単一ポジションの詳細分析 |
get_profitable_positions / get_losing_positions | 損益によるフィルタリング |
get_strategy_distribution | 戦略別のポジション数 |
get_trade_history | クローズ済みのペーパートレード(フィルター:アクション、損益、時間) |
analyze_trades | トレードの集計分析 |
get_winning_trades / get_losing_trades | 結果によるフィルタリング |
get_latest_decisions | 最近のシグナル → 判断の遷移 |
get_llm_trading_decisions | LLM が生成した判断ログ |
リソース(静的 17 件 + テンプレート 17 件 — すべて無料プラン)
メタ — 検出とイントロスペクション
| リソース URI | 説明 |
|---|---|
market://meta/discovery | 動的カタログ(v2.0) — FastMCP のイントロスペクションを介した、ツール/リソースの完全な一覧(静的な if/else は使用しません)。data_freshness の PG プローブ(5 つのソーステーブル)、positioning ブロック(specialist_domains、trust_principles、what_we_do_NOT_provide、philosophy)、counts、notes も含まれます。OneQAZ が提供する内容を把握するため、最初にこれを呼び出してください。 |
market://meta/tool-chains | 推奨される呼び出し順序(quick_analysis、deep_analysis、portfolio_check、symbol_deep_dive)と依存関係グラフ。 |
market://meta/pg-pool | psycopg ConnectionPool の統計 — 接続負荷の監視。 |
market://health | サーバーのヘルスチェック。 |
market://info | サーバーのメタデータとデータソースのインデックス。 |
静的リソース
| リソース URI | 説明 |
|---|---|
market://global/summary | 世界のマクロ環境の概要 |
market://global/categories | 利用可能なマクロカテゴリーの一覧 |
market://global/macro_events | 進行中のマクロイベントのライフサイクル |
market://all/summary | 3 市場全体の統合概要 |
market://structure/all | 全市場の ETF/バスケット構成 |
market://indicators/fear-greed | Fear & Greed Index |
market://indicators/regime | 4 層のレジーム指標(Short/Mid/Long/SuperLong) |
market://indicators/context | Fear & Greed、4 層のレジーム、ブレッドス |
market://unified/cross-market | 市場間の相関スナップショット(BTC ↔ 株式 ↔ FX) |
market://derived/event-leading | ニュースイベントの先行グループ — 未検証(スコア項目は非公開) |
market://derived/cross-decoupling | クロスアセットのデカップリング指数 |
market://derived/reaction-speed | ニュースへの反応速度の分布 |
テンプレート(パラメーター化)
| URI テンプレート | 例 |
|---|---|
market://global/category/{category} | market://global/category/bonds |
market://{market_id}/status | market://crypto/status |
market://{market_id}/positions | market://crypto/positions |
market://{market_id}/positions/snapshot | market://crypto/positions/snapshot |
market://{market_id}/structure | market://kr_stock/structure |
market://{market_id}/structure/group/{group_id} | market://kr_stock/structure/group/SEMICONDUCTOR |
market://{market_id}/signals/summary | market://crypto/signals/summary |
market://{market_id}/signals/roles | market://crypto/signals/roles |
market://{market_id}/signals/feedback | market://crypto/signals/feedback |
market://{market_id}/external/summary | market://crypto/external/summary |
market://{market_id}/external/symbol/{symbol} | market://crypto/external/symbol/BTC |
market://{market_id}/external/causality | market://crypto/external/causality |
market://{market_id}/unified | market://crypto/unified |
market://{market_id}/unified/symbol/{symbol} | market://crypto/unified/symbol/BTC |
market://{market_id}/derived/regime-transitions | market://crypto/derived/regime-transitions |
market://{market_id}/derived/strategy-fitness | market://crypto/derived/strategy-fitness |
market://{market_id}/derived/all | market://crypto/derived/all |
market://meta/discovery の template_resources[*].example フィールドはそのままコピーして使用できます — AI はプレースホルダーを手動で埋めなくても、具体的な URI を取得できます。
市場 ID:crypto、kr_stock、us_stock(別名:coin、kr、us)
サンプル:Trust Layer のクエリ
fastmcp 2.14 および 4.0 を使用してライブエンドポイントでテスト済みです(pip install fastmcp)。
import asyncio, json
from fastmcp import Client
async def main():
async with Client("https://api.oneqaz.com/mcp") as client:
result = await client.call_tool("get_prediction_accuracy", {})
resp = json.loads(result.content[0].text)
print(resp["ai_summary"])
for cat, markets in resp["full_data"]["summary"].items():
for market, lags in markets.items():
for lag, cell in lags.items():
if cell.get("horizon_type") != "forecast":
continue # lag 0h cells are same-cycle nowcast checks, not forecasts
lo, hi = cell.get("skill_ci_95") or (float("nan"), float("nan"))
print(f"{cat:12} -> {market:10} {lag:>4} hit {cell['accuracy']:.1%}"
f" persistence {cell.get('persistence_accuracy', float('nan')):.1%}"
f" skill CI [{lo:+.2f}, {hi:+.2f}]"
f" beats majority baseline: {cell.get('beats_majority_baseline')}")
print("edge cells:", len(resp["full_data"]["edge_cells"]))
print(resp["full_data"]["meta"].get("persistence_null_caveat", ""))
print(resp["disclaimer"])
asyncio.run(main())
各予測セルについて、ヒット率の実測値、持続性の帰無値、スキルの信頼区間、および一定の「最も一般的な結果」という推測を上回るかどうかを1行ずつ出力します。
保守的に解釈する場合、スキルの信頼区間の下限が0を上回り、かつ多数派ベースラインも上回るセルだけを根拠として扱います。また、edge_cells を信頼する前に meta.persistence_null_caveat を確認してください。
ai_summary / _llm_summary には、同じ比較が1行で示され、すべてのレスポンスに disclaimer エンベロープが含まれます。
設定
すべての設定は環境変数で行います。
| 変数 | デフォルト | 説明 |
|---|---|---|
MCP_SERVER_PORT | 8010 | サーバーのポート |
MCP_SERVER_HOST | 0.0.0.0 | バインドするホスト |
MCP_LOG_LEVEL | INFO | ログレベル |
MCP_TIER_RESOLVER | 未設定 | API キーに対応する tier を返す module:function(セルフホスト用フック) |
MCP_TRUSTED_IP_PREFIXES | 未設定 | localhost と同様に扱うアドレスプレフィックス(レート制限なし、カンマ区切り) |
MCP_SELF_TRAFFIC_IPS | 未設定 | 利用状況の分析から除外するアドレス(独自の監視用、カンマ区切り) |
MCP_LEDGER_THREAD_DISABLED | 0 | 1 にすると、1時間ごとの予測台帳ハッシュライターを停止します(2つ目のインスタンスで使用) |
MCP_OAUTH_MODE / MCP_OAUTH_AS | off | OAuth アカウント接続。ホスト型アカウントテーブルが必要です |
DB_BACKEND | postgres | postgres を指定する必要があります(SQLite バックエンドは 0.4.0 で廃止)。serve は未設定の場合に値を設定します |
PG_HOST / PG_PORT | postgres / 5432 | PostgreSQL のホスト / ポート |
PG_DB / PG_USER / PG_PASSWORD | auto_trader / … | PostgreSQL のデータベース / 認証情報(読み取り専用ロールで十分です) |
PG_POOL_MIN / PG_POOL_MAX | 0 / 50 | スキーマごとの接続プールの上限と下限 |
PG_STATEMENT_TIMEOUT_MS | 30000 | サーバー側のステートメントタイムアウト |
MCP_COIN_DATA_DIR / MCP_KR_DATA_DIR / MCP_US_DATA_DIR | 自動 | 論理データパスのルートを上書きします(以下を参照) |
MCP_EXTERNAL_CONTEXT_DATA_DIR | 自動 | 外部コンテキストの論理ルートを上書きします |
Docker
docker build -t oneqaz-trading-mcp .
docker run -p 8010:8010 -e DB_BACKEND=postgres -e PG_HOST=... -e PG_PASSWORD=... oneqaz-trading-mcp
データバックエンド(PostgreSQL)
すべてのデータは PostgreSQL 16 + TimescaleDB に保存され、ドメインごとにスキーマが分かれています
(market_coin / market_kr / market_us、market_*_struct、
external_context、rl_pipeline、mcp_analytics、…)。コードは引き続き
従来の SQLite 形式のパス(.../coin_market/data_storage/trading_system.db)を構築しますが、
これらは論理ルーティングキーのみです。connect_readonly() が各パスを
PG スキーマに対応付けてシム接続を返すため、.db ファイルが読み書きされることは
ありません。これは本番環境の Wave-I「PG 専用」移行を反映したもので、
クエリが失敗した場合は、フォールバックして黙って処理を続けるのではなく、明示的にエラーになります。
レート制限
正式なクォータは上記のアクセスポリシーを参照してください。概要は次のとおりです。
| ティア | 1日のクォータ | バースト | 認証 |
|---|---|---|---|
| Free | 1,500 / 日 | 60 / 分 | なし(認識されないキーの場合は HTTP 401) |
| Pro(ベータ) | 50,000 / 日 | 200 / 分 | 有効な API キー |
| Internal(オーナー) | 無制限 | 無制限 | オーナーのみ |
| Local(セルフホスト) | 無制限 | 無制限 | 該当なし |
すべてのリクエストに付与されるレスポンスヘッダー:
X-RateLimit-Tier:解決されたティア(free/pro/internal)X-RateLimit-Daily-Limit:解決されたティアにおける本日の上限X-RateLimit-Daily-Remaining:本日残っているリクエスト数X-RateLimit-Minute-Remaining:今分に残っているリクエスト数- 制限を超過すると、
Retry-Afterヘッダーを含む HTTP 429 が返されます。
プライバシー
- ホスト型サービス(
api.oneqaz.com):正式なポリシーは https://api.oneqaz.com/privacy です。 要約すると、アカウントは不要です(AI アプリを無料の OneQAZ アカウントに接続するかどうかは任意です)。 リクエストごとのメタデータ(IP、ユーザーエージェント、ツール名、結果、許可リストに登録された引数、クライアント/プロトコルの メタデータ、API キーのフィンガープリント、接続した場合はアカウント識別子)が記録されます。 IP アドレスと IP から生成されたセッションキーは、12 か月後に復元不可能な形で置き換えられます。データが販売されることはありません。 - セルフホスト:このパッケージから OneQAZ にテレメトリーが送信されることはなく、リクエストログは ご自身の PostgreSQL に保存されます。
デプロイ環境を公開する場合は、同梱されている
/privacyページをご自身の通知に置き換えてください。
詳細:PRIVACY.md。
免責事項
このソフトウェアは、情報提供および教育のみを目的として提供されています。金融アドバイスではありません。
- すべてのシグナル、レジーム分析、市場データは自動システムによって生成されており、誤りが含まれる場合があります。
- シグナルスコアはリアルタイムの市場価格から算出され、5~15 分ごとに再計算されます。ティック単位のデータではありません。
- 取引、ポジション、損益の数値はペーパートレード(手数料、税金、スリッページを考慮しない、ローソク足ベースの約定シミュレーション)に基づいています。実際の資金による結果は、これより低くなる可能性があります。
- 過去の的中率や実績は、将来の結果を保証するものではありません。
- ご自身の投資判断については、ご自身が単独で責任を負います。 本ソフトウェアの使用によって生じた金銭的損失について、著者および貢献者は責任を負いません。
- 本ソフトウェアは、登録済みの投資顧問、ブローカー・ディーラー、またはファイナンシャルプランナーではありません。
- 投資判断を行う前に、必ずご自身で調査してください(DYOR)。
本ソフトウェアを使用することで、これらの条件を理解し、同意したものとみなされます。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。