mcpField
M
margin-trading

margin-trading

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

margin-trading について

Binance のマージン取引向けエージェントスキルです。口座操作、借入、注文、資金フローの照会に対応し、一部の API には認証情報が必要です。結果は JSON で返します。

主な機能

  1. 01マージン口座と手数料情報の照会
  2. 02借入・返済と履歴の確認
  3. 03注文の作成・照会・キャンセル
  4. 04分離マージン口座とレバレッジの管理
  5. 05資金フロー・利息・清算記録の確認

活用シーン

  1. 01クロスマージンまたは分離マージン口座の状態確認
  2. 02マージンでの資産借入や返済
  3. 03マージン注文の発注やキャンセル

インストール

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

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

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

同梱ファイル

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

CHANGELOG.md
LICENSE.md
references/
authentication.md

詳細

Binance マージン取引スキル

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

クイックリファレンス

Endpoint説明必須任意認証
/sapi/v1/margin/max-leverage (POST)クロスマージンの最大レバレッジを調整(USER_DATA)maxLeverageなしはい
/sapi/v1/margin/isolated/account (DELETE)分離マージンアカウントを無効化(TRADE)symbolrecvWindowはい
/sapi/v1/margin/isolated/account (POST)分離マージンアカウントを有効化(TRADE)symbolrecvWindowはい
/sapi/v1/margin/isolated/account (GET)分離マージンアカウント情報を照会(USER_DATA)なしsymbols, recvWindowはい
/sapi/v1/bnbBurn (GET)BNBバーンのステータスを取得(USER_DATA)なしrecvWindowはい
/sapi/v1/margin/tradeCoeff (GET)マージンアカウントの概要を取得(USER_DATA)なしrecvWindowはい
/sapi/v1/margin/capital-flow (GET)クロス/分離マージンの資金フローを照会(USER_DATA)なしasset, symbol, type, startTime, endTime, fromId, limit, recvWindowはい
/sapi/v1/margin/account (GET)クロスマージンアカウントの詳細を照会(USER_DATA)なしrecvWindowはい
/sapi/v1/margin/crossMarginData (GET)クロスマージン手数料データを照会(USER_DATA)なしvipLevel, coin, recvWindowはい
/sapi/v1/margin/isolated/accountLimit (GET)有効化済みの分離マージンアカウント上限を照会(USER_DATA)なしrecvWindowはい
/sapi/v1/margin/isolatedMarginData (GET)分離マージン手数料データを照会(USER_DATA)なしvipLevel, symbol, recvWindowはい
/sapi/v1/margin/interestHistory (GET)利息履歴を取得(USER_DATA)なしasset, isolatedSymbol, startTime, endTime, current, size, recvWindowはい
/sapi/v1/margin/next-hourly-interest-rate (GET)今後の時間単位の金利を取得(USER_DATA)assets, isIsolatedなしはい
/sapi/v1/margin/borrow-repay (POST)マージンアカウントで借入/返済(MARGIN)asset, isIsolated, symbol, amount, typerecvWindowはい
/sapi/v1/margin/borrow-repay (GET)マージンアカウントの借入/返済記録を照会(USER_DATA)typeasset, isolatedSymbol, txId, startTime, endTime, current, size, recvWindowはい
/sapi/v1/margin/interestRateHistory (GET)マージン金利履歴を照会(USER_DATA)assetvipLevel, startTime, endTime, recvWindowはい
/sapi/v1/margin/maxBorrowable (GET)最大借入可能額を照会(USER_DATA)assetisolatedSymbol, recvWindowはい
/sapi/v1/margin/crossMarginCollateralRatio (GET)クロスマージン担保比率(MARKET_DATA)なしなしいいえ
/sapi/v1/margin/allPairs (GET)すべてのクロスマージンペアを取得(MARKET_DATA)なしsymbolいいえ
/sapi/v1/margin/isolated/allPairs (GET)すべての分離マージンシンボルを取得(MARKET_DATA)なしsymbol, recvWindowいいえ
/sapi/v1/margin/allAssets (GET)すべてのマージン資産を取得(MARKET_DATA)なしassetいいえ
/sapi/v1/margin/delist-schedule (GET)上場廃止スケジュールを取得(MARKET_DATA)なしrecvWindowいいえ
/sapi/v1/margin/limit-price-pairs (GET)指値価格ペアを取得(MARKET_DATA)なしなしいいえ
/sapi/v1/margin/list-schedule (GET)上場スケジュールを取得(MARKET_DATA)なしrecvWindowいいえ
/sapi/v1/margin/risk-based-liquidation-ratio (GET)マージン資産のリスクベース清算比率を取得(MARKET_DATA)なしなしいいえ
/sapi/v1/margin/restricted-asset (GET)マージン制限資産を取得(MARKET_DATA)なしなしいいえ
/sapi/v1/margin/isolatedMarginTier (GET)分離マージンのティアデータを照会(USER_DATA)symboltier, recvWindowはい
/sapi/v1/margin/leverageBracket (GET)クロスマージンProモードの負債コインのレバレッジ段階を照会(MARKET_DATA)なしなしいいえ
/sapi/v1/margin/priceIndex (GET)マージン価格指数を照会(MARKET_DATA)symbolなしいいえ
/sapi/v1/margin/available-inventory (GET)マージンの利用可能な在庫を照会(USER_DATA)typeなしはい
/sapi/v1/margin/listen-key (DELETE)ユーザーデータストリームを終了(USER_STREAM)なしなしいいえ
/sapi/v1/margin/listen-key (PUT)ユーザーデータストリームのキープアライブ(USER_STREAM)listenKeyなしいいえ
/sapi/v1/margin/listen-key (POST)ユーザーデータストリームを開始(USER_STREAM)なしなしいいえ
/sapi/v1/margin/apiKey (POST)特別なキーを作成(低レイテンシ取引)(TRADE)apiNamesymbol, ip, publicKey, permissionMode, recvWindowはい
/sapi/v1/margin/apiKey (DELETE)特別なキーを削除(低レイテンシ取引)(TRADE)なしapiName, symbol, recvWindowはい
/sapi/v1/margin/apiKey (GET)特別なキーを照会(低レイテンシ取引)(TRADE)なしsymbol, recvWindowはい
/sapi/v1/margin/apiKey/ip (PUT)特別なキーのIPを編集(低レイテンシ取引)(TRADE)ipsymbol, recvWindowはい
/sapi/v1/margin/forceLiquidationRec (GET)強制清算記録を取得(USER_DATA)なしstartTime, endTime, isolatedSymbol, current, size, recvWindowはい
/sapi/v1/margin/exchange-small-liability (GET)少額負債交換コインのリストを取得(USER_DATA)なしrecvWindowはい
/sapi/v1/margin/exchange-small-liability (POST)少額負債の交換(MARGIN)assetNamesrecvWindowはい
/sapi/v1/margin/exchange-small-liability-history (GET)少額負債交換履歴を取得(USER_DATA)current, sizestartTime, endTime, recvWindowはい
/sapi/v1/margin/openOrders (DELETE)マージンアカウントの指定シンボルのすべての未約定注文をキャンセル(TRADE)symbolisIsolated, recvWindowはい
/sapi/v1/margin/openOrders (GET)マージンアカウントの未約定注文を照会(USER_DATA)なしsymbol, isIsolated, recvWindowはい
/sapi/v1/margin/orderList (DELETE)マージンアカウントのOCOをキャンセル(TRADE)symbolisIsolated, orderListId, listClientOrderId, newClientOrderId, recvWindowはい
/sapi/v1/margin/orderList (GET)マージンアカウントのOCOを照会(USER_DATA)なしisIsolated, symbol, orderListId, origClientOrderId, recvWindowはい
/sapi/v1/margin/order (DELETE)マージンアカウントの注文をキャンセル(TRADE)symbolisIsolated, orderId, origClientOrderId, newClientOrderId, recvWindowはい
/sapi/v1/margin/order (POST)マージンアカウントに新規注文(TRADE)symbol, side, typeisIsolated, quantity, quoteOrderQty, price, stopPrice, newClientOrderId, icebergQty, newOrderRespType, sideEffectType, timeInForce, selfTradePreventionMode, autoRepayAtCancel, recvWindowはい
/sapi/v1/margin/order (GET)マージンアカウントの注文を照会(USER_DATA)symbolisIsolated, orderId, origClientOrderId, recvWindowはい
/sapi/v1/margin/order/oco (POST)マージンアカウントに新規OCO注文(TRADE)symbol, side, quantity, price, stopPriceisIsolated, listClientOrderId, limitClientOrderId, limitIcebergQty, stopClientOrderId, stopLimitPrice, stopIcebergQty, stopLimitTimeInForce, newOrderRespType, sideEffectType, selfTradePreventionMode, autoRepayAtCancel, recvWindowはい
/sapi/v1/margin/order/oto (POST)マージンアカウントに新規OTO注文(TRADE)symbol, workingType, workingSide, workingPrice, workingQuantity, workingIcebergQty, pendingType, pendingSide, pendingQuantityisIsolated, listClientOrderId, newOrderRespType, sideEffectType, selfTradePreventionMode, autoRepayAtCancel, workingClientOrderId, workingTimeInForce, pendingClientOrderId, pendingPrice, pendingStopPrice, pendingTrailingDelta, pendingIcebergQty, pendingTimeInForceはい
/sapi/v1/margin/order/otoco (POST)マージンアカウントに新規OTOCO注文(TRADE)symbol, workingType, workingSide, workingPrice, workingQuantity, pendingSide, pendingQuantity, pendingAboveTypeisIsolated, sideEffectType, autoRepayAtCancel, listClientOrderId, newOrderRespType, selfTradePreventionMode, workingClientOrderId, workingIcebergQty, workingTimeInForce, pendingAboveClientOrderId, pendingAbovePrice, pendingAboveStopPrice, pendingAboveTrailingDelta, pendingAboveIcebergQty, pendingAboveTimeInForce, pendingBelowType, pendingBelowClientOrderId, pendingBelowPrice, pendingBelowStopPrice, pendingBelowTrailingDelta, pendingBelowIcebergQty, pendingBelowTimeInForceはい
/sapi/v1/margin/manual-liquidation (POST)マージンの手動清算(MARGIN)typesymbol, recvWindowはい
/sapi/v1/margin/rateLimit/order (GET)現在のマージン注文数の使用状況を照会(TRADE)なしisIsolated, symbol, recvWindowはい
/sapi/v1/margin/allOrderList (GET)マージンアカウントのすべてのOCOを照会(USER_DATA)なしisIsolated, symbol, fromId, startTime, endTime, limit, recvWindowはい
/sapi/v1/margin/allOrders (GET)マージンアカウントのすべての注文を照会(USER_DATA)symbolisIsolated, orderId, startTime, endTime, limit, recvWindowはい
/sapi/v1/margin/openOrderList (GET)マージンアカウントの未約定OCOを照会(USER_DATA)なしisIsolated, symbol, recvWindowはい
/sapi/v1/margin/myTrades (GET)マージンアカウントの取引リストを照会(USER_DATA)symbolisIsolated, orderId, startTime, endTime, fromId, limit, recvWindowはい
/sapi/v1/margin/myPreventedMatches (GET)防止されたマッチを照会(USER_DATA)symbolpreventedMatchId, orderId, fromPreventedMatchId, recvWindow, isIsolatedはい
/sapi/v1/margin/api-key-list (GET)特別なキーのリストを照会(低レイテンシ取引)(TRADE)なしsymbol, recvWindowはい
/sapi/v1/margin/transfer (GET)クロスマージンの振替履歴を取得(USER_DATA)なしasset, type, startTime, endTime, current, size, isolatedSymbol, recvWindowはい
/sapi/v1/margin/maxTransferable (GET)最大振替可能額を照会(USER_DATA)assetisolatedSymbol, recvWindowはい

Parameters

Common Parameters
  • maxLeverage: 3、5、または10のみ設定できます。例:Cross Margin ClassicではmaxLeverage = 5または3、Cross Margin Proでは10倍のレバレッジとしてmaxLeverage=10、コンプライアンス上許可される場合は20倍です。
  • symbol:
  • recvWindow: 60000以下(例:5000)
  • asset:
  • symbol: 分離マージンのペア
  • type: 振替タイプ:ROLL_IN、ROLL_OUT
  • startTime: 過去90日分のデータのみ照会できます。(例:1623319461670)
  • endTime: (例:1641782889000)
  • fromId: fromIdが設定されている場合、idがfromIdより大きいデータが返されます。それ以外の場合は、最新のデータが返されます。(例:1)
  • limit: 1回のリクエストで返されるデータレコード数の上限。デフォルト:500、最大:1000。(例:500)
  • vipLevel: vipLevelが省略された場合、ユーザーの現在の該当するマージンデータが返されます(例:1)
  • coin:
  • symbols: 最大5個のシンボルを送信できます。「,」で区切ります。例:"BTCUSDT,BNBUSDT,ADAUSDT"
  • isolatedSymbol: 分離シンボル
  • current: 照会するページ。1から開始します。デフォルト:1(例:1)
  • size: デフォルト:10、最大:100(例:10)
  • assets: 資産のリスト。カンマ区切りで、最大20個まで指定できます
  • isIsolated: 分離マージンかどうか。"TRUE"または"FALSE"
  • asset:
  • isIsolated: 分離マージンの場合はTRUE、クロスマージンの場合はFALSE。デフォルトはFALSEです(例:FALSE)
  • amount:
  • type: MARGIN、ISOLATED
  • txId: POST /sapi/v1/margin/loanのtranId(例:1)
  • tier: tierが省略された場合、すべてのマージン階層データが返されます
  • listenKey:
  • apiName:
  • ip: カンマ区切りで一括追加できます。APIキーあたり最大30個です
  • publicKey: 1. publicKeyを入力すると、RSAまたはEd25519キーが作成されます。 2. URLエンコード形式に変換する必要があります
  • permissionMode: このパラメーターはEd25519 APIキー専用であり、他の暗号化方式には影響しません。値にはTRADE(すべての権限に対するTRADE)またはREAD(USER_DATA、FIX_API_READ_ONLYに対するREAD)を指定できます。デフォルト値はTRADEです。(例:value)
  • apiName:
  • ip: カンマ区切りで一括追加できます。APIキーあたり最大30個です
  • current: 照会するページ。1から開始します。デフォルト:1(例:1)
  • size: デフォルト:10、最大:100(例:10)
  • isIsolated: 分離マージンかどうか。"TRUE"または"FALSE"。デフォルトは"FALSE"です
  • orderListId: orderListIdまたはlistClientOrderIdのいずれかを指定する必要があります(例:1)
  • listClientOrderId: orderListIdまたはlistClientOrderIdのいずれかを指定する必要があります(例:1)
  • newClientOrderId: このキャンセルを一意に識別するために使用します。デフォルトで自動生成されます(例:1)
  • orderId: (例:1)
  • origClientOrderId: (例:1)
  • quantity: (例:1.0)
  • limitClientOrderId: 指値注文の一意のID(例:1)
  • price: (例:1.0)
  • limitIcebergQty: (例:1.0)
  • stopClientOrderId: ストップロス/ストップロス指値レッグの一意のID(例:1)
  • stopPrice: (例:1.0)
  • stopLimitPrice: 指定する場合は、stopLimitTimeInForceが必須です。(例:1.0)
  • stopIcebergQty: (例:1.0)
  • stopLimitTimeInForce: 有効な値はGTC/FOK/IOCです
  • sideEffectType: NO_SIDE_EFFECT、MARGIN_BUY、AUTO_REPAY、AUTO_BORROW_REPAY。デフォルトはNO_SIDE_EFFECTです。詳細はFAQを参照してください(例:NO_SIDE_EFFECT)
  • selfTradePreventionMode: 使用できる列挙値は、シンボルに設定されている内容によって異なります。サポートされる値はEXPIRE_TAKER、EXPIRE_MAKER、EXPIRE_BOTH、NONEです(例:NONE)
  • autoRepayAtCancel: MARGIN_BUYまたはAUTO_BORROW_REPAY注文が有効になった場合に限り、trueは注文のキャンセル後に注文によって発生した負債を返済する必要があることを意味します。デフォルトはtrueです(例:true)
  • workingType: サポートされる値:LIMIT、LIMIT_MAKER
  • workingSide: BUY、SELL
  • workingClientOrderId: working注文の未約定注文間で一意となる任意のIDです。送信されない場合は自動生成されます。(例:1)
  • workingPrice: (例:1.0)
  • workingQuantity: (例:1.0)
  • workingIcebergQty: workingTimeInForceがGTCの場合にのみ使用できます。(例:1.0)
  • workingTimeInForce: GTC、IOC、FOK
  • pendingType: サポートされる値:Order Types。quoteOrderQtyを使用するMARKET注文はサポートされないことに注意してください。(例:Order Types)
  • pendingSide: BUY、SELL
  • pendingClientOrderId: pending注文の未約定注文間で一意となる任意のIDです。送信されない場合は自動生成されます。(例:1)
  • pendingPrice: (例:1.0)
  • pendingStopPrice: (例:1.0)
  • pendingTrailingDelta: (例:1.0)
  • pendingQuantity: (例:1.0)
  • pendingIcebergQty: pendingTimeInForceがGTCの場合にのみ使用できます。(例:1.0)
  • pendingTimeInForce: GTC、IOC、FOK
  • workingIcebergQty: workingTimeInForceがGTCの場合にのみ使用できます。(例:1.0)
  • pendingAboveType: サポートされる値:LIMIT_MAKER、STOP_LOSS、STOP_LOSS_LIMIT
  • pendingAboveClientOrderId: pending above注文の未約定注文間で一意となる任意のIDです。送信されない場合は自動生成されます。(例:1)
  • pendingAbovePrice: (例:1.0)
  • pendingAboveStopPrice: (例:1.0)
  • pendingAboveTrailingDelta: (例:1.0)
  • pendingAboveIcebergQty: pendingAboveTimeInForceがGTCの場合にのみ使用できます。(例:1.0)
  • pendingAboveTimeInForce:
  • pendingBelowType: サポートされる値:LIMIT_MAKER、STOP_LOSS、STOP_LOSS_LIMIT
  • pendingBelowClientOrderId: pending below注文の未約定注文間で一意となる任意のIDです。送信されない場合は自動生成されます。(例:1)
  • pendingBelowPrice: (例:1.0)
  • pendingBelowStopPrice: (例:1.0)
  • pendingBelowTrailingDelta: (例:1.0)
  • pendingBelowIcebergQty: pendingBelowTimeInForceがGTCの場合にのみ使用できます。(例:1.0)
  • pendingBelowTimeInForce:
  • quantity: (例:1.0)
  • quoteOrderQty: (例:1.0)
  • price: (例:1.0)
  • stopPrice: STOP_LOSS、STOP_LOSS_LIMIT、TAKE_PROFIT、TAKE_PROFIT_LIMIT注文で使用します。(例:1.0)
  • icebergQty: LIMIT、STOP_LOSS_LIMIT、TAKE_PROFIT_LIMIT注文でアイスバーグ注文を作成するために使用します。(例:1.0)
  • preventedMatchId: (例:1)
  • fromPreventedMatchId: (例:1)
  • assetNames: 少額負債交換の資産リスト。例:assetNames = BTC,ETH
列挙型
  • side:BUY | SELL
  • newOrderRespType:ACK | RESULT | FULL
  • timeInForce:GTC | IOC | FOK

認証

認証が必要なエンドポイントでは、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 ファイルを確認してください。個別のキーは grep で読み込み、ファイル全体を source してはいけません:

# 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 してはいけません(source .env または . .env)
  • 現在のタスクで明示的に必要な認証情報のみを読み込んでください
  • 生の認証情報を出力や返信に表示したり、ログに記録したりしてはいけません
  • 実際の認証情報が含まれている場合、TOOLS.md をバージョン管理にコミットしてはいけません。.gitignore に追加してください
API キーとシークレットを開示しない

API キーとシークレットファイルの場所を開示してはいけません。

Mainnet と Testnet 以外のウェブサイトに API キーやシークレットを送信してはいけません。

シークレット全体を表示しない

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

  • API キー: 先頭 5 文字と末尾 4 文字を表示します:su1Qc...8akf
  • シークレットキー: 常にマスクし、末尾 5 文字のみを表示します:***...aws1

認証情報を尋ねられた場合の応答例: アカウント:main API キー:su1Qc...8akf シークレット:***...aws1

アカウントの一覧表示

アカウントを一覧表示する際は、名前と環境のみを表示し、キーは決して表示しないでください: Binance アカウント:

  • main(Mainnet)
  • futures-keys(Mainnet)
Mainnet での取引

Mainnet で取引を行う場合は、必ずユーザーに「CONFIRM」と入力して続行するよう求め、実行前に確認を得てください。


Binance アカウント

main
  • API キー:your_mainnet_api_key
  • シークレット: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. Mainnet で取引を行う場合は、実行前にユーザーに「CONFIRM」と入力して続行するよう求め、確認を得てください
  5. 新しい認証情報:名前、環境、署名モードを尋ねます

新しいアカウントの追加

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

  • アカウント名を尋ねます
  • マスクされた表示で確認しながら、TOOLS.md に保存します

リクエストへの署名

署名が必要な取引エンドポイントでは、以下の手順に従ってください。

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

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

新しいクライアント注文 ID

newClientOrderId パラメーターを含むエンドポイントでは、値は必ず agent- で始まる必要があります。パラメーターが指定されていない場合は、agent- の後にランダムな英数字 18 文字を付けた値が自動生成されます。値が指定されている場合は、その値の先頭に agent- が付加されます。

例:agent-1a2b3c4d5e6f7g8h9i

User Agent ヘッダー

次の文字列を指定した User-Agent ヘッダーを含めてください:binance-margin-trading/1.1.0 (Skill)

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

コメント