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

Bybit CCXT API配置问题:期货/现货/演示交易切换及鉴权错误修复求助

问题修复方案

一、先解决API无效错误(retCode:10003)

  • 区分演示网与实盘API密钥:Bybit测试网(Demo)和实盘的API完全独立,启用enable_demo_trading(True)时,必须使用Bybit测试网后台生成的API Key/Secret,不能混用实盘密钥。
  • 检查API权限:创建API时需勾选「交易」权限,同时开启对应市场权限(做期货开「合约交易」,做现货开「现货交易」)。
  • 确认IP白名单设置:若开启了IP白名单,需将当前机器IP加入白名单列表。

二、正确配置CCXT进行现货/期货交易

1. 实盘线性期货(USDT永续)配置

bybit = ccxt.bybit({
    "apiKey": setting['API'],  # 实盘期货API密钥
    "secret": setting['SECRET'],
    "enableRateLimit": True,
    "version": 'v5',
    "options": {
        "defaultType": "linear",  # 对应USDT永续期货
    }
})

2. 演示网线性期货配置

bybit = ccxt.bybit({
    "apiKey": setting['DEMO_API'],  # 测试网专属API密钥
    "secret": setting['DEMO_SECRET'],
    "enableRateLimit": True,
    "version": 'v5',
    "options": {
        "defaultType": "linear",
    }
})
bybit.enable_demo_trading(True)  # 启用演示交易模式

3. 实盘现货配置

bybit = ccxt.bybit({
    "apiKey": setting['SPOT_API'],  # 可与期货共用同一API(需确保现货权限开启)
    "secret": setting['SECRET'],
    "enableRateLimit": True,
    "version": 'v5',
    "options": {
        "defaultType": "spot",  # 指定现货市场
    }
})

三、开平仓操作示例

期货开多单(市价)

order = bybit.create_order(
    symbol='BTC/USDT:USDT',  # 线性期货交易对格式:标的/计价:保证金币种
    type='market',
    side='buy',
    amount=0.001,
)

现货买币(市价)

order = bybit.create_order(
    symbol='BTC/USDT',
    type='market',
    side='buy',
    amount=0.001,
)

期货平仓(市价平多单)

order = bybit.create_order(
    symbol='BTC/USDT:USDT',
    type='market',
    side='sell',
    amount=0.001,
)

关键注意点

  • Bybit V5的defaultType取值为:spot(现货)、linear(USDT永续)、inverse(反向合约),不要使用旧版的futures值,这是你最初开错现货的核心原因。
  • 若需在同一脚本中切换现货/期货,可不用依赖defaultType,而是在下单时通过params指定市场类型:
# 强制指定线性期货下单
order = bybit.create_order(
    symbol='BTC/USDT:USDT',
    type='market',
    side='buy',
    amount=0.001,
    params={'type': 'linear'},
)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 16:20:14