mcpField
C
crypto-trading

crypto-trading

github.com/tradertonその他191 回インストール6 日前に更新
リポジトリ

crypto-trading について

crypto-tradingは、複数の取引所で市場観察、リスク評価、戦略プリセットの選択、取引判断の送信をエージェントに案内するスキルです。シミュレーションと実取引を区別し、実取引への移行はユーザーが操作します。

主な機能

  1. 01市場とトークンの探索
  2. 02口座・ポジション・リスクの確認
  3. 03取引判断の送信
  4. 04戦略プリセットの評価と切り替え
  5. 05paper・shadow・liveモードの案内

活用シーン

  1. 01取引前の市場状況確認
  2. 02ポジションと有効なリスク上限の確認
  3. 03市場データに基づくプリセット比較
  4. 04ウォッチリストによるトークン監視

MCP 対応

このスキルは、市場データ、リスク、口座、ウォッチ、取引判断などのツールをエージェントが利用する手順を説明します。MCPサーバーやクライアントとの関係は明記されていません。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/traderton/skills --skill crypto-trading

インストール後、Claude Code で/crypto-tradingを入力して読み込まれたか確認します。

詳細

以下に説明する取引ツールを使って、さまざまな取引所で暗号資産を取引できます。

暗号資産取引ツールで使用する用語:

  • 実行モード:
    • paper:シミュレーション取引です。注文はシミュレーションによる手数料とスリッページを適用し、市場価格ですぐに約定します。取引所には接続しません。スワップ取引所では価格フィードがないため、このモードはサポートされません。
    • shadow:実際の市場状況に基づくシミュレーション取引です。約定はライブ価格(スワップ取引所では実際の見積もり)を基にシミュレーションされます。実際の注文は発注されず、実際の資金も移動しません。
    • live:実際の資金を使った実取引です。
  • 承認モード:
    • direct:承認された判断は、そのまま実行に進みます。
    • approval_required:承認された判断が記録され、ユーザーに送信されます。ユーザーが /yes <code> または /no <code> と返信するまで、実行されません。
  • 取引所の種類:オーダーブック型の取引所(例:Hyperliquid)では、無期限契約を取引します。スワップ型の取引所(Solana上のJupiter、Base上の1inch)では、DEXアグリゲーターを介してトークン同士をスワップします。
  • 銘柄:ある取引所で取引可能な市場です。同じ資産が、取引所ごとに異なる instrumentId で上場している場合があります。無期限契約の取引所では BTC のようなベースティッカー、スワップ型の取引所では SOL/USDC のようなペアです。find_instrument で解決できます。
  • 無期限契約:資産の価格に連動し、満期のない契約です。ロングポジションは価格上昇時に利益を得て、ショートポジションは価格下落時に利益を得ます。
  • 資金調達率:無期限契約のロングとショートの保有者間で定期的に支払われる金額で、契約価格を資産価格に近づけます。率がプラスの場合はロングがショートに支払い、マイナスの場合はショートがロングに支払います。
  • サイズ:targetSize は基準資産の数量(例:ETH/USDCのETH)であり、ドル換算の金額ではありません。
  • スリッページ:予想価格と約定価格の差です。slippageBps はベーシスポイント単位で、1 bpは0.01%です。
  • 確定損益と未確定損益:確定損益は決済済みの取引による利益または損失で、未確定損益は現在価格で評価した未決済ポジションの損益です。
  • ドローダウン:口座のエクイティがピークから下落した幅です。
  • 1日の損失上限:1日に口座が被る損失の上限です。
  • レジーム:トレンド相場やもみ合い相場など、市場の現在の特性です。check_regime は、EMAの整列、ADX、VWAP、構造フィルターからこれを判定します。

取引を設定するには:

  • 取引を始める前に、取引接続が必要です。ツールが connection.missing で失敗した場合は、list_providers を呼び出し、続いて取引プロバイダーに対して request_connection を呼び出して、ユーザーにリンクを送信してください。ユーザーがリンクから参照される操作を完了すると、処理が再開されます。ユーザーが拒否または期限切れになった場合は、次にどうするかを尋ねてください。
  • 接続が許可されたら、get_account_summary を呼び出し、有効な設定として executionMode と資金を一度ユーザーに伝えてください。新しい設定はテストモード(paper、またはスワップ型の取引所ではshadow)と、デフォルトのシミュレーション資金額で開始します。モードについてほかの記述がある場合でも、get_account_summary の executionMode を優先してください。
  • モードや資金を変更するには、ユーザーがいったん処理を停止し、設定を編集してから再開する必要があります。ユーザーに代わって変更することはできません。
  • 設定が完了した後、およびユーザーがライブ取引への移行を求めたときは、get_funding_info を使用してください。fundingStatus が unfunded の場合は、fundingAddress と network をユーザーに伝えてください。unknown の場合は、まだ残高が確認されておらず、取引を行うと表示されることを伝えてください。
  • ライブ取引は、Webアプリから、またはTelegramで /golive を使ってユーザーが開始します。まず資金状況を伝えてください。自分でライブモードに切り替えてはいけません。

観察して市場の状況を把握するには、次の方法があります:

  • get_market_overview で市場全体の状況を確認できます。
  • check_regime で現在の市場状況を評価できます。
  • get_price で特定の価格を確認できます。
  • get_funding_rates で無期限契約の資金調達状況を確認できます。
  • search_tokens で名前またはシンボルからトークンを検索できます。
  • discover_tokens で取引候補を見つけることができます。 似た名前のツール:
  • get_funding_rates は無期限契約の資金調達率を返します。これは市場の状況を示します。get_funding_info は、取引ウォレットの入金アドレス、ネットワーク、最後に確認された残高を返します。この2つは無関係です。
  • search_tokens は、DEX アグリゲーターで名前またはシンボルからトークンを検索します。discover_tokens は、トレンド中または人気のトークンを一覧表示します。

評価して行動する前に、リスクとポジションを確認するには、次の操作ができます:

  • get_risk_limits を使って、適用されるリスク上限とその根拠を確認します。取引がブロックされている場合(例:1日の損失上限を超過している場合)は、取引を送信しないでください。クールダウンの終了を待ちます。
  • get_account_summary を使って、利用可能な資金、純資産、オープンポジション、損益を取得してから、取引規模を決めます。
  • get_funding_info を使って、ウォレットの入金アドレス、ネットワーク、最後に確認された残高を確認します。
  • get_analytics を使って、最近の取引結果とエクスポージャーを確認します。
  • list_positions を使って、現在のオープンポジションを確認します。
  • watch_token、list_watches、remove_watch、resolve_watch、check_watches を使って、ウォッチベースのモニタリングを管理、確認します。remove_watch を呼び出す前に、resolve_watch を使ってメモまたはシンボルからウォッチ ID を確認します。

判断するには、次の操作ができます:

  • submit_decision を呼び出す前に、find_instrument を使ってシンボル、名前、またはペアから instrumentId を特定します。取引所で絞り込みます(例:Solana の場合は venue="jupiter"、無期限契約の場合は venue="hyperliquid")。
  • submit_decision を使って、特定の金融商品に対する取引意図を送信します。上記の Observe フェーズと Assess フェーズを完了してから呼び出してください。
  • adjust_risk_limits を使って、オペレーターが設定した上限の範囲内で、変更可能な(デフォルト値から導出された)リスク上限を調整します。

戦略プリセットを確認、切り替えるには、次の操作ができます:

  • list_strategy_presets を使って、利用可能なプリセット(キー、名前、説明、戦略タイプ、シグナルの傾向、動作バージョン)を確認します。
  • assess_strategy_preset を使って、1つ以上のシンボルについて算出データを取得します。データには、根拠(レジーム、ボラティリティ、ローソク足の期間)と、各プリセットのスコアカードおよびフラグ(creatorAllowed、evidenceFresh、regimeMatch、signalsVsCurrent)が含まれます。これはデータのみです。推奨や解説はなく、無料です。
  • change_strategy_preset を使って、有効なプリセットを切り替えます。評価アーティファクトを参照し、理由を記載します(理由は確認画面に表示されます)。

評価データの読み方:

  • creatorAllowed が false の場合、作成者のポリシーでそのプリセットが禁止されており、切り替えることはできません。
  • evidenceFresh が false の場合、そのプリセットのスキャン結果が古くなっています。根拠が最新でないプリセットには切り替えないでください。
  • regimeMatch は、プリセットのシグナルの傾向と現在のレジームとの決定論的な適合度です(トレンドフォロー型はトレンド相場に、平均回帰型は不安定なレンジ相場に適しています)。
  • signalsVsCurrent は、プリセットのシグナル数を現在のプリセットのシグナル数で割った値です(現在のプリセットにシグナルがない場合は null)。シグナル数が多いほど適合度が高いわけではありません。多くのシグナルを出すプリセットでも、レジームやリスク許容度との相性が悪い場合があります。

データから明らかに適合度が高いと分かる場合にのみ切り替え、必ず理由を伝えてください(理由は記録され、確認画面に表示されます)。評価とプリセット変更のクールダウンを守ってください。assess_strategy_preset がクールダウンを報告した場合は、再試行する前に nextEligibleAt まで待ちます。

取引についてユーザーに説明する際:

  • ユーザーの多くは初心者です。平易な言葉を使い、専門用語が役立つ場合は、初めて使うときにその用語を示して、平易な言葉で説明します。たとえば、「レバレッジ(自己資金以上の賭けをするための借り入れ。損失が預け入れ額を上回る可能性があります)」のように説明します。
  • リスクや結果は金額で示します。たとえば、パーセンテージや比率だけではなく、「投じた 200 ドルのうち、最大 50 ドルを失う可能性があります」と説明します。
  • ユーザーから求められた場合を除き、1つのメッセージで質問するのは2つまでにします。
  • 1つの質問について判断が必要な場合は、既定の選択肢を推奨し、「はい」と返信すればその選択肢を受け入れられることを伝えます。
  • 選択肢は番号付きリストで示し、ユーザーが番号で返信できるようにします。

コメント