查詢可交易產品的規格信息
查詢全站可交易產品的基礎配置規則信息
覆蓋範圍: 現貨 / USDT永續 / USDC永續 / USDC交割 / 反向合約 / 期權
警告
- 現貨不支持翻頁,因此
limit
,cusor
無效. - 當通過
baseCoin
查詢時, 不管category=linear
或inverse
, 返回結果中都會包含USDT永續, USDC永續, USDC交割和反向合約的交易對.
HTTP請求
GET /v5/market/instruments-info
請求參數
參數 | 是否必需 | 類型 | 說明 |
---|---|---|---|
category | true | string | 產品類型. spot ,linear ,inverse ,option |
symbol | false | string | 合約名稱 |
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 | 報價幣種 |
> 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 | 資金費率下限 |
> 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 | 修改下單量的步長 |
參數 | 類型 | 說明 |
---|---|---|
category | string | 產品類型 |
list | array | Object |
> symbol | string | 合約名稱 |
> baseCoin | string | 交易幣種 |
> quoteCoin | string | 報價幣種 |
> innovation | string | 是否屬於創新區交易對. `0`: 否, `1`: 是 |
> status | string | 合約狀態 |
> marginTrading | string | 該幣對是否支持槓桿交易
|
> stTag | string | 幣對是否存在特殊處理(ST)標籤. 0 : 否, 1 : 是 |
> lotSizeFilter | Object | 數量屬性 |
>> basePrecision | string | 交易幣種精度 |
>> quotePrecision | string | 報價幣種精度 |
>> minOrderQty | string | 單筆訂單最小下單量 |
>> maxOrderQty | string | 單筆訂單最大下單量 |
>> minOrderAmt | string | 單筆訂單最小訂單額 |
>> maxOrderAmt | string | 單筆訂單最大訂單額 |
> priceFilter | Object | 價格屬性 |
>> tickSize | string | 修改訂單的步長 |
> riskParameters | Object | 價格限制參數 |
>> limitParameter | string | 限價單價格限制. 如果預估成交價與最新成交價的偏差大於限定的百分比,則該筆限價單將會被限制下單。舉例說明,接口返回0.1, 則表示限價為10%,您下的限價單的下單價格不能超過最後成交價格(LTP)的110%; 您賣出的限價單不能低於LTP的90%。 |
>> marketParameter | string | 市價單價格限制. 如果預估成交價與最新成交價的偏差大於限定的百分比,市價單將被部分執行. 舉例說明,接口返回0.05, 則表示限價為5%. 假如當前MNT/USDT限價為5%,用戶下單 10 萬 USDT 市價買入(當前最新成交價為 2 USDT)。凡在2.1 USDT以上成交的部分將被取消。假設只有價值2萬 USDT的MNT可以在2.1 USDT及以下的價格成交,剩餘的8萬 USDT訂單價值將因為偏差超過5%的閾值而被取消。 |
請求示例
- 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/wuhewuhe/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/wuhewuhe/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/wuhewuhe/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": "199999.80",
"tickSize": "0.10"
},
"lotSizeFilter": {
"maxOrderQty": "100.000",
"maxMktOrderQty": "100.000",
"minOrderQty": "0.001",
"qtyStep": "0.001",
"postOnlyMaxOrderQty": "1000.000",
"minNotionalValue": "5"
},
"unifiedMarginTrade": true,
"fundingInterval": 480,
"settleCoin": "USDT",
"copyTrading": "both",
"upperFundingRate": "0.00375",
"lowerFundingRate": "-0.00375"
}
],
"nextPageCursor": ""
},
"retExtInfo": {},
"time": 1707186451514
}
// 盤前永續合約的響應
{
"retCode": 0,
"retMsg": "OK",
"result": {
"category": "linear",
"list": [
{
"symbol": "PRE02ZROUSDT",
"contractType": "LinearPerpetual",
"status": "PreLaunch",
"baseCoin": "PRE02ZRO",
"quoteCoin": "USDT",
"launchTime": "1718610229000",
"deliveryTime": "0",
"deliveryFeeRate": "",
"priceScale": "3",
"leverageFilter": {
"minLeverage": "1",
"maxLeverage": "5.00",
"leverageStep": "0.01"
},
"priceFilter": {
"minPrice": "0.001",
"maxPrice": "1999.998",
"tickSize": "0.001"
},
"lotSizeFilter": {
"maxOrderQty": "10000.0",
"minOrderQty": "0.1",
"qtyStep": "0.1",
"postOnlyMaxOrderQty": "10000.0",
"maxMktOrderQty": "2000.0",
"minNotionalValue": "5"
},
"unifiedMarginTrade": true,
"fundingInterval": 480,
"settleCoin": "USDT",
"copyTrading": "none",
"upperFundingRate": "0.03",
"lowerFundingRate": "-0.03",
"isPreListing": true,
"preListingInfo": {
"curAuctionPhase": "ContinuousTrading",
"phases": [
{
"phase": "CallAuction",
"startTime": "1718621400000",
"endTime": "1718707200000"
},
{
"phase": "CallAuctionNoCancel",
"startTime": "1718707200000",
"endTime": "1718707500000"
},
{
"phase": "CrossMatching",
"startTime": "1718707500000",
"endTime": "1718707800000"
},
{
"phase": "ContinuousTrading",
"startTime": "1718707800000",
"endTime": ""
}
],
"auctionFeeInfo": {
"auctionFeeRate": "0",
"takerFeeRate": "0.001",
"makerFeeRate": "0.0004"
}
}
}
],
"nextPageCursor": ""
},
"retExtInfo": {},
"time": 1719455285151
}
{
"retCode": 0,
"retMsg": "OK",
"result": {
"category": "option",
"nextPageCursor": "",
"list": [
{
"symbol": "ETH-3JAN23-1250-P",
"status": "Trading",,
"baseCoin": "ETH",
"quoteCoin": "USD",
"settleCoin": "USDC",
"optionsType": "Put",
"launchTime": "1672560000000",
"deliveryTime": "1672732800000",
"deliveryFeeRate": "0.00015",
"priceFilter": {
"minPrice": "0.1",
"maxPrice": "10000000",
"tickSize": "0.1"
},
"lotSizeFilter": {
"maxOrderQty": "1500",
"minOrderQty": "0.1",
"qtyStep": "0.1"
}
}
]
},
"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.00000001",
"minOrderQty": "0.000048",
"maxOrderQty": "71.73956243",
"minOrderAmt": "1",
"maxOrderAmt": "2000000"
},
"priceFilter": {
"tickSize": "0.01"
}
"riskParameters": {
"limitParameter": "0.05",
"marketParameter": "0.05"
}
}
]
},
"retExtInfo": {},
"time": 1672712468011
}