该技能用于在 Bybit 上直接交易,Bybit 是顶级衍生品交易所之一。它支持现货和以 USDT 计价的线性永续合约,使用捆绑的 scripts/ccex_core.py 引擎。
一、设置
-
获取 Bybit API 密钥:登录 bybit.com,进入账户 → API(或个人资料 → API 管理),创建 API 密钥,为现货和衍生品启用读/写权限,保存 API 密钥和密钥。
-
添加到环境:在 workspace/.env 中添加:BYBIT_API_KEY=your_api_key_here 和 BYBIT_SECRET=your_secret_here。
-
安装依赖:pip install --break-system-packages ccxt。
-
可选但推荐(重启后保持):grep -q "pip install --break-system-packages ccxt" workspace/setup.sh || echo "pip install --break-system-packages ccxt" >> workspace/setup.sh。
二、主要能力
行情数据(无需 API 密钥):获取当前价格/行情、查看订单簿、K 线 OHLCV 数据、列出所有市场。
账户(需要 API 密钥):查看现货和衍生品余额、查看未成交订单、查看订单历史、查看未平仓头寸(永续合约)。
交易(需要 API 密钥):市价单、限价单、止损市价/止损限价单、止盈单、移动止损(基于金额)、入场订单一次性附加止盈+止损、合约只减仓(reduce-only)订单。
三、工作流程
始终遵循以下顺序:交易前检查余额 → 获取当前价格 → 下单 → 通过持仓或未成交订单验证。
四、使用方式
执行命令:python3 skills/bybit/scripts/ccex_core.py <action> --exchange bybit [options]。
示例:
获取 ETH/USDT 价格:python3 skills/bybit/scripts/ccex_core.py ticker --exchange bybit --symbol ETH/USDT
检查余额:python3 skills/bybit/scripts/ccex_core.py balance --exchange bybit
市价买入 0.01 ETH:python3 skills/bybit/scripts/ccex_core.py order --exchange bybit --symbol ETH/USDT --side buy --type market --amount 0.01
限价 2800 买入 ETH:python3 skills/bybit/scripts/ccex_core.py order --exchange bybit --symbol ETH/USDT --side buy --type limit --amount 0.01 --price 2800
2500 止损:python3 skills/bybit/scripts/ccex_core.py order --exchange bybit --symbol ETH/USDT --side sell --type stop --amount 0.01 --stop_price 2500
移动止损(基于金额,$50 追踪):python3 skills/bybit/scripts/ccex_core.py order --exchange bybit --symbol ETH/USDT --side sell --type stop --amount 0.01 --trailing_delta 50
合约:做多 0.1 ETH 永续:python3 skills/bybit/scripts/ccex_core.py order --exchange bybit --symbol ETH/USDT --side buy --type market --amount 0.1 --futures
平仓合约头寸(只减仓):python3 skills/bybit/scripts/ccex_core.py order --exchange bybit --symbol ETH/USDT --side sell --type market --amount 0.1 --futures --reduce_only
查看未平仓头寸:python3 skills/bybit/scripts/ccex_core.py position --exchange bybit --futures
取消订单:python3 skills/bybit/scripts/ccex_core.py cancel --exchange bybit --symbol ETH/USDT --order_id abc123
五、Bybit 特定注意事项
止盈+止损组合:Bybit 支持在入场订单上同时附加止盈和止损——通过自定义脚本中的 params 字典使用原始 Bybit API。对于简单的止损或止盈,统一的 CCXT API 可以处理。入场订单组合止盈+止损的使用模式:exchange.create_order("ETH/USDT", "market", "buy", 0.1, None, {"takeProfit": "3200", "stopLoss": "2500", "tpTriggerBy": "LastPrice", "slTriggerBy": "LastPrice", })。
统一账户:Bybit 使用“统一交易账户”——现货、衍生品和期权共享同一保证金池。CCXT 自动处理这一点。
Bybit 上的 OCO:Bybit 不支持原生 OCO。ccex-core 通过两个独立订单模拟 OCO,并提醒你在其中一个成交时手动取消另一个。
速率限制:Bybit 允许每秒 10 个请求(订单端点)。CCXT 自动处理。
六、首次运行健全性检查
设置后运行以下命令,在下单前验证一切:python3 skills/bybit/scripts/ccex_core.py ticker --exchange bybit --symbol ETH/USDT。如果配置了凭证,还要测试私有访问:python3 skills/bybit/scripts/ccex_core.py balance --exchange bybit。
七、错误处理
缺少依赖 ccxt:ccxt 未安装,修复:pip install --break-system-packages ccxt。 缺少 Bybit 的 API 凭证:BYBIT_API_KEY/BYBIT_SECRET 未设置,添加到 workspace/.env。 10003 无效 API 密钥:.env 中的密钥错误,重新检查 BYBIT_API_KEY。 10006 访问过多:触发速率限制,CCXT 会处理,减少调用频率。 余额不足:资金不足,先检查余额。 110014 只减仓头寸不存在:没有未平仓头寸,先检查持仓。