mcpField
S
spot

spot

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

spot について

Binance Spotの公開市場データと、認証が必要なアカウント・取引エンドポイントを照会し、結果をJSONで返すスキルです。価格、注文板、取引、アカウント情報、注文操作を扱い、一部のエンドポイントにはAPI認証が必要です。

主な機能

  1. 01市場価格とティッカー統計
  2. 02注文板と取引履歴の照会
  3. 03アカウント情報と手数料の照会
  4. 04注文の作成・照会・キャンセル
  5. 05注文リストの操作

活用シーン

  1. 01銘柄の現在価格を確認
  2. 02注文板の深さと直近取引を調べる
  3. 03残高と手数料を確認
  4. 04Spot注文を発注または管理

インストール

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

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

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

同梱ファイル

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

CHANGELOG.md
LICENSE.md
references/
authentication.md

詳細

Binance Spot Skill

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

クイックリファレンス

エンドポイント説明必須任意認証
/api/v3/exchangeInfo (GET)取引所情報なしsymbol, symbols, permissions, showPermissionSets, symbolStatusいいえ
/api/v3/ping (GET)接続のテストなしなしいいえ
/api/v3/time (GET)サーバー時刻の確認なしなしいいえ
/api/v3/aggTrades (GET)圧縮/集約取引の一覧symbolfromId, startTime, endTime, limitいいえ
/api/v3/avgPrice (GET)現在の平均価格symbolなしいいえ
/api/v3/depth (GET)オーダーブックsymbollimit, symbolStatusいいえ
/api/v3/historicalTrades (GET)過去の取引の照会symbollimit, fromIdいいえ
/api/v3/klines (GET)Kline/ローソク足データsymbol, intervalstartTime, endTime, timeZone, limitいいえ
/api/v3/ticker (GET)ローリングウィンドウ価格変動統計なしsymbol, symbols, windowSize, type, symbolStatusいいえ
/api/v3/ticker/24hr (GET)24時間ティッカー価格変動統計なしsymbol, symbols, type, symbolStatusいいえ
/api/v3/ticker/bookTicker (GET)銘柄のオーダーブックティッカーなしsymbol, symbols, symbolStatusいいえ
/api/v3/ticker/price (GET)銘柄価格ティッカーなしsymbol, symbols, symbolStatusいいえ
/api/v3/ticker/tradingDay (GET)取引日ティッカーなしsymbol, symbols, timeZone, type, symbolStatusいいえ
/api/v3/trades (GET)最近の取引一覧symbollimitいいえ
/api/v3/uiKlines (GET)UIKlinessymbol, intervalstartTime, endTime, timeZone, limitいいえ
/api/v3/openOrders (DELETE)銘柄のすべての未約定注文をキャンセルsymbolrecvWindowはい
/api/v3/openOrders (GET)現在の未約定注文なしsymbol, recvWindowはい
/api/v3/order (POST)新規注文symbol, side, typetimeInForce, quantity, quoteOrderQty, price, newClientOrderId, strategyId, strategyType, stopPrice, trailingDelta, icebergQty, newOrderRespType, selfTradePreventionMode, pegPriceType, pegOffsetValue, pegOffsetType, recvWindowはい
/api/v3/order (DELETE)注文をキャンセルsymbolorderId, origClientOrderId, newClientOrderId, cancelRestrictions, recvWindowはい
/api/v3/order (GET)注文を照会symbolorderId, origClientOrderId, recvWindowはい
/api/v3/order/amend/keepPriority (PUT)優先順位を維持して注文を変更symbol, newQtyorderId, origClientOrderId, newClientOrderId, recvWindowはい
/api/v3/order/cancelReplace (POST)既存の注文をキャンセルして新規注文を送信symbol, side, type, cancelReplaceModetimeInForce, quantity, quoteOrderQty, price, cancelNewClientOrderId, cancelOrigClientOrderId, cancelOrderId, newClientOrderId, strategyId, strategyType, stopPrice, trailingDelta, icebergQty, newOrderRespType, selfTradePreventionMode, cancelRestrictions, orderRateLimitExceededMode, pegPriceType, pegOffsetValue, pegOffsetType, recvWindowはい
/api/v3/order/oco (POST)新規OCO - 非推奨symbol, side, quantity, price, stopPricelistClientOrderId, limitClientOrderId, limitStrategyId, limitStrategyType, limitIcebergQty, trailingDelta, stopClientOrderId, stopStrategyId, stopStrategyType, stopLimitPrice, stopIcebergQty, stopLimitTimeInForce, newOrderRespType, selfTradePreventionMode, recvWindowはい
/api/v3/order/test (POST)新規注文をテストsymbol, side, typecomputeCommissionRates, timeInForce, quantity, quoteOrderQty, price, newClientOrderId, strategyId, strategyType, stopPrice, trailingDelta, icebergQty, newOrderRespType, selfTradePreventionMode, pegPriceType, pegOffsetValue, pegOffsetType, recvWindowはい
/api/v3/orderList (DELETE)注文リストをキャンセルsymbolorderListId, listClientOrderId, newClientOrderId, recvWindowはい
/api/v3/orderList (GET)注文リストを照会なしorderListId, origClientOrderId, recvWindowはい
/api/v3/orderList/oco (POST)新規注文リスト - OCOsymbol, side, quantity, aboveType, belowTypelistClientOrderId, aboveClientOrderId, aboveIcebergQty, abovePrice, aboveStopPrice, aboveTrailingDelta, aboveTimeInForce, aboveStrategyId, aboveStrategyType, abovePegPriceType, abovePegOffsetType, abovePegOffsetValue, belowClientOrderId, belowIcebergQty, belowPrice, belowStopPrice, belowTrailingDelta, belowTimeInForce, belowStrategyId, belowStrategyType, belowPegPriceType, belowPegOffsetType, belowPegOffsetValue, newOrderRespType, selfTradePreventionMode, recvWindowはい
/api/v3/orderList/opo (POST)新規注文リスト - OPOsymbol, workingType, workingSide, workingPrice, workingQuantity, pendingType, pendingSidelistClientOrderId, newOrderRespType, selfTradePreventionMode, workingClientOrderId, workingIcebergQty, workingTimeInForce, workingStrategyId, workingStrategyType, workingPegPriceType, workingPegOffsetType, workingPegOffsetValue, pendingClientOrderId, pendingPrice, pendingStopPrice, pendingTrailingDelta, pendingIcebergQty, pendingTimeInForce, pendingStrategyId, pendingStrategyType, pendingPegPriceType, pendingPegOffsetType, pendingPegOffsetValue, recvWindowはい
/api/v3/orderList/opoco (POST)新規注文リスト - OPOCOsymbol, workingType, workingSide, workingPrice, workingQuantity, pendingSide, pendingAboveTypelistClientOrderId, newOrderRespType, selfTradePreventionMode, workingClientOrderId, workingIcebergQty, workingTimeInForce, workingStrategyId, workingStrategyType, workingPegPriceType, workingPegOffsetType, workingPegOffsetValue, pendingAboveClientOrderId, pendingAbovePrice, pendingAboveStopPrice, pendingAboveTrailingDelta, pendingAboveIcebergQty, pendingAboveTimeInForce, pendingAboveStrategyId, pendingAboveStrategyType, pendingAbovePegPriceType, pendingAbovePegOffsetType, pendingAbovePegOffsetValue, pendingBelowType, pendingBelowClientOrderId, pendingBelowPrice, pendingBelowStopPrice, pendingBelowTrailingDelta, pendingBelowIcebergQty, pendingBelowTimeInForce, pendingBelowStrategyId, pendingBelowStrategyType, pendingBelowPegPriceType, pendingBelowPegOffsetType, pendingBelowPegOffsetValue, recvWindowはい
/api/v3/orderList/oto (POST)新規注文リスト - OTOsymbol, workingType, workingSide, workingPrice, workingQuantity, pendingType, pendingSide, pendingQuantitylistClientOrderId, newOrderRespType, selfTradePreventionMode, workingClientOrderId, workingIcebergQty, workingTimeInForce, workingStrategyId, workingStrategyType, workingPegPriceType, workingPegOffsetType, workingPegOffsetValue, pendingClientOrderId, pendingPrice, pendingStopPrice, pendingTrailingDelta, pendingIcebergQty, pendingTimeInForce, pendingStrategyId, pendingStrategyType, pendingPegPriceType, pendingPegOffsetType, pendingPegOffsetValue, recvWindowはい
/api/v3/orderList/otoco (POST)新規注文リスト - OTOCOsymbol, workingType, workingSide, workingPrice, workingQuantity, pendingSide, pendingQuantity, pendingAboveTypelistClientOrderId, newOrderRespType, selfTradePreventionMode, workingClientOrderId, workingIcebergQty, workingTimeInForce, workingStrategyId, workingStrategyType, workingPegPriceType, workingPegOffsetType, workingPegOffsetValue, pendingAboveClientOrderId, pendingAbovePrice, pendingAboveStopPrice, pendingAboveTrailingDelta, pendingAboveIcebergQty, pendingAboveTimeInForce, pendingAboveStrategyId, pendingAboveStrategyType, pendingAbovePegPriceType, pendingAbovePegOffsetType, pendingAbovePegOffsetValue, pendingBelowType, pendingBelowClientOrderId, pendingBelowPrice, pendingBelowStopPrice, pendingBelowTrailingDelta, pendingBelowIcebergQty, pendingBelowTimeInForce, pendingBelowStrategyId, pendingBelowStrategyType, pendingBelowPegPriceType, pendingBelowPegOffsetType, pendingBelowPegOffsetValue, recvWindowはい
/api/v3/sor/order (POST)SORを使用した新規注文symbol, side, type, quantitytimeInForce, price, newClientOrderId, strategyId, strategyType, icebergQty, newOrderRespType, selfTradePreventionMode, recvWindowはい
/api/v3/sor/order/test (POST)SORを使用した新規注文のテストsymbol, side, type, quantitycomputeCommissionRates, timeInForce, price, newClientOrderId, strategyId, strategyType, icebergQty, newOrderRespType, selfTradePreventionMode, recvWindowはい
/api/v3/account (GET)アカウント情報なしomitZeroBalances, recvWindowはい
/api/v3/account/commission (GET)手数料率を照会symbolなしはい
/api/v3/allOrderList (GET)すべての注文リストを照会なしfromId, startTime, endTime, limit, recvWindowはい
/api/v3/allOrders (GET)すべての注文symbolorderId, startTime, endTime, limit, recvWindowはい
/api/v3/myAllocations (GET)割り当てを照会symbolstartTime, endTime, fromAllocationId, limit, orderId, recvWindowはい
/api/v3/myFilters (GET)関連するフィルターを照会symbolrecvWindowはい
/api/v3/myPreventedMatches (GET)防止されたマッチを照会symbolpreventedMatchId, orderId, fromPreventedMatchId, limit, recvWindowはい
/api/v3/myTrades (GET)アカウントの取引一覧symbolorderId, startTime, endTime, fromId, limit, recvWindowはい
/api/v3/openOrderList (GET)未約定の注文リストを照会なしrecvWindowはい
/api/v3/order/amendments (GET)注文の変更履歴を照会symbol, orderIdfromExecutionId, limit, recvWindowはい
/api/v3/rateLimit/order (GET)未約定注文数を照会なしrecvWindowはい

Parameters

Common Parameters
  • symbol:照会するシンボル(例:BNBUSDT)
  • symbols:照会するシンボルのリスト
  • permissions:照会する権限のリスト
  • showPermissionSets:permissionSets フィールドの内容を設定するかどうかを制御します。デフォルトは true です(例:true)
  • symbol:(例:BNBUSDT)
  • fromId:集約取引の取得開始 ID(この ID を含みます)。(例:1)
  • startTime:集約取引の取得開始時刻(ミリ秒単位のタイムスタンプ。この時刻を含みます)。(例:1735693200000)
  • endTime:集約取引の取得終了時刻(ミリ秒単位のタイムスタンプ。この時刻を含みます)。(例:1735693200000)
  • limit:デフォルト:500、最大:1000。(例:500)
  • timeZone:デフォルト:0(UTC)
  • recvWindow:値は 60000 を超えることはできません。小数点以下3桁まで指定できるため、マイクロ秒単位で指定できます(例:6000.346)。(例:5000)
  • timestamp:(例:1)
  • quantity:(例:1)
  • quoteOrderQty:(例:1)
  • price:(例:400)
  • newClientOrderId:未約定注文の中で一意の ID です。指定されていない場合は自動生成されます。同じ newClientOrderID を持つ注文は、前の注文が約定済みの場合にのみ受け付けられます。それ以外の場合、注文は拒否されます。
  • strategyId:(例:1)
  • strategyType:値は 1000000 未満にできません。(例:1)
  • stopPrice:STOP_LOSS、STOP_LOSS_LIMIT、TAKE_PROFIT、TAKE_PROFIT_LIMIT 注文で使用します。(例:1)
  • trailingDelta:トレーリングストップ注文の FAQ を参照してください。(例:1)
  • icebergQty:LIMIT、STOP_LOSS_LIMIT、TAKE_PROFIT_LIMIT とともに使用して、アイスバーグ注文を作成します。(例:1)
  • pegOffsetValue:価格をペッグする価格レベル(最大:100)。PeggedOrdersInfo を参照してください(例:1)
  • orderId:(例:1)
  • origClientOrderId:
  • newQty:newQty は 0 より大きく、注文数量未満である必要があります。(例:1)
  • cancelNewClientOrderId:このキャンセルを一意に識別するために使用します。デフォルトでは自動生成されます。
  • cancelOrigClientOrderId:cancelOrderId または cancelOrigClientOrderId のいずれかを送信する必要があります。
    cancelOrderId と cancelOrigClientOrderId の両方のパラメーターが指定された場合、まず cancelOrderId が検索され、その結果の cancelOrigClientOrderId が該当注文と照合されます。
    両方の条件を満たさない場合、リクエストは拒否されます。
  • cancelOrderId:cancelOrderId または cancelOrigClientOrderId のいずれかを送信する必要があります。
    cancelOrderId と cancelOrigClientOrderId の両方のパラメーターが指定された場合、まず cancelOrderId が検索され、その結果の cancelOrigClientOrderId が該当注文と照合されます。
    両方の条件を満たさない場合、リクエストは拒否されます。(例:1)
  • listClientOrderId:注文リスト全体に対する一意の ID
  • quantity:(例:1)
  • limitClientOrderId:指値注文の一意の ID
  • price:(例:1)
  • limitStrategyId:(例:1)
  • limitStrategyType:値は 1000000 未満にできません。(例:1)
  • limitIcebergQty:LIMIT_MAKER のレッグをアイスバーグ注文にするために使用します。(例:1)
  • stopClientOrderId:ストップロス/ストップロス指値レッグの一意の ID
  • stopPrice:(例:1)
  • stopStrategyId:(例:1)
  • stopStrategyType:値は 1000000 未満にできません。(例:1)
  • stopLimitPrice:指定する場合は、stopLimitTimeInForce が必須です。(例:1)
  • stopIcebergQty:STOP_LOSS_LIMIT レッグをアイスバーグ注文にするために使用します。(例:1)
  • computeCommissionRates:デフォルト:false。詳細については、手数料に関する FAQ を参照してください。
  • orderListId:orderListId または listClientOrderId のいずれかを指定する必要があります(例:1)
  • aboveClientOrderId:above 注文に対する、未約定注文の中で任意に指定できる一意の ID です。指定されていない場合は自動生成されます
  • aboveIcebergQty:aboveTimeInForce が GTC の場合にのみ使用できます。(例:1)
  • abovePrice:aboveType が STOP_LOSS_LIMIT、LIMIT_MAKER、TAKE_PROFIT_LIMIT の場合に、指値価格を指定するために使用できます。(例:1)
  • aboveStopPrice:aboveType が STOP_LOSS、STOP_LOSS_LIMIT、TAKE_PROFIT、TAKE_PROFIT_LIMIT の場合に使用できます。aboveStopPrice、aboveTrailingDelta、またはその両方を指定する必要があります。(例:1)
  • aboveTrailingDelta:トレーリングストップ注文の FAQ を参照してください。(例:1)
  • aboveStrategyId:注文ストラテジー内で above 注文を識別する任意の数値です。(例:1)
  • aboveStrategyType:above 注文のストラテジーを識別する任意の数値です。1000000 未満の値は予約済みのため使用できません。(例:1)
  • abovePegOffsetValue:(例:1)
  • belowClientOrderId:below 注文に対する、未約定注文の中で任意に指定できる一意の ID です。指定されていない場合は自動生成されます
  • belowIcebergQty:belowTimeInForce が GTC の場合にのみ使用できます。(例:1)
  • belowPrice:belowType が STOP_LOSS_LIMIT、LIMIT_MAKER、TAKE_PROFIT_LIMIT の場合に、指値価格を指定するために使用できます。(例:1)
  • belowStopPrice:belowType が STOP_LOSS、STOP_LOSS_LIMIT, TAKE_PROFIT、TAKE_PROFIT_LIMIT の場合に使用できます。belowStopPrice、belowTrailingDelta、またはその両方を指定する必要があります。(例:1)
  • belowTrailingDelta:トレーリングストップ注文の FAQ を参照してください。(例:1)
  • belowStrategyId:注文ストラテジー内で below 注文を識別する任意の数値です。(例:1)
  • belowStrategyType:below 注文のストラテジーを識別する任意の数値です。1000000 未満の値は予約済みのため使用できません。(例:1)
  • belowPegOffsetValue:(例:1)
  • workingClientOrderId:working 注文に対する、未約定注文の中で任意に指定できる一意の ID です。指定されていない場合は自動生成されます。
  • workingPrice:(例:1)
  • workingQuantity:working 注文の数量を設定します。(例:1)
  • workingIcebergQty:workingTimeInForce が GTC の場合、または workingType が LIMIT_MAKER の場合にのみ使用できます。(例:1)
  • workingStrategyId:注文ストラテジー内で working 注文を識別する任意の数値です。(例:1)
  • workingStrategyType:working 注文のストラテジーを識別する任意の数値です。1000000 未満の値は予約済みのため使用できません。(例:1)
  • workingPegOffsetValue:(例:1)
  • pendingClientOrderId:pending 注文に対する、未約定注文の中で任意に指定できる一意の ID です。指定されていない場合は自動生成されます。
  • pendingPrice:(例:1)
  • pendingStopPrice:(例:1)
  • pendingTrailingDelta:(例:1)
  • pendingIcebergQty:pendingTimeInForce が GTC の場合、または pendingType が LIMIT_MAKER の場合にのみ使用できます。(例:1)
  • pendingStrategyId:注文ストラテジー内で pending 注文を識別する任意の数値です。(例:1)
  • pendingStrategyType:pending 注文のストラテジーを識別する任意の数値です。1000000 未満の値は予約済みのため使用できません。(例:1)
  • pendingPegOffsetValue:(例:1)
  • pendingAboveClientOrderId:pending above 注文に対する、未約定注文の中で任意に指定できる一意の ID です。指定されていない場合は自動生成されます。
  • pendingAbovePrice:pendingAboveType が STOP_LOSS_LIMIT、LIMIT_MAKER、TAKE_PROFIT_LIMIT の場合に、指値価格を指定するために使用できます。(例:1)
  • pendingAboveStopPrice:pendingAboveType が STOP_LOSS、STOP_LOSS_LIMIT、TAKE_PROFIT、TAKE_PROFIT_LIMIT の場合に使用できます(例:1)
  • pendingAboveTrailingDelta:トレーリングストップの FAQ を参照してください(例:1)
  • pendingAboveIcebergQty:pendingAboveTimeInForce が GTC の場合、または pendingAboveType が LIMIT_MAKER の場合にのみ使用できます。(例:1)
  • pendingAboveStrategyId:注文ストラテジー内で pending above 注文を識別する任意の数値です。(例:1)
  • pendingAboveStrategyType:pending above 注文のストラテジーを識別する任意の数値です。1000000 未満の値は予約済みのため使用できません。(例:1)
  • pendingAbovePegOffsetValue:(例:1)
  • pendingBelowClientOrderId:pending below 注文に対する、未約定注文の中で任意に指定できる一意の ID です。指定されていない場合は自動生成されます。
  • pendingBelowPrice:pendingBelowType が STOP_LOSS_LIMIT または TAKE_PROFIT_LIMIT の場合に、指値価格を指定するために使用できます(例:1)
  • pendingBelowStopPrice:pendingBelowType が STOP_LOSS、STOP_LOSS_LIMIT, TAKE_PROFIT、または TAKE_PROFIT_LIMIT の場合に使用できます。pendingBelowStopPrice、pendingBelowTrailingDelta、またはその両方を指定する必要があります。(例:1)
  • pendingBelowTrailingDelta:(例:1)
  • pendingBelowIcebergQty:pendingBelowTimeInForce が GTC の場合、または pendingBelowType が LIMIT_MAKER の場合にのみ使用できます。(例:1)
  • pendingBelowStrategyId:注文ストラテジー内で pending below 注文を識別する任意の数値です。(例:1)
  • pendingBelowStrategyType:pending below 注文のストラテジーを識別する任意の数値です。1000000 未満の値は予約済みのため使用できません。(例:1)
  • pendingBelowPegOffsetValue:(例:1)
  • pendingQuantity:pending 注文の数量を設定します。(例:1)
  • omitZeroBalances:true に設定すると、アカウントの残高のうちゼロ以外のもののみを返します。デフォルト値:false
  • fromAllocationId:(例:1)
  • timestamp:(例:1)
  • preventedMatchId:(例:1)
  • fromPreventedMatchId:(例:1)
  • orderId:(例:1)
  • fromExecutionId:(例:1)
  • limit:デフォルト:500、最大:1000(例:500)
列挙型
  • interval: 1s | 1m | 3m | 5m | 15m | 30m | 1h | 2h | 4h | 6h | 8h | 12h | 1d | 3d | 1w | 1M
  • windowSize: 1m | 2m | 3m | 4m | 5m | 6m | 7m | 8m | 9m | 10m | 11m | 12m | 13m | 14m | 15m | 16m | 17m | 18m | 19m | 20m | 21m | 22m | 23m | 24m | 25m | 26m | 27m | 28m | 29m | 30m | 31m | 32m | 33m | 34m | 35m | 36m | 37m | 38m | 39m | 40m | 41m | 42m | 43m | 44m | 45m | 46m | 47m | 48m | 49m | 50m | 51m | 52m | 53m | 54m | 55m | 56m | 57m | 58m | 59m | 1h | 2h | 3h | 4h | 5h | 6h | 7h | 8h | 9h | 10h | 11h | 12h | 13h | 14h | 15h | 16h | 17h | 18h | 19h | 20h | 21h | 22h | 23h | 1d | 2d | 3d | 4d | 5d | 6d
  • type: FULL | MINI
  • type: MARKET | LIMIT | STOP_LOSS | STOP_LOSS_LIMIT | TAKE_PROFIT | TAKE_PROFIT_LIMIT | LIMIT_MAKER | NON_REPRESENTABLE
  • selfTradePreventionMode: NONE | EXPIRE_TAKER | EXPIRE_MAKER | EXPIRE_BOTH | DECREMENT | NON_REPRESENTABLE
  • symbolStatus: TRADING | END_OF_DAY | HALT | BREAK | NON_REPRESENTABLE
  • timeInForce: GTC | IOC | FOK | NON_REPRESENTABLE
  • pegPriceType: PRIMARY_PEG | MARKET_PEG | NON_REPRESENTABLE
  • pegOffsetType: PRICE_LEVEL | NON_REPRESENTABLE
  • newOrderRespType: ACK | RESULT | FULL | MARKET | LIMIT
  • cancelRestrictions: ONLY_NEW | NEW | ONLY_PARTIALLY_FILLED | PARTIALLY_FILLED
  • cancelReplaceMode: STOP_ON_FAILURE | ALLOW_FAILURE
  • orderRateLimitExceededMode: DO_NOTHING | CANCEL_ONLY
  • stopLimitTimeInForce: GTC | IOC | FOK
  • side: BUY | SELL
  • aboveType: STOP_LOSS_LIMIT | STOP_LOSS | LIMIT_MAKER | TAKE_PROFIT | TAKE_PROFIT_LIMIT
  • aboveTimeInForce: GTC | IOC | FOK
  • abovePegPriceType: PRIMARY_PEG | MARKET_PEG
  • abovePegOffsetType: PRICE_LEVEL
  • belowType: STOP_LOSS | STOP_LOSS_LIMIT | TAKE_PROFIT | TAKE_PROFIT_LIMIT
  • belowTimeInForce: GTC | IOC | FOK
  • belowPegPriceType: PRIMARY_PEG | MARKET_PEG
  • belowPegOffsetType: PRICE_LEVEL
  • workingType: LIMIT | LIMIT_MAKER
  • workingPegPriceType: PRIMARY_PEG | MARKET_PEG
  • workingPegOffsetType: PRICE_LEVEL
  • pendingPegPriceType: PRIMARY_PEG | MARKET_PEG
  • pendingPegOffsetType: PRICE_LEVEL
  • pendingAboveType: STOP_LOSS_LIMIT | STOP_LOSS | LIMIT_MAKER | TAKE_PROFIT | TAKE_PROFIT_LIMIT
  • pendingAbovePegPriceType: PRIMARY_PEG | MARKET_PEG
  • pendingAbovePegOffsetType: PRICE_LEVEL
  • pendingBelowType: STOP_LOSS | STOP_LOSS_LIMIT | TAKE_PROFIT | TAKE_PROFIT_LIMIT
  • pendingBelowPegPriceType: PRIMARY_PEG | MARKET_PEG
  • pendingBelowPegOffsetType: PRICE_LEVEL
  • workingSide: BUY | SELL
  • workingTimeInForce: GTC | IOC | FOK
  • pendingType: LIMIT | MARKET | STOP_LOSS | STOP_LOSS_LIMIT | TAKE_PROFIT | TAKE_PROFIT_LIMIT | LIMIT_MAKER
  • pendingSide: BUY | SELL
  • pendingTimeInForce: GTC | IOC | FOK
  • pendingAboveTimeInForce: GTC | IOC | FOK
  • pendingBelowTimeInForce: 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
  • Testnet:BINANCE_TESTNET_API_KEY および BINANCE_TESTNET_SECRET_KEY
  • Demo:BINANCE_DEMO_API_KEY および BINANCE_DEMO_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 で個別のキーを読み取ってください。

# 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 キーとシークレットのファイルの場所を決して開示しないでください。

Mainnet と Testnet 以外のウェブサイトに、API キーとシークレットを決して送信しないでください。

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

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

  • 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
  • Testnet:false
testnet-dev
  • API キー:your_testnet_api_key
  • シークレット:your_testnet_secret
  • Testnet: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

エージェントの動作

  1. 認証情報を求められた場合:シークレットをマスクします(末尾 5 文字のみ表示)
  2. アカウントを一覧表示する場合:名前と環境を表示し、キーは決して表示しません
  3. アカウントの選択:曖昧な場合は尋ね、デフォルトでは main を選択します
  4. Mainnet で取引を行う場合は、続行する前に「CONFIRM」と入力するようユーザーに求めて確認します
  5. 新しい認証情報:名前、環境、署名モードを尋ねます
  6. リクエストに署名が必要で、そのリクエストが注文ではなく、API キーが mainnet、testnet、または demo のキーとして説明されていない場合は、ユーザーに尋ねずに、異なるベース URL でリクエストを試し、動作するか確認してください。動作した場合は、対応する環境とともにキーを保存してください。

新しいアカウントの追加

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

  • アカウント名を尋ねます
  • メインネット、テストネット、デモのいずれかを尋ねます
  • 表示をマスキングした確認メッセージとともに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-spot/1.1.0 (Skill)

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

コメント