find-arbitrage-opps — Claude Code skill: cross-exchange arbitrage
The skill pulls prices for one pair from every connected exchange and ranks the gaps between the cheapest and priciest source.
npx skills add hummingbot/skills --skill find-arbitrage-opps -a claude-codeWhat find-arbitrage-opps does
Every exchange wired into the Hummingbot API gets queried for the pair you name. Fungible tokens are treated as the same asset, so BTC, WBTC and cbBTC count as Bitcoin while USDT, USDC and USD count as dollars. That is why the base and quote can be comma-separated lists such as BTC,WBTC against USDT,USDC.
The work happens in scripts/find_arb_opps.py. It takes base and quote tokens, can narrow the search to named CEX connectors, and drops small gaps with --min-spread. Passing --dex adds Jupiter on Solana, Uniswap on Ethereum and PancakeSwap on BSC, fetched through Hummingbot Gateway. Results list each source's price, the best bid and ask, the spread size and concrete buy-here-sell-there pairs; --json switches the output format.
CEX prices need a running Hummingbot API with connectors and exchange keys already set up. DEX prices need Gateway listening on http://localhost:15888, or whatever address sits in GATEWAY_URL — with Gateway down, --dex returns nothing useful. One more thing: BTC markets are open only to Australian residents on some exchanges, and the script prints a warning whenever BTC, WBTC or cbBTC enters the search.
What it helps with
- compare one pair's price across several exchanges at once
- spot a buy-low sell-high route between venues
- treat WBTC and USDC as stand-ins for BTC and USDT
- mix DEX quotes into CEX prices through Gateway
- hide spreads below a chosen threshold
Example prompts for the agent
- Find arbitrage opportunities for BTC against USDT across the connected exchanges
- Compare ETH and WETH prices against USDT and USDC, include DEX quotes and show only spreads of 0.1% or more
- Scan SOL against USDC using just the binance and kraken connectors, output as JSON
How to install find-arbitrage-opps
1Skills CLI (Vercel)
npx skills add hummingbot/skills --skill find-arbitrage-opps -a claude-code2Manually: put the files in place
~/.claude/skills/find-arbitrage-opps/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/find-arbitrage-opps/
1Skills CLI (Vercel)
npx skills add hummingbot/skills --skill find-arbitrage-opps -a codex2Manually: put the files in place
.agents/skills/find-arbitrage-opps/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add hummingbot/skills --skill find-arbitrage-opps -a cursor2Manually: put the files in place
.cursor/skills/find-arbitrage-opps/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install hummingbot/skills find-arbitrage-opps2Manually: put the files in place
.github/skills/find-arbitrage-opps/SKILL.md1Skills CLI (Vercel)
npx skills add hummingbot/skills --skill find-arbitrage-opps -a gemini-cli2Platform CLI
gemini skills install https://github.com/hummingbot/skills --path skills/find-arbitrage-oppsManually: put the files in place
.devin/skills/find-arbitrage-opps/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add hummingbot/skills --skill find-arbitrage-opps -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about find-arbitrage-opps
How do I install find-arbitrage-opps in Claude Code?
Run npx skills add hummingbot/skills --skill find-arbitrage-opps -a claude-code, then confirm the file landed at ~/.claude/skills/find-arbitrage-opps/SKILL.md.
What does find-arbitrage-opps do?
It gathers prices for a chosen pair from every exchange connected to the Hummingbot API and measures the spread between the lowest and highest source. Fungible tokens like BTC and WBTC are read as one asset.
What has to be running before I use it?
A live Hummingbot API with exchange connectors and API keys configured. For DEX quotes you also need Hummingbot Gateway on http://localhost:15888, or the address set in GATEWAY_URL.