Tickscope について
Tickscopeは、AIエージェントに公開の暗号資産市場データをリアルタイムおよび過去分で提供する、セルフホスト可能なMCPサーバーです。取引所の価格データにテクニカル指標とチャート構造分析を組み合わせ、APIキーは不要です。
主な機能
- 01取引所のリアルタイム・過去データ
- 0273種類のテクニカル指標とシグナル
- 03ローソク足と市場構造の検出
- 04複数取引所の価格・スプレッド分析
- 05銘柄スクリーニングとマルチタイムフレーム分析
活用シーン
- 01現在価格と直近の取引を確認
- 02取引所間の価格を比較
- 03価格や指標で銘柄を絞り込み
- 04トレンド、ダイバージェンス、サポートを分析
MCP 対応
Tickscopeは、MCPクライアントに市場データツールと、ステータス・監視銘柄・ティッカーのリソースを提供します。取引所のWebSocket接続を維持し、RESTデータも利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Tickscope は、あらゆる MCP クライアント(Claude Code、Cursor、Codex、Gemini CLI、…)にリアルタイムおよび過去の暗号資産市場データを無料で提供する、セルフホスト可能な Model Context Protocol サーバーです。バックグラウンドで取引所との WebSocket 接続を維持するため、エージェントはライブ接続からサブ秒単位で更新される価格を取得できます。同じサーバーで API キーなしに、73 種類のテクニカル指標とチャート構造の認識にも対応します。
⚠️ 教育・研究用ツールです。金融、投資、取引に関する助言は提供せず、データの正確性や適時性も保証しません。
目次
理由
トレーディングエージェントは急増していますが、そのデータレイヤーは分断されたままで、REST ポーリングのみの場合が多く、しばしば有料サービスに制限されています。Tickscope は、1 つのサーバーから複数の取引所のリアルタイムで無料の市場データを API キーなしでエージェントに提供します。
実行例
uv run examples/demo.py # live BTC/USDT walkthrough (no API keys)
uv run examples/demo.py ETH/USDT 4h
ライブの Binance/Bybit/OKX を利用した、色付きターミナルのウォークスルーです。データの鮮度の変化(REST → WebSocket)、シグナル付き指標、ダイバージェンス、市場構造、サポート/レジスタンスを確認できます。上記の GIF を作成する方法は、examples/RECORDING.md を参照してください。
30秒でインストール
uvx tickscope-mcp
クライアントに登録します(Claude Code の例は examples/claude_code_config.json を参照してください)。
{
"mcpServers": {
"tickscope": {
"command": "uvx",
"args": ["tickscope-mcp"],
"env": {
"TICKSCOPE_EXCHANGES": "binance,bybit,okx",
"TICKSCOPE_DEFAULT_EXCHANGE": "binance"
}
}
}
}
Cursor、Codex、Gemini CLI では、それぞれの MCP 設定ファイルで同じ command/args/env の形式を使用します。
対応取引所
| 取引所 | REST | WebSocket |
|---|---|---|
| Binance | ✅ | ✅ |
| Bybit | ✅ | ✅ |
| OKX | ✅ | ✅ |
TICKSCOPE_EXCHANGES を使って、ccxt がサポートする取引所を有効にできます。公開データのみを使用するため、キーは不要です。
ツール
| ツール | 機能 |
|---|---|
list_exchanges | 設定済みの取引所とデフォルト |
list_symbols | 取引可能なシンボル(クオート通貨や検索語で絞り込み) |
get_ticker | 現在の価格スナップショット(主要な価格取得ツール) |
get_recent_trades | ライブバッファーから取得した直近の約定 |
get_ohlcv | 過去のローソク足(DuckDB にキャッシュ) |
get_orderbook | オーダーブックのスナップショットとスプレッド |
compute_indicators | 73 種類のインジケーター(RSI/MACD/Supertrend/WaveTrend/Squeeze/…)と派生シグナル |
detect_divergence | 強気・弱気のレギュラー/ヒドゥンダイバージェンス(価格とオシレーターの比較) |
detect_cross | 任意の 2 つの系列間で Pine スタイルの ta.crossover/ta.crossunder を検出 |
detect_patterns | バイアス付きローソク足パターン(包み足、ハンマー、星形など) |
analyze_structure | マーケット構造:スイング、トレンド、BOS / CHoCH |
find_support_resistance | ピボットからサポート/レジスタンスゾーンをクラスタリング |
deep_analyze | 複数時間足の分析:トレンドの一致度、市場状態のコンテキスト、過去のシグナル成績を踏まえた統合的な判定 |
screen_market | インジケーター/価格フィルターで多数のシンボルをスキャン |
get_aggregated_price | 出来高加重価格と取引所間スプレッド(裁定取引) |
get_funding_rate | 無期限先物の資金調達率 |
watch_symbol | ライブサブスクリプションを事前にウォームアップ(任意) |
get_watched_symbols | アクティブなサブスクリプションとバッファーの状態 |
server_status | ヘルスチェック/診断 |
すべての市場データレスポンスには source(websocket|rest)、age_ms、timestamp が含まれ、データの鮮度を常に検証できます。
インジケーター(73 種類)
- MA/オーバーレイ:
sma ema wma smma dema tema hma vwma zlema alma kama trima lsma vidya t3 vwap vwapbands bbands donchian keltner supertrend ichimoku psar - モメンタム:
rsi stochrsi macd ppo stoch cci willr roc mom tsi ao cmo uo dpo trix coppock kst fisher rvi mfi wavetrend squeeze qqe crsi stc elderray zscore linregslope - ボラティリティ:
atr natr stdev hv chop ulcer massindex - 出来高:
obv adl cmf chaikinosc eom fi pvt vo klinger - トレンド:
adx dmi aroon vortex - 構造:
heikinashi pivots
仕様は "name:p1,p2" で指定し、Pine Script 構文(ta.rsi(14)、ta.ema(20)、ta.wt(10,21)、ta.sqz)にも対応しています。そのため、TradingView のユーザーは使い慣れた式を貼り付けられます。派生シグナルには、買われすぎ/売られすぎの状態、MACD/PPO/WaveTrend/QQE のクロス、オシレーターのゼロラインクロス、Supertrend/PSAR の方向と反転、スクイーズのオン/オフ、DMI/Heikin-Ashi のトレンド、Ichimoku の雲に対する位置が含まれます。暗号資産や Pine の定番指標(WaveTrend、TTM Squeeze、QQE、Connors RSI、Schaff Trend Cycle、VIDYA、T3)も含まれています。新しいインジケーターの追加は、REGISTRY の宣言を 1 行追加するだけです。
構造の認識
数値インジケーターに加えて、Tickscope はチャートで何が起きているかを説明します。detect_patterns はバイアスとともにローソク足パターン(包み足、ハンマー/首吊り線、同時線の各種、明けの明星/宵の明星、赤三兵/三羽烏など)を特定します。analyze_structure は、HH/HL/LH/LL のラベルが付いたスイング高値/安値、推定トレンド、BOS(構造のブレイク)/CHoCH(キャラクターの変化)のイベントを返します(SMC スタイル)。find_support_resistance はスイングピボットを、タッチ回数付きのサポート/レジスタンスゾーンにクラスタリングします。これにより、エージェントはトレーダーと同じようにチャートを説明するための語彙を得られます。
詳細分析
deep_analyze は、エージェントが十数個のツールを連鎖させることなく、1 回の呼び出しでシンボルに関する質問に回答します。次の情報を返します。
- 複数時間足のトレンドの一致状況 — 同じシンボルを 1d/4h/1h の時間足で確認し、時間足間で一致しているか、食い違っているかを示します。
- 市場状態のコンテキスト — 直近の値幅の中での価格の位置(パーセンタイル)、トレンド状態(ADX とカウフマン効率比に基づく
trending_up/trending_down/ranging)、ボラティリティ状態(ATR のパーセンタイルに基づく)を示します。これにより、単独の「RSI 30」を、その数値が現れたときの状況に照らして読み取れます。 - シグナルの過去のパフォーマンス — 現在のダイバージェンスについて、このシンボル/時間足で過去に発生したすべての 確認済み の事例の将来リターン分布(件数、勝率、中央値)を示します。先読みもリペイントもない、厳密に因果性を保ったイベントスタディです。
- 統合された判定 — バイアス、信頼度、時間足間の一致状況、執行時間足の市場状態、明示的な注意事項を、すべて Python で決定論的に計算します。そのため、呼び出し結果がモデルによる生の数値の目視判断に左右されることはありません。
compute_indicators にも同じ市場状態のコンテキストがインラインで含まれるようになりました(ほぼ無料です)。シグナル履歴は確定済みのバーごとにメモ化されるため、ウォーム状態の読み取りも高速です。MCP プロンプトに対応したクライアントでは、これをスラッシュコマンド(/mcp__tickscope__deep_analyze(シンボル + 時間足))として公開し、必要に応じて完全な分析を実行できます。
リソース
対応クライアントは、MCP リソースとしてライブ状態を読み取ることもできます。tickscope://status、tickscope://watched、およびテンプレート tickscope://ticker/{exchange}/{symbol} を利用できます。
プロンプトの例
- 「Binance での BTC/USDT の現在の取引価格と、24 時間の変動率を教えてください。」
- 「この SOL/USDT の状況に注目すべきですか? 複数時間足で詳しく分析してください。」
- 「BTC/USDT 4h に RSI ダイバージェンスはありますか? また、このペアでは過去にこのシグナルはどのような成績でしたか?」
- 「出来高上位 50 の USDT ペアをスクリーニングして、RSI が 30 未満のものを探してください。」
- 「ETH/USDT 4h の主要なサポート/レジスタンスを示し、構造が直近でブレイクしたか(BOS/CHoCH)を教えてください。」
- 「Bybit での BTC の現在の無期限先物の資金調達率を教えてください。過熱していますか?」
- 「Binance、Bybit、OKX の BTC/USDT を比較して、裁定取引の価格差を示してください。」
詳細なレシピ集(詳細分析、シグナルのバックテスト、スクリーニング、モニタリング、戦略チェック)については、examples/demo_prompts.md を参照してください。
設定
すべての設定は環境変数です(.env.example を参照してください)。
| 変数 | デフォルト値 | 説明 |
|---|---|---|
TICKSCOPE_EXCHANGES | binance,bybit,okx | 有効にする取引所(カンマ区切り) |
TICKSCOPE_DEFAULT_EXCHANGE | binance | exchange が省略された場合のデフォルト |
TICKSCOPE_MAX_WATCHED_SYMBOLS | 25 | 同時に購読する WS の最大数(LRU 方式で削除) |
TICKSCOPE_RING_BUFFER_SIZE | 1000 | シンボルごとの取引バッファーサイズ |
TICKSCOPE_OHLCV_CACHE_PATH | ~/.tickscope/ohlcv.duckdb | DuckDB のキャッシュファイル |
TICKSCOPE_OHLCV_CACHE_TTL_S | 60 | 最新のローソク足の鮮度を保つ時間 |
TICKSCOPE_REST_RETRIES | 3 | 一時的な REST エラー(レート制限/ネットワーク)の再試行回数 |
TICKSCOPE_SCREEN_CONCURRENCY | 5 | スクリーニング/集計中に同時処理するシンボルの最大数 |
TICKSCOPE_TRANSPORT | stdio | stdio または http |
TICKSCOPE_LOG_LEVEL | INFO | ログレベル |
開発
uv venv && uv pip install -e ".[dev]"
pytest # ~100 unit + MCP-integration tests (live excluded)
pytest -m live # live exchange tests (Binance/Bybit/OKX, run locally)
ruff check . && mypy # lint + type gates
テストでは、参照値との照合によるインジケーター計算、サービスのキャッシュ/自動監視ロジック、MCP ツールの全呼び出し経路(tests/test_mcp_integration.py では mcp.call_tool を通じてツールを呼び出します)、価格構造の認識、および実際の取引所に対してスタック全体を検証するライブテストスイートをカバーしています。プロジェクトの構成とコントリビューションの進め方については、CONTRIBUTING.md を参照してください。
ロードマップ
- Pine Script 形式のインジケーター対応(
ta.rsi、ta.crossover、…) - 73 種類のインジケーター+ローソク足パターン+マーケット構造(BOS/CHoCH)
- 複数取引所の集約(加重価格/スプレッド)
- 監視対象の銘柄への MCP リソースのプッシュ
- アンカード/セッション VWAP
- 対応取引所の追加(Kraken、Bitget、Gate、…)
- エージェントスキル(
SKILL.md)ラッパー
コントリビューション
Issue と PR を歓迎します。CONTRIBUTING.md と Code of Conduct をご覧ください。依存関係は最小限に保ち、v1 の範囲は読み取り専用(公開データのみ、注文の実行なし、API シークレットなし)としてください。
ライセンス
MIT © Tickscope contributors.
免責事項
このツールは教育および研究目的のみで使用するものです。金融、投資、または取引に関する助言ではありません。市場データは遅延、不完全、または不正確な場合があります。実際の取引判断にこのデータを頼らないでください。各取引所の利用規約とレート制限を遵守してください。SECURITY.md をご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
