mcpField
F
find-arbitrage-opps

find-arbitrage-opps

github.com/hummingbot其他32493 次安装21 周前更新
代码仓库

关于 find-arbitrage-opps

find-arbitrage-opps 比较 Hummingbot 所连接交易所的交易对价格,以查找套利价差。它支持可互换代币,并可选通过 Gateway 纳入 DEX 报价。

主要功能

  1. 01比较各 CEX 连接器的价格
  2. 02纳入可互换代币
  3. 03可选查询 DEX 价格
  4. 04显示最佳买卖价和价差
  5. 05筛选连接器与最低价差
  6. 06以 JSON 输出结果

适用场景

  1. 01比较 BTC 和 WBTC 市场
  2. 02查看各交易场所的 SOL/USDC 报价
  3. 03按最低价差筛选机会

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/hummingbot/skills --skill find-arbitrage-opps

安装后在 Claude Code 中输入/find-arbitrage-opps确认已加载。

附带文件scripts/find_arb_opps.py

详细介绍

find-arbitrage-opps

通过比较交易对价格,查找所有连接到 Hummingbot 的交易所中的套利机会,并考虑可互换代币(例如,BTC = WBTC,USDT = USDC)。

先决条件

Hummingbot API 必须正在运行,并已配置交易所连接器:

bash <(curl -s https://raw.githubusercontent.com/hummingbot/skills/main/skills/lp-agent/scripts/check_prerequisites.sh)

DEX 支持

默认情况下,脚本会通过 Hummingbot API 查询 CEX 连接器。添加 --dex 也可从以下来源获取价格:

DEX链默认网络
JupiterSolanamainnet-beta
UniswapEthereummainnet
PancakeSwapEthereum (BSC)bsc

DEX 价格通过 Hummingbot Gateway 直接获取。请确保 Gateway 正在 http://localhost:15888 上运行(或设置 GATEWAY_URL)。

⚠️ BTC 市场在一些交易所仅向澳大利亚居民开放。搜索中包含 BTC/WBTC/cbBTC 时会自动打印警告。

工作流

步骤 1:定义代币映射

用户指定基础代币和计价代币,包括可互换代币:

  • 基础代币:BTC、WBTC、cbBTC(均代表 Bitcoin)
  • 计价代币:USDT、USDC、USD(均代表 USD)
步骤 2:查找套利机会
# Basic - CEX only
python scripts/find_arb_opps.py --base BTC --quote USDT

# Include fungible tokens
python scripts/find_arb_opps.py --base BTC,WBTC --quote USDT,USDC

# Include DEX prices (Jupiter + Uniswap via Gateway)
python scripts/find_arb_opps.py --base SOL --quote USDC --dex
python scripts/find_arb_opps.py --base ETH,WETH --quote USDT,USDC --dex

# Minimum spread filter
python scripts/find_arb_opps.py --base SOL --quote USDC --dex --min-spread 0.1

# Filter to specific CEX connectors
python scripts/find_arb_opps.py --base BTC --quote USDT --connectors binance,kraken,coinbase
步骤 3:分析结果

脚本输出:

  • 各 CEX 和 DEX 来源的价格
  • 所有来源中的最佳买价/卖价
  • 套利价差(低买高卖)
  • 推荐的套利交易对

脚本选项

python scripts/find_arb_opps.py --help
选项描述
--base基础代币(可用逗号分隔多个代币,例如 BTC,WBTC)
--quote计价代币(可用逗号分隔多个代币,例如 USDT,USDC)
--connectors筛选指定的 CEX 连接器(可选)
--dex通过 Gateway 纳入 DEX 价格(Jupiter + Uniswap)
--min-spread要显示的最小价差 %(默认:0.0)
--json以 JSON 格式输出

输出示例

============================================================
  SOL / USDC Arbitrage Scanner
  DEX: Jupiter (Solana mainnet-beta), Uniswap (Ethereum mainnet)
============================================================

  Lowest:  binance                   $132.4500
  Highest: jupiter (DEX)             $132.8900
  Spread:  0.332% ($0.4400)
  Sources: 5 prices from 5 sources

  Top Arbitrage Opportunities:
  --------------------------------------------------------
  1. Buy  binance                   @ $132.4500
     Sell jupiter (DEX)             @ $132.8900
     Profit: 0.332% ($0.4400)

环境变量

export HUMMINGBOT_API_URL=http://localhost:8000
export API_USER=admin
export API_PASS=admin
export GATEWAY_URL=http://localhost:15888   # for DEX prices

脚本按以下顺序检查 .env:./hummingbot-api/.env → ~/.hummingbot/.env → .env

要求

  • Hummingbot API 正在运行(用于获取 CEX 价格)
  • Gateway 正在运行(使用 --dex 标志获取 DEX 价格)
  • 已配置带 API 密钥的交易所连接器

评论

支持 Markdown