derivatives-trading-usds-futures について
Binance USDⓈ-M Futures APIを扱うエージェント向けのスキルです。市場データ、口座情報、ポジション、注文操作に対応し、結果をJSONで返します。
主な機能
- 01先物市場データの取得
- 02口座・残高・ポジションの確認
- 03注文の作成・変更・キャンセル
- 04証拠金とポジションモードの管理
- 05資金調達率と取引履歴の取得
活用シーン
- 01先物口座とポジションの確認
- 02価格データを使った先物市場の分析
- 03先物注文の発注や管理
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ binance/ binance-skills-hub --skill derivatives-trading-usds-futuresインストール後、Claude Code で/derivatives-trading-usds-futuresを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
CHANGELOG.mdLICENSE.mdreferences/authentication.md詳細
Binance デリバティブ取引(USDS 先物)スキル
認証済み API エンドポイントを使用して、Binance でデリバティブ取引(USDS 先物)をリクエストします。一部のエンドポイントでは API キーとシークレットキーが必要です。結果は JSON 形式で返します。
クイックリファレンス
| エンドポイント | 説明 | 必須 | 任意 | 認証 |
|---|---|---|---|---|
/fapi/v1/accountConfig (GET) | 先物アカウント設定(USER_DATA) | None | recvWindow | Yes |
/fapi/v2/account (GET) | アカウント情報 V2(USER_DATA) | None | recvWindow | Yes |
/fapi/v3/account (GET) | アカウント情報 V3(USER_DATA) | None | recvWindow | Yes |
/fapi/v2/balance (GET) | 先物アカウント残高 V2(USER_DATA) | None | recvWindow | Yes |
/fapi/v3/balance (GET) | 先物アカウント残高 V3(USER_DATA) | None | recvWindow | Yes |
/fapi/v1/apiTradingStatus (GET) | 先物取引の定量ルール指標(USER_DATA) | None | symbol, recvWindow | Yes |
/fapi/v1/feeBurn (GET) | BNB バーン状況を取得(USER_DATA) | None | recvWindow | Yes |
/fapi/v1/feeBurn (POST) | 先物取引での BNB バーンを切り替え(TRADE) | feeBurn | recvWindow | Yes |
/fapi/v1/multiAssetsMargin (GET) | 現在のマルチアセットモードを取得(USER_DATA) | None | recvWindow | Yes |
/fapi/v1/multiAssetsMargin (POST) | マルチアセットモードを変更(TRADE) | multiAssetsMargin | recvWindow | Yes |
/fapi/v1/positionSide/dual (GET) | 現在のポジションモードを取得(USER_DATA) | None | recvWindow | Yes |
/fapi/v1/positionSide/dual (POST) | ポジションモードを変更(TRADE) | dualSidePosition | recvWindow | Yes |
/fapi/v1/order/asyn (GET) | 先物注文履歴のダウンロード ID を取得(USER_DATA) | startTime, endTime | recvWindow | Yes |
/fapi/v1/trade/asyn (GET) | 先物取引履歴のダウンロード ID を取得(USER_DATA) | startTime, endTime | recvWindow | Yes |
/fapi/v1/income/asyn (GET) | 先物取引履歴のダウンロード ID を取得(USER_DATA) | startTime, endTime | recvWindow | Yes |
/fapi/v1/order/asyn/id (GET) | ID による先物注文履歴のダウンロードリンクを取得(USER_DATA) | downloadId | recvWindow | Yes |
/fapi/v1/trade/asyn/id (GET) | ID による先物取引履歴のダウンロードリンクを取得(USER_DATA) | downloadId | recvWindow | Yes |
/fapi/v1/income/asyn/id (GET) | ID による先物取引履歴のダウンロードリンクを取得(USER_DATA) | downloadId | recvWindow | Yes |
/fapi/v1/income (GET) | 収入履歴を取得(USER_DATA) | None | symbol, incomeType, startTime, endTime, page, limit, recvWindow | Yes |
/fapi/v1/leverageBracket (GET) | 想定元本とレバレッジの段階を取得(USER_DATA) | None | symbol, recvWindow | Yes |
/fapi/v1/rateLimit/order (GET) | ユーザーのレート制限を照会(USER_DATA) | None | recvWindow | Yes |
/fapi/v1/symbolConfig (GET) | シンボル設定(USER_DATA) | None | symbol, recvWindow | Yes |
/fapi/v1/commissionRate (GET) | ユーザーの手数料率(USER_DATA) | symbol | recvWindow | Yes |
/fapi/v1/convert/acceptQuote (POST) | 提示された見積もりを承認(USER_DATA) | quoteId | recvWindow | Yes |
/fapi/v1/convert/exchangeInfo (GET) | すべての交換ペアを一覧表示 | None | fromAsset, toAsset | No |
/fapi/v1/convert/orderStatus (GET) | 注文状況(USER_DATA) | None | orderId, quoteId | Yes |
/fapi/v1/convert/getQuote (POST) | 見積もりリクエストを送信(USER_DATA) | fromAsset, toAsset | fromAmount, toAmount, validTime, recvWindow | Yes |
/fapi/v1/ticker/24hr (GET) | 24 時間のティッカー価格変動統計 | None | symbol | No |
/fapi/v1/symbolAdlRisk (GET) | ADL リスク | None | symbol | No |
/futures/data/basis (GET) | ベーシス | pair, contractType, period, limit | startTime, endTime | No |
/fapi/v1/time (GET) | サーバー時刻を確認 | None | None | No |
/fapi/v1/indexInfo (GET) | 複合インデックスのシンボル情報 | None | symbol | No |
/fapi/v1/aggTrades (GET) | 圧縮/集約取引一覧 | symbol | fromId, startTime, endTime, limit | No |
/fapi/v1/continuousKlines (GET) | 継続契約の Kline/ローソク足データ | pair, contractType, interval | startTime, endTime, limit | No |
/futures/data/delivery-price (GET) | 四半期契約の決済価格 | pair | None | No |
/fapi/v1/exchangeInfo (GET) | 取引所情報 | None | None | No |
/fapi/v1/fundingRate (GET) | 資金調達率の履歴を取得 | None | symbol, startTime, endTime, limit | No |
/fapi/v1/fundingInfo (GET) | 資金調達率情報を取得 | None | None | No |
/fapi/v1/constituents (GET) | インデックス価格の構成銘柄を照会 | symbol | None | No |
/fapi/v1/indexPriceKlines (GET) | インデックス価格の Kline/ローソク足データ | pair, interval | startTime, endTime, limit | No |
/fapi/v1/insuranceBalance (GET) | 保険基金残高のスナップショットを照会 | None | symbol | No |
/fapi/v1/klines (GET) | Kline/ローソク足データ | symbol, interval | startTime, endTime, limit | No |
/futures/data/globalLongShortAccountRatio (GET) | ロング/ショート比率 | symbol, period | limit, startTime, endTime | No |
/fapi/v1/markPriceKlines (GET) | マーク価格の Kline/ローソク足データ | symbol, interval | startTime, endTime, limit | No |
/fapi/v1/premiumIndex (GET) | マーク価格 | None | symbol | No |
/fapi/v1/assetIndex (GET) | マルチアセットモードの資産インデックス | None | symbol | No |
/fapi/v1/historicalTrades (GET) | 過去の取引を検索(MARKET_DATA) | symbol | limit, fromId | No |
/futures/data/openInterestHist (GET) | 未決済建玉の統計 | symbol, period | limit, startTime, endTime | No |
/fapi/v1/openInterest (GET) | 未決済建玉 | symbol | None | No |
/fapi/v1/rpiDepth (GET) | RPI 注文板 | symbol | limit | No |
/fapi/v1/depth (GET) | 注文板 | symbol | limit | No |
/fapi/v1/premiumIndexKlines (GET) | プレミアムインデックスの Kline データ | symbol, interval | startTime, endTime, limit | No |
/fapi/v1/trades (GET) | 最近の取引一覧 | symbol | limit | No |
/fapi/v1/ticker/bookTicker (GET) | シンボルの注文板ティッカー | None | symbol | No |
/fapi/v2/ticker/price (GET) | シンボル価格ティッカー V2 | None | symbol | No |
/fapi/v1/ticker/price (GET) | シンボル価格ティッカー | None | symbol | No |
/futures/data/takerlongshortRatio (GET) | テイカーの買い/売り数量 | symbol, period | limit, startTime, endTime | No |
/fapi/v1/ping (GET) | 接続をテスト | None | None | No |
/futures/data/topLongShortAccountRatio (GET) | トップトレーダーのロング/ショート比率(アカウント) | symbol, period | limit, startTime, endTime | No |
/futures/data/topLongShortPositionRatio (GET) | トップトレーダーのロング/ショート比率(ポジション) | symbol, period | limit, startTime, endTime | No |
/fapi/v1/tradingSchedule (GET) | 取引スケジュール | None | None | No |
/fapi/v1/pmAccountInfo (GET) | 従来型ポートフォリオマージンアカウント情報(USER_DATA) | asset | recvWindow | Yes |
/fapi/v1/userTrades (GET) | アカウント取引一覧(USER_DATA) | symbol | orderId, startTime, endTime, fromId, limit, recvWindow | Yes |
/fapi/v1/allOrders (GET) | すべての注文(USER_DATA) | symbol | orderId, startTime, endTime, limit, recvWindow | Yes |
/fapi/v1/countdownCancelAll (POST) | すべての未決済注文を自動キャンセル(TRADE) | symbol, countdownTime | recvWindow | Yes |
/fapi/v1/algoOrder (DELETE) | アルゴ注文をキャンセル(TRADE) | None | algoId, clientAlgoId, recvWindow | Yes |
/fapi/v1/algoOrder (POST) | 新しいアルゴ注文(TRADE) | algoType, symbol, side, type | positionSide, timeInForce, quantity, price, triggerPrice, workingType, priceMatch, closePosition, priceProtect, reduceOnly, activatePrice, callbackRate, clientAlgoId, newOrderRespType, selfTradePreventionMode, goodTillDate, recvWindow | Yes |
/fapi/v1/algoOrder (GET) | アルゴ注文を照会(USER_DATA) | None | algoId, clientAlgoId, recvWindow | Yes |
/fapi/v1/algoOpenOrders (DELETE) | すべての未決済アルゴ注文をキャンセル(TRADE) | symbol | recvWindow | Yes |
/fapi/v1/allOpenOrders (DELETE) | すべての未決済注文をキャンセル(TRADE) | symbol | recvWindow | Yes |
/fapi/v1/batchOrders (DELETE) | 複数の注文をキャンセル(TRADE) | symbol | orderIdList, origClientOrderIdList, recvWindow | Yes |
/fapi/v1/batchOrders (PUT) | 複数の注文を変更(TRADE) | batchOrders | recvWindow | Yes |
/fapi/v1/batchOrders (POST) | 複数の注文を発注(TRADE) | batchOrders | recvWindow | Yes |
/fapi/v1/order (DELETE) | 注文をキャンセル(TRADE) | symbol | orderId, origClientOrderId, recvWindow | Yes |
/fapi/v1/order (PUT) | 注文を変更(TRADE) | symbol, side, quantity, price | orderId, origClientOrderId, priceMatch, recvWindow | Yes |
/fapi/v1/order (POST) | 新規注文(TRADE) | symbol, side, type | positionSide, timeInForce, quantity, reduceOnly, price, newClientOrderId, newOrderRespType, priceMatch, selfTradePreventionMode, goodTillDate, recvWindow | Yes |
/fapi/v1/order (GET) | 注文を照会(USER_DATA) | symbol | orderId, origClientOrderId, recvWindow | Yes |
/fapi/v1/leverage (POST) | 初期レバレッジを変更(TRADE) | symbol, leverage | recvWindow | Yes |
/fapi/v1/marginType (POST) | マージンタイプを変更(TRADE) | symbol, marginType | recvWindow | Yes |
/fapi/v1/openAlgoOrders (GET) | 現在のすべての未決済アルゴ注文(USER_DATA) | None | algoType, symbol, algoId, recvWindow | Yes |
/fapi/v1/openOrders (GET) | 現在のすべての未決済注文(USER_DATA) | None | symbol, recvWindow | Yes |
/fapi/v1/orderAmendment (GET) | 注文変更履歴を取得(USER_DATA) | symbol | orderId, origClientOrderId, startTime, endTime, limit, recvWindow | Yes |
/fapi/v1/positionMargin/history (GET) | ポジションマージン変更履歴を取得(TRADE) | symbol | type, startTime, endTime, limit, recvWindow | Yes |
/fapi/v1/positionMargin (POST) | 分離ポジションのマージンを変更(TRADE) | symbol, amount, type | positionSide, recvWindow | Yes |
/fapi/v1/order/test (POST) | 注文をテスト(TRADE) | symbol, side, type | positionSide, timeInForce, quantity, reduceOnly, price, newClientOrderId, stopPrice, closePosition, activationPrice, callbackRate, workingType, priceProtect, newOrderRespType, priceMatch, selfTradePreventionMode, goodTillDate, recvWindow | Yes |
/fapi/v1/adlQuantile (GET) | ポジション ADL 分位推定(USER_DATA) | None | symbol, recvWindow | Yes |
/fapi/v2/positionRisk (GET) | ポジション情報 V2(USER_DATA) | None | symbol, recvWindow | Yes |
/fapi/v3/positionRisk (GET) | ポジション情報 V3(USER_DATA) | None | symbol, recvWindow | Yes |
/fapi/v1/allAlgoOrders (GET) | すべてのアルゴ注文を照会(USER_DATA) | symbol | algoId, startTime, endTime, page, limit, recvWindow | Yes |
/fapi/v1/openOrder (GET) | 現在の未決済注文を照会(USER_DATA) | symbol | orderId, origClientOrderId, recvWindow | Yes |
/fapi/v1/stock/contract (POST) | 先物 TradFi 無期限契約(USER_DATA) | None | recvWindow | Yes |
/fapi/v1/forceOrders (GET) | ユーザーの強制注文(USER_DATA) | None | symbol, autoCloseType, startTime, endTime, limit, recvWindow | Yes |
/fapi/v1/listenKey (DELETE) | ユーザーデータストリームを終了(USER_STREAM) | None | None | No |
/fapi/v1/listenKey (PUT) | ユーザーデータストリームを維持(USER_STREAM) | None | None | No |
/fapi/v1/listenKey (POST) | ユーザーデータストリームを開始(USER_STREAM) | None | None | No |
パラメーター
共通パラメーター
- recvWindow: (例:5000)
- symbol:
- startTime: ミリ秒単位のタイムスタンプ(例:1623319461670)
- endTime: ミリ秒単位のタイムスタンプ(例:1641782889000)
- downloadId: download id API で取得します(例:1)
- incomeType: TRANSFER、WELCOME_BONUS、REALIZED_PNL、FUNDING_FEE、COMMISSION、INSURANCE_CLEAR、REFERRAL_KICKBACK、COMMISSION_REBATE、API_REBATE、CONTEST_REWARD、CROSS_COLLATERAL_TRANSFER、OPTIONS_PREMIUM_FEE、OPTIONS_SETTLE_PROFIT、INTERNAL_TRANSFER、AUTO_EXCHANGE、DELIVERED_SETTELMENT、COIN_SWAP_DEPOSIT、COIN_SWAP_WITHDRAW、POSITION_LIMIT_INCREASE_FEE、STRATEGY_UMFUTURES_TRANSFER,FEE_RETURN,BFUSD_REWARD
- startTime: (例:1623319461670)
- endTime: (例:1641782889000)
- page:
- limit: デフォルトは100、最大1000(例:100)
- feeBurn: 「true」:手数料割引オン、「false」:手数料割引オフ
- symbol:
- quoteId: (例:1)
- fromAsset: ユーザーが支払うコイン
- toAsset: ユーザーが受け取るコイン
- orderId: orderId または quoteId のいずれかが必要です(例:1)
- quoteId: orderId または quoteId のいずれかが必要です(例:1)
- fromAsset:
- toAsset:
- fromAmount: 指定した場合、変換後に引き落とされる金額です(例:1.0)
- toAmount: 指定した場合、変換後に入金される金額です(例:1.0)
- validTime: 10s、デフォルトは10s(例:10s)
- pair:
- limit: デフォルトは30、最大500(例:30)
- fromId: 集約取引を取得する開始ID(指定したIDを含みます)。(例:1)
- asset:
- orderId: (例:1)
- countdownTime: カウントダウン時間。1000は1秒です。0を指定するとタイマーをキャンセルします
- algoId: (例:1)
- clientAlgoId: (例:1)
- orderIdList: 最大長10 例:[1234567,2345678]
- origClientOrderIdList: 最大長10 例:["my_id_1","my_id_2"]。二重引用符をエンコードしてください。コンマの後にスペースを入れないでください。
- origClientOrderId: (例:1)
- leverage: 目標初期レバレッジ:1~125の整数
- multiAssetsMargin: 「true」:マルチアセットモード、「false」:シングルアセットモード
- dualSidePosition: 「true」:ヘッジモード、「false」:ワンウェイモード
- algoType:
- type: 1:ポジション証拠金を追加、2:ポジション証拠金を減額
- amount: (例:1.0)
- type:
- batchOrders: 注文リスト。最大5件の注文
- quantity: 注文数量。
closePosition=trueと同時に指定できません(例:1.0) - price: (例:1.0)
- algoType:
CONDITIONALのみサポート - quantity: (例:1.0)
- price: (例:1.0)
- triggerPrice: (例:1.0)
- closePosition:
true、false;全決済。STOP_MARKETまたはTAKE_PROFIT_MARKETと併用します。 - priceProtect: 「TRUE」または「FALSE」。デフォルトは「FALSE」です。
STOP/STOP_MARKETまたはTAKE_PROFIT/TAKE_PROFIT_MARKET注文で使用します。 - reduceOnly: 「true」または「false」。デフォルトは「false」です。ヘッジモードでは指定できません
- activatePrice:
TRAILING_STOP_MARKET注文で使用します。デフォルトは最新価格です(異なるworkingTypeをサポート)(例:1.0) - callbackRate:
TRAILING_STOP_MARKET注文で使用します。最小値は0.1、最大値は5で、1は1%を表します(例:1.0) - goodTillDate:
GTDのtimeInForceにおける注文のキャンセル時刻です。timeInforceにGTDを設定した場合は必須です。注文のタイムスタンプは秒単位の精度でのみ保持され、ミリ秒部分は無視されます。goodTillDate のタイムスタンプは現在時刻に600秒を加えた値より大きく、253402300799000より小さくなければなりません - newClientOrderId: 未約定注文の中で一意のIDです。指定しない場合は自動生成されます。
^[\.A-Z\:/a-z0-9_-]{1,36}$のルールに従う文字列のみ指定できます(例:1) - stopPrice:
STOP/STOP_MARKETまたはTAKE_PROFIT/TAKE_PROFIT_MARKET注文で使用します。(例:1.0) - activationPrice:
TRAILING_STOP_MARKET注文で使用します。デフォルトは最新価格です(異なるworkingTypeをサポート)(例:1.0) - batchOrders: 注文リスト。最大5件の注文
列挙型
- contractType: PERPETUAL | CURRENT_MONTH | NEXT_MONTH | CURRENT_QUARTER | NEXT_QUARTER | PERPETUAL_DELIVERING
- period: 5m | 15m | 30m | 1h | 2h | 4h | 6h | 12h | 1d
- interval: 1m | 3m | 5m | 15m | 30m | 1h | 2h | 4h | 6h | 8h | 12h | 1d | 3d | 1w | 1M
- marginType: ISOLATED | CROSSED
- positionSide: BOTH | LONG | SHORT
- side: BUY | SELL
- priceMatch: NONE | OPPONENT | OPPONENT_5 | OPPONENT_10 | OPPONENT_20 | QUEUE | QUEUE_5 | QUEUE_10 | QUEUE_20
- timeInForce: GTC | IOC | FOK | GTX | GTD | RPI
- workingType: MARK_PRICE | CONTRACT_PRICE
- newOrderRespType: ACK | RESULT
- selfTradePreventionMode: EXPIRE_TAKER | EXPIRE_BOTH | EXPIRE_MAKER
- autoCloseType: LIQUIDATION | ADL
認証
認証が必要なエンドポイントでは、Binance API の認証情報を指定する必要があります。 必要な認証情報:
- apiKey: Binance API キー(ヘッダー用)
- secretKey: Binance API シークレット(署名用)
ベース URL:
- Mainnet: https://fapi.binance.com
- Testnet: https://demo-fapi.binance.com
セキュリティ
認証情報の共有
ユーザーは、さまざまな方法で Binance API の認証情報を提供できます。エージェントは最初の 2 つの方法で認証情報の自動取得を試みますが、ユーザーが認証情報を設定した、または .env ファイルに保存したと明示的に伝えることもできます。その場合、エージェントはそのファイルを再読み込みする必要があります。また、エージェントは最初の 2 つの方法を使って、ユーザーの確認なしに HTTP リクエストを実行できます。
- 環境変数
次の特定の変数のみを検索します(環境変数全体を決して出力しないでください)。
許可された環境変数
- Mainnet:
BINANCE_API_KEYとBINANCE_SECRET_KEY - Testnet:
BINANCE_TESTNET_API_KEYとBINANCE_TESTNET_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 を参照)。
- シークレットファイル(.env)
~/.openclaw/secrets.env、~/.env、またはワークスペース内の .env ファイルを確認します。個々のキーは 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 ファイルに保存したと伝えた場合は、そのファイルを再読み込みしてください。
- ファイルを直接指定
次の形式で内容を記述したファイルを送信します。
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
認証情報を求められた場合の応答例: アカウント:main API キー:su1Qc...8akf シークレット:***...aws1 環境:Mainnet
アカウントの一覧表示
アカウントを一覧表示する際は、名前と環境のみを表示し、キーは決して表示しないでください: Binance アカウント:
- main(Mainnet/Testnet)
- testnet-dev(Testnet)
- futures-keys(Mainnet)
Mainnet での取引
Mainnet で取引を実行する際は、続行する前に必ずユーザーに「CONFIRM」と入力するよう求めて確認してください。
Binance アカウント
main
- API キー:your_mainnet_api_key
- シークレット:your_mainnet_secret
- テストネット:false
testnet-dev
- API キー:your_testnet_api_key
- シークレット:your_testnet_secret
- テストネット:true
TOOLS.md の構成
## Binance Accounts
### main
- API Key: abc123...xyz
- Secret: secret123...key
- Testnet: false
- Description: Primary trading account
### testnet-dev
- API Key: test456...abc
- Secret: testsecret...xyz
- Testnet: true
- Description: Development/testing
### futures-keys
- API Key: futures789...def
- Secret: futuressecret...uvw
- Testnet: false
- Description: Futures trading account
エージェントの動作
- 認証情報を求められた場合:シークレットはマスクし、末尾の5文字のみ表示します
- アカウントを一覧表示する場合:名前と環境を表示し、キーは決して表示しません
- アカウントの選択:曖昧な場合はユーザーに確認し、デフォルトでは main を選択します
- mainnet で取引を行う場合:続行するには「CONFIRM」と入力するようユーザーに確認します
- 新しい認証情報の場合:名前、環境、署名モードを尋ねます
- リクエストに署名が必要で、注文ではなく、API キーが
mainnetまたはtestnetキーとして記述されていない場合は、ユーザーに確認せず、異なるベース URL にリクエストを送信して動作するか試します。動作した場合は、対応する環境とともにキーを保存します。
新しいアカウントの追加
ユーザーがインラインファイルまたはメッセージで新しい認証情報を提供した場合:
- アカウント名を尋ねます
- Mainnet か Testnet かを尋ねます
- マスクされた表示を確認しながら、
TOOLS.mdに保存します
リクエストへの署名
署名が必要な取引エンドポイントの場合:
- まずキーの種類を検出します。署名する前にシークレットキーの形式を確認します。
- タイムスタンプ(Unix ミリ秒)を含むすべてのパラメーターを使って、クエリ文字列を構築します。
- RFC 3986 に従い、UTF-8 を使用してパラメーターをパーセントエンコードします。
- アカウント設定に応じて、secretKey を使用し、HMAC SHA256、RSA、または Ed25519 でクエリ文字列に署名します。
- クエリ文字列に署名を追加します。
X-MBX-APIKEYヘッダーを含めます。
それ以外の場合は、手順4~6を実行しないでください。
新しいクライアント注文 ID
newClientOrderId パラメーターを含むエンドポイントでは、値は必ず agent- で始める必要があります。パラメーターが指定されていない場合は、agent- に続けて18文字のランダムな英数字を自動生成します。値が指定されている場合は、その先頭に agent- を付けます。
例:agent-1a2b3c4d5e6f7g8h9i
User-Agent ヘッダー
次の文字列を含む User-Agent ヘッダーを設定します:binance-derivatives-trading-usds-futures/1.1.0 (Skill)
実装の詳細については、references/authentication.md を参照してください。