mcpField
A
alpha

alpha

github.com/binanceその他1.1k2.0k 回インストール2 日前に更新
リポジトリ

alpha について

Binance Alpha APIを利用するエージェント向けのスキルです。トークン一覧、ティッカー、集約取引、ローソク足データを取得し、JSONで返します。

主な機能

  1. 01Alphaトークン一覧の取得
  2. 0224時間ティッカーの照会
  3. 03集約取引履歴の取得
  4. 04ローソク足データの取得
  5. 05取引所情報の確認

活用シーン

  1. 01Binance Alphaトークン価格の確認
  2. 02トークンの取引と価格推移の分析

インストール

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

$npx skills add https://github.com/binance/binance-skills-hub --skill alpha

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

CHANGELOG.md
LICENSE.md
references/
authentication.md

詳細

Binance Alpha スキル

認証済み API エンドポイントを使用して、Binance の Alpha リクエストを行います。一部のエンドポイントでは API キーとシークレットキーが必要です。結果は JSON 形式で返します。

クイックリファレンス

エンドポイント説明必須任意認証
/bapi/defi/v1/public/alpha-trade/ticker (GET)ティッカー(24 時間の価格統計)symbolなし不要
/bapi/defi/v1/public/alpha-trade/agg-trades (GET)集約取引symbolfromId, startTime, endTime, limit不要
/bapi/defi/v1/public/alpha-trade/get-exchange-info (GET)取引所情報の取得なしなし不要
/bapi/defi/v1/public/alpha-trade/klines (GET)Kline(ローソク足データ)symbol, intervallimit, startTime, endTime不要
/bapi/defi/v1/public/wallet-direct/buw/wallet/cex/alpha/all/token/list (GET)トークン一覧なしなし不要

パラメーター

共通パラメーター
  • symbol: 例:"ALPHA_175USDT" — トークン一覧のトークン ID を使用します
  • fromId: 取得を開始する取引 ID(例:1)
  • startTime: 開始タイムスタンプ(ミリ秒)(例:1623319461670)
  • endTime: 終了タイムスタンプ(ミリ秒)(例:1641782889000)
  • limit: 返す結果の件数(デフォルトは 500、最大 1000)(例:500)
  • interval: 例:"1h" — 対応する間隔:1s、15s、1m、3m、5m、15m、30m、1h、2h、4h、6h、8h、12h、1d、3d、1w、1M

認証

認証が必要なエンドポイントでは、Binance API の認証情報が必要です。 必要な認証情報:

  • apiKey:Binance API キー(ヘッダー用)
  • secretKey:Binance API シークレット(署名用)

ベース URL:

セキュリティ

認証情報の共有

ユーザーはさまざまな方法で Binance API の認証情報を提供できます。エージェントは最初の 2 つの方法で認証情報を自動的に取得しますが、ユーザーは認証情報を設定した、または .env ファイルに保存したことを明示的に伝えることもできます。その場合、エージェントはそのファイルを再読み込みします。最初の 2 つの方法では、エージェントはユーザーの確認なしに HTTP リクエストを送信することもできます。

  1. 環境変数

以下の特定の変数のみを検索してください(環境変数全体を絶対に出力しないでください)。

許可された環境変数

  • Mainnet: BINANCE_API_KEY と BINANCE_SECRET_KEY

生のキーがエージェントのコンテキストに入らないよう、1 回の exec 呼び出しで読み取り、使用します:

KEY="$BINANCE_API_KEY"
SECRET="$BINANCE_SECRET_KEY"

response=$(curl -s -X GET "$URL" \
  -H "X-MBX-APIKEY: $KEY" \
  --data-urlencode "param1=value1")

echo "$response"

環境変数は OpenClaw の起動前に設定する必要があります。起動時にプロセスへ引き継がれ、実行中のインスタンスには注入できません。再起動せずに認証情報を追加または更新する場合は、シークレットファイル(オプション 2 を参照)を使用してください。

  1. シークレットファイル(.env)

~/.openclaw/secrets.env、~/.env、またはワークスペース内の .env ファイルを確認します。ファイル全体を source せず、個別のキーを grep で読み取ってください:

# Try all credential locations in order
API_KEY=$(grep '^BINANCE_API_KEY=' ~/.openclaw/secrets.env 2>/dev/null | cut -d= -f2-)
SECRET_KEY=$(grep '^BINANCE_SECRET_KEY=' ~/.openclaw/secrets.env 2>/dev/null | cut -d= -f2-)

# Fallback: search .env in known directories (KEY=VALUE then raw line format)
for dir in ~/.openclaw ~; do
  [ -n "$API_KEY" ] && break
  env_file="$dir/.env"
  [ -f "$env_file" ] || continue

  # Read first two lines
  line1=$(sed -n '1p' "$env_file")
  line2=$(sed -n '2p' "$env_file")

  # Check if lines contain '=' indicating KEY=VALUE format
  if [[ "$line1" == *=* && "$line2" == *=* ]]; then
    API_KEY=$(grep '^BINANCE_API_KEY=' "$env_file" 2>/dev/null | cut -d= -f2-)
    SECRET_KEY=$(grep '^BINANCE_SECRET_KEY=' "$env_file" 2>/dev/null | cut -d= -f2-)
  else
    # Treat lines as raw values
    API_KEY="$line1"
    SECRET_KEY="$line2"
  fi
done

このファイルは OpenClaw を再起動せずにいつでも更新できます。キーは呼び出しのたびに最新の状態で読み取られます。ユーザーが変数を設定した、または .env ファイルに保存したことを伝えた場合は、そのファイルを再読み込みしてください。

  1. インラインファイル

以下の形式で内容が記載されたファイルを送信します:

abc123...xyz
secret123...key
  • 特定の変数名を指定せずに printenv、env、export、または set を実行しないでください
  • 特定のキー('^VARNAME=')を指定せずに、env ファイルに対して grep を実行しないでください
  • シークレットファイルをシェル環境に読み込まないでください(source .env または . .env)
  • 現在のタスクで明示的に必要な認証情報のみを読み取ってください
  • 生の認証情報を出力や返信に表示または記録しないでください
  • 実際の認証情報が含まれている場合、TOOLS.md をバージョン管理にコミットしないでください — .gitignore に追加してください
API キーとシークレットを開示しない

API キーとシークレットのファイルの場所を絶対に開示しないでください。

API キーとシークレットを Mainnet および Testnet 以外のウェブサイトに絶対に送信しないでください。

完全なシークレットを決して表示しない

ユーザーに認証情報を表示する場合:

  • API キー: 最初の 5 文字 + 最後の 4 文字を表示: su1Qc...8akf
  • シークレットキー: 常にマスクし、最後の 5 文字のみを表示: ***...aws1

認証情報を求められた場合の応答例: Account: main API Key: su1Qc...8akf Secret: ***...aws1

アカウントの一覧表示

アカウントを一覧表示する場合、名前と環境のみを表示します — キーは決して表示しません: Binance Accounts:

  • main (Mainnet)
  • futures-keys (Mainnet)
メインネットでのトランザクション

メインネットでトランザクションを実行する場合、続行する前に必ずユーザーに「CONFIRM」と入力するよう求めて確認を取ってください。


Binance アカウント

main
  • API Key: your_mainnet_api_key
  • Secret: your_mainnet_secret
TOOLS.md の構造
## Binance Accounts

### main
- API Key: abc123...xyz
- Secret: secret123...key
- Description: Primary trading account


### futures-keys
- API Key: futures789...def
- Secret: futuressecret...uvw
- Description: Futures trading account

エージェントの動作

  1. 認証情報の要求: シークレットをマスクする(最後の 5 文字のみを表示)
  2. アカウントの一覧表示: 名前と環境を表示し、キーは決して表示しない
  3. アカウントの選択: 曖昧な場合は確認し、デフォルトで main にする
  4. メインネットでトランザクションを実行する場合、続行する前にユーザーに「CONFIRM」と入力するよう求めて確認を取る
  5. 新しい認証情報: 名前、環境、署名モードの入力を求める

新しいアカウントの追加

ユーザーがインラインファイルまたはメッセージで新しい認証情報を提供した場合:

  • アカウント名を尋ねる
  • マスクされた表示の確認とともに TOOLS.md に保存する

署名リクエスト

署名が必要な取引エンドポイントの場合:

  1. まずキータイプを検出する、署名する前にシークレットキーの形式を検査します。
  2. タイムスタンプ(Unix ms)を含むすべてのパラメータでクエリ文字列を構築します。
  3. RFC 3986 に従って UTF-8 を使用してパラメータをパーセントエンコードします。
  4. アカウントの設定に応じて、HMAC SHA256、RSA、または Ed25519 を使用して secretKey でクエリ文字列に署名します。
  5. クエリ文字列に署名を追加します。
  6. X-MBX-APIKEY ヘッダーを含めます。

それ以外の場合は、手順 4~6 を実行しないでください。

ユーザーエージェントヘッダー

次の文字列で User-Agent ヘッダーを含めます: binance-alpha/1.1.0 (Skill)

実装の詳細については references/authentication.md を参照してください。

コメント