You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ccxt设置defaultType为future仍仅返回币安现货数据如何修复

问题根因

初始化配置的键名拼写错误:ccxt 交易所实例的自定义配置项键名为 options(复数形式),你传入的单数option不会被框架识别,实例会默认使用spot(现货)作为默认市场类型,因此fetch_markets只会返回现货市场数据。

修复方案

拉取U本位合约市场数据(查资金费率的常用场景)

将配置键名修正为options即可,示例代码:

import ccxt
binance = ccxt.binance({
    'options': {
        'defaultType': 'future'
    }
})
# 拉取全量U本位合约市场数据
contract_markets = binance.fetch_markets()

初始化完成后可直接调用资金费率相关接口拉取数据,比如拉取BTC永续合约资金费率历史:

# 拉取BTC/USDT U本位永续合约最近100条资金费率记录
funding_history = binance.fetch_funding_rate_history('BTC/USDT:USDT', limit=100)

拉取币本位合约市场数据

如果需要获取币本位交割/永续合约数据,将defaultType参数值改为delivery即可:

binance = ccxt.binance({
    'options': {
        'defaultType': 'delivery'
    }
})
delivery_markets = binance.fetch_markets()
注意事项
  • 币安期货交易对的符号规则和现货不同,U本位永续合约后缀为:USDT,币本位永续合约后缀为:USD,调用接口时需使用对应合约的完整符号,否则会报交易对不存在的错误。
  • 如果初始化后仍返回现货数据,可以在调用fetch_markets前手动执行binance.load_markets(reload=True)强制刷新市场缓存。

内容的提问来源于stack exchange,提问作者Marco Polo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.03 02:27:27