查詢可交易產品的規格信息
查詢全站可交易產品的基礎配置規則信息
覆蓋範圍: 現貨 / USDT永續 / USDT交割 / USDC永續 / USDC交割 / 反向合約 / 期權
警告
- 現貨不支持翻頁,因此
limit,cusor無效. - 當通過
baseCoin查詢時, 不管category=linear或inverse, 返回結果中都會包含USDT永續, USDT交割, USDC永續, USDC交割和反向合約的交易對.
HTTP請求
GET /v5/market/instruments-info
請求參數
| 參數 | 是否必需 | 類型 | 說明 |
|---|---|---|---|
| category | true | string | 產品類型. spot,linear,inverse,option |
| symbol | false | string | 合約名稱 |
| symbolType | false | string | 交易對所屬區域:僅对linear,inverse,spot有效 |
| status | false | string | 交易對狀態篩選
|
| baseCoin | false | string | 交易貨幣. 僅對期貨/期權有效 |
| limit | false | integer | 每頁數量限制. [1, 1000]. 默認: 500 |
| cursor | false | string | 游標,用於翻頁 |
響應參數
- Linear/Inverse
- Option
- Spot
| 參數 | 類型 | 說明 |
|---|---|---|
| category | string | 產品類型 |
| nextPageCursor | string | 游標,用於翻頁 |
| list | array | Object |
| > symbol | string | 合約名稱 |
| > contractType | string | 合約類型 |
| > status | string | 合約狀態 |
| > baseCoin | string | 交易幣種 |
| > quoteCoin | string | 報價幣種 |
| > symbolType | string | 交易對所屬區域 |
| > launchTime | string | 發佈時間 (ms) |
| > deliveryTime | string | 交割時間 (ms) |
| > deliveryFeeRate | string | 交割費率. 僅對交割合約有效 |
| > priceScale | string | 價格精度 |
| > leverageFilter | Object | 槓桿屬性 |
| >> minLeverage | string | 最小槓桿 |
| >> maxLeverage | string | 最大槓桿 |
| >> leverageStep | string | 修改槓桿的步長 |
| > priceFilter | Object | 價格屬性 |
| >> minPrice | string | 訂單最小價格 |
| >> maxPrice | string | 訂單最大價格 |
| >> tickSize | string | 修改價格的步長 |
| > lotSizeFilter | Object | 訂單數量屬性 |
| >> maxOrderQty | string | 單筆限價或PostOnly單最大下單量 |
| >> maxMktOrderQty | string | 單筆市價單最大下單量 |
| >> minOrderQty | string | 單筆訂單最小下單量 |
| >> qtyStep | string | 修改下單量的步長 |
| >> postOnlyMaxOrderQty | string | 已廢棄, 請參照maxOrderQty |
| >> minNotionalValue | string | 訂單最小名義價值 |
| > unifiedMarginTrade | boolean | 是否支持統一保證金交易 |
| > fundingInterval | integer | 資金費率結算週期 (分鐘) |
| > settleCoin | string | 結算幣種 |
| > copyTrading | string | 當前交易對是否支持帶單交易 |
| > upperFundingRate | string | 資金費率上限 |
| > lowerFundingRate | string | 資金費率下限 |
| > displayName | string | 網頁或APP端展示的USDC永續和交割合約的名稱 |
| > forbidUplWithdrawal | boolean | 是否禁止浮盈提現 |
| > riskParameters | object | 限價單價格風控參數, 參讀該公告內容 |
| >> priceLimitRatioX | string | 參數X |
| >> priceLimitRatioY | string | 參數Y |
| > isPreListing | boolean | |
| > preListingInfo | object | |
| >> curAuctionPhase | string | 當前的盤前階段 |
| >> phases | array<object> | 每個階段的時間信息 |
| >>> phase | string | 盤前交易階段 |
| >>> startTime | string | 該階段的開始時間戳(毫秒) |
| >>> endTime | string | 該階段的結束時間戳(毫秒) |
| >> auctionFeeInfo | object | 盤前交易手續費率信息 |
| >>> auctionFeeRate | string | 集合競價期間的手續費率 |
| >>> takerFeeRate | string | 連續競價期間的吃單成交手續費率 |
| >>> makerFeeRate | string | 連續競價期間的掛單成交手續費率 |
| 參數 | 類型 | 說明 |
|---|---|---|
| category | string | 產品類型 |
| nextPageCursor | string | 游標,用於翻頁 |
| list | array | Object |
| > symbol | string | 合約名稱 |
| > optionsType | string | 期權類型. Call,Put |
| > status | string | 合約狀態 |
| > baseCoin | string | 交易幣種 |
| > quoteCoin | string | 報價幣種 |
| > settleCoin | string | 結算幣種 |
| > launchTime | string | 發佈時間 (ms) |
| > deliveryTime | string | 交割時間 (ms) |
| > deliveryFeeRate | string | 交割費率 |
| > priceFilter | Object | 價格屬性 |
| >> minPrice | string | 最小訂單價格 |
| >> maxPrice | string | 最大訂單價格 |
| >> tickSize | string | 修改訂單價格的步長 |
| > lotSizeFilter | Object | 訂單量屬性 |
| >> maxOrderQty | string | 單筆訂單最大下單量 |
| >> minOrderQty | string | 單筆訂單最小下單量 |
| >> qtyStep | string | 修改下單量的步長 |
| > displayName | Object | 網頁或APP端展示的期權名稱 |
| 參數 | 類型 | 說明 |
|---|---|---|
| category | string | 產品類型 |
| list | array | Object |
| > symbol | string | 合約名稱 |
| > baseCoin | string | 交易幣種 |
| > quoteCoin | string | 報價幣種 |
| > innovation | string | 已廢棄, 請參照symbolType |
| > symbolType | string | 交易對所屬區域 |
| > status | string | 合約狀態 |
| > marginTrading | string | 該幣對是否支持槓桿交易
|
| > stTag | string | 幣對是否存在特殊處理(ST)標籤. 0: 否, 1: 是 |
| > lotSizeFilter | Object | 數量屬性 |
| >> basePrecision | string | 交易幣種精度 |
| >> quotePrecision | string | 報價幣種精度 |
| >> minOrderQty | string | 單筆訂單最小下單量, 已廢棄, 不再檢查minOrderQty,而是檢查minOrderAmt |
| >> maxOrderQty | string | 單筆訂單最大下單量, 已廢棄, 請基於訂單類型參考maxLimitOrderQty, maxMarketOrderQty |
| >> minOrderAmt | string | 單筆訂單最小訂單額 |
| >> maxOrderAmt | string | 單筆訂單最大訂單額, 已廢棄, 不再檢查 maxOrderAmt,而是檢查 maxLimitOrderQty 和 maxMarketOrderQty |
| >> maxLimitOrderQty | string | 單筆限價訂單最大下單量
|
| string | 單筆市價訂單最大下單量 | |
| > priceFilter | Object | 價格屬性 |
| >> tickSize | string | 修改訂單的步長 |
| > riskParameters | Object | 限價單價格風控參數, 參讀該公告內容 |
| >> priceLimitRatioX | string | 參數 X |
| >> priceLimitRatioY | string | 參數 Y |
請求示例
- Linear
- Option
- Spot
- HTTP
- Python
- Go
- Java
- Node.js
GET /v5/market/instruments-info?category=linear&symbol=BTCUSDT HTTP/1.1
Host: api-testnet.bybit.com
from pybit.unified_trading import HTTP
session = HTTP(testnet=True)
print(session.get_instruments_info(
category="linear",
symbol="BTCUSDT",
))
import (
"context"
"fmt"
bybit "github.com/bybit-exchange/bybit.go.api"
)
client := bybit.NewBybitHttpClient("", "", bybit.WithBaseURL(bybit.TESTNET))
params := map[string]interface{}{"category": "linear", "symbol": "BTCUSDT"}
client.NewUtaBybitServiceWithParams(params).GetInstrumentInfo(context.Background())
import com.bybit.api.client.domain.CategoryType;
import com.bybit.api.client.domain.market.*;
import com.bybit.api.client.domain.market.request.MarketDataRequest;
import com.bybit.api.client.service.BybitApiClientFactory;
var client = BybitApiClientFactory.newInstance().newAsyncMarketDataRestClient();
var instrumentInfoRequest = MarketDataRequest.builder().category(CategoryType.LINEAR).symbol("BTCUSDT").instrumentStatus(InstrumentStatus.TRADING).limit(500).build();
client.getInstrumentsInfo(instrumentInfoRequest,System.out::println);
const { RestClientV5 } = require('bybit-api');
const client = new RestClientV5({
testnet: true,
});
client
.getInstrumentsInfo({
category: 'linear',
symbol: 'BTCUSDT',
})
.then((response) => {
console.log(response);
})
.catch((error) => {
console.error(error);
});
- HTTP
- Python
- Go
- Java
- Node.js
GET /v5/market/instruments-info?category=option&symbol=ETH-3JAN23-1250-P HTTP/1.1
Host: api-testnet.bybit.com
from pybit.unified_trading import HTTP
session = HTTP(testnet=True)
print(session.get_instruments_info(
category="option",
symbol="ETH-3JAN23-1250-P",
))
import (
"context"
"fmt"
bybit "github.com/bybit-exchange/bybit.go.api"
)
client := bybit.NewBybitHttpClient("", "", bybit.WithBaseURL(bybit.TESTNET))
params := map[string]interface{}{"category": "option", "symbol": "ETH-3JAN23-1250-P"}
client.NewUtaBybitServiceWithParams(params).GetInstrumentInfo(context.Background())
import com.bybit.api.client.domain.CategoryType;
import com.bybit.api.client.domain.market.*;
import com.bybit.api.client.domain.market.request.MarketDataRequest;
import com.bybit.api.client.service.BybitApiClientFactory;
var client = BybitApiClientFactory.newInstance().newAsyncMarketDataRestClient();
var instrumentInfoRequest = MarketDataRequest.builder().category(CategoryType.OPTION).symbol("ETH-3JAN23-1250-P").instrumentStatus(InstrumentStatus.TRADING).limit(500).build();
client.getInstrumentsInfo(instrumentInfoRequest,System.out::println);
const { RestClientV5 } = require('bybit-api');
const client = new RestClientV5({
testnet: true,
});
client
.getInstrumentsInfo({
category: 'option',
symbol: 'ETH-3JAN23-1250-P',
})
.then((response) => {
console.log(response);
})
.catch((error) => {
console.error(error);
});
- HTTP
- Python
- Go
- Java
- Node.js
GET /v5/market/instruments-info?category=spot&symbol=BTCUSDT HTTP/1.1
Host: api-testnet.bybit.com
from pybit.unified_trading import HTTP
session = HTTP(testnet=True)
print(session.get_instruments_info(
category="spot",
symbol="BTCUSDT",
))
import (
"context"
"fmt"
bybit "github.com/bybit-exchange/bybit.go.api"
)
client := bybit.NewBybitHttpClient("", "", bybit.WithBaseURL(bybit.TESTNET))
params := map[string]interface{}{"category": "spot", "symbol": "BTCUSDT"}
client.NewUtaBybitServiceWithParams(params).GetInstrumentInfo(context.Background())
import com.bybit.api.client.domain.*;
import com.bybit.api.client.domain.market.*;
import com.bybit.api.client.domain.market.request.*;
import com.bybit.api.client.service.BybitApiClientFactory;
var client = BybitApiClientFactory.newInstance().newAsyncMarketDataRestClient();
var instrumentInfoRequest = MarketDataRequest.builder().category(CategoryType.SPOT).symbol("BTCUSDT").instrumentStatus(InstrumentStatus.TRADING).limit(500).build();
client.getInstrumentsInfo(instrumentInfoRequest,System.out::println);
const { RestClientV5 } = require('bybit-api');
const client = new RestClientV5({
testnet: true,
});
client
.getInstrumentsInfo({
category: 'spot',
symbol: 'BTCUSDT',
})
.then((response) => {
console.log(response);
})
.catch((error) => {
console.error(error);
});
響應示例
- Linear
- Option
- Spot
{
"retCode": 0,
"retMsg": "OK",
"result": {
"category": "linear",
"list": [
{
"symbol": "BTCUSDT",
"contractType": "LinearPerpetual",
"status": "Trading",
"baseCoin": "BTC",
"quoteCoin": "USDT",
"launchTime": "1585526400000",
"deliveryTime": "0",
"deliveryFeeRate": "",
"priceScale": "2",
"leverageFilter": {
"minLeverage": "1",
"maxLeverage": "100.00",
"leverageStep": "0.01"
},
"priceFilter": {
"minPrice": "0.10",
"maxPrice": "1999999.80",
"tickSize": "0.10"
},
"lotSizeFilter": {
"maxOrderQty": "1190.000",
"minOrderQty": "0.001",
"qtyStep": "0.001",
"postOnlyMaxOrderQty": "1190.000",
"maxMktOrderQty": "500.000",
"minNotionalValue": "5"
},
"unifiedMarginTrade": true,
"fundingInterval": 480,
"settleCoin": "USDT",
"copyTrading": "both",
"upperFundingRate": "0.00375",
"lowerFundingRate": "-0.00375",
"isPreListing": false,
"preListingInfo": null,
"riskParameters": {
"priceLimitRatioX": "0.01",
"priceLimitRatioY": "0.02"
},
"symbolType": ""
}
],
"nextPageCursor": ""
},
"retExtInfo": {},
"time": 1735809771618
}
// 盤前永續合約的響應
{
"retCode": 0,
"retMsg": "OK",
"result": {
"category": "linear",
"list": [
{
"symbol": "BIOUSDT",
"contractType": "LinearPerpetual",
"status": "PreLaunch",
"baseCoin": "BIO",
"quoteCoin": "USDT",
"launchTime": "1735032510000",
"deliveryTime": "0",
"deliveryFeeRate": "",
"priceScale": "4",
"leverageFilter": {
"minLeverage": "1",
"maxLeverage": "5.00",
"leverageStep": "0.01"
},
"priceFilter": {
"minPrice": "0.0001",
"maxPrice": "1999.9998",
"tickSize": "0.0001"
},
"lotSizeFilter": {
"maxOrderQty": "70000",
"minOrderQty": "1",
"qtyStep": "1",
"postOnlyMaxOrderQty": "70000",
"maxMktOrderQty": "14000",
"minNotionalValue": "5"
},
"unifiedMarginTrade": true,
"fundingInterval": 480,
"settleCoin": "USDT",
"copyTrading": "none",
"upperFundingRate": "0.05",
"lowerFundingRate": "-0.05",
"isPreListing": true,
"preListingInfo": {
"curAuctionPhase": "ContinuousTrading",
"phases": [
{
"phase": "CallAuction",
"startTime": "1735113600000",
"endTime": "1735116600000"
},
{
"phase": "CallAuctionNoCancel",
"startTime": "1735116600000",
"endTime": "1735116900000"
},
{
"phase": "CrossMatching",
"startTime": "1735116900000",
"endTime": "1735117200000"
},
{
"phase": "ContinuousTrading",
"startTime": "1735117200000",
"endTime": ""
}
],
"auctionFeeInfo": {
"auctionFeeRate": "0",
"takerFeeRate": "0.001",
"makerFeeRate": "0.0004"
}
},
"riskParameters": {
"priceLimitRatioX": "0.05",
"priceLimitRatioY": "0.1"
},
"symbolType": ""
}
],
"nextPageCursor": "first%3DBIOUSDT%26last%3DBIOUSDT"
},
"retExtInfo": {},
"time": 1735810114435
}
{
"retCode": 0,
"retMsg": "OK",
"result": {
"category": "option",
"nextPageCursor": "",
"list": [
{
"symbol": "BTC-27MAR26-70000-P-USDT",
"status": "Trading",
"baseCoin": "BTC",
"quoteCoin": "USDT",
"settleCoin": "USDT",
"optionsType": "Put",
"launchTime": "1743669649256",
"deliveryTime": "1774598400000",
"deliveryFeeRate": "0.00015",
"priceFilter": {
"minPrice": "5",
"maxPrice": "1110000",
"tickSize": "5"
},
"lotSizeFilter": {
"maxOrderQty": "500",
"minOrderQty": "0.01",
"qtyStep": "0.01"
},
"displayName": "BTCUSDT-27MAR26-70000-P"
}
]
},
"retExtInfo": {},
"time": 1672712537130
}
{
"retCode": 0,
"retMsg": "OK",
"result": {
"category": "spot",
"list": [
{
"symbol": "BTCUSDT",
"baseCoin": "BTC",
"quoteCoin": "USDT",
"innovation": "0",
"status": "Trading",
"marginTrading": "utaOnly",
"stTag": "0",
"lotSizeFilter": {
"basePrecision": "0.000001",
"quotePrecision": "0.0000001",
"minOrderQty": "0.000011",
"maxOrderQty": "83",
"minOrderAmt": "5",
"maxOrderAmt": "8000000",
"maxLimitOrderQty": "83",
"maxMarketOrderQty": "41.5"
},
"priceFilter": {
"tickSize": "0.1"
},
"riskParameters": {
"priceLimitRatioX": "0.005",
"priceLimitRatioY": "0.01"
},
"symbolType": ""
}
]
},
"retExtInfo": {},
"time": 1760027412300
}