CCXT Tools (for Strands Agents)
A community tool package that exposes CCXT (and optional CCXT Pro) to Strands Agents via @tool wrappers.
- Generic method calling:
fetch_*,create_order,cancel_order, etc. - Optional real-time WebSocket streaming via
ccxt.pro(watch_*).
Install
pip install ccxt-tool-strands
Usage in a Strands Agent
from strands import Agent
from ccxt_tool_strands.ccxt_generic import ccxt_generic, ccxt_multi_exchange_orderbook
from ccxt_tool_strands.ccxt_pro import ccxt_pro_watch
agent = Agent(
model="...",
tools=[ccxt_generic, ccxt_multi_exchange_orderbook, ccxt_pro_watch],
)
# public market data
agent.tool.ccxt_generic(action="call", exchange="bybit", method="fetch_ticker", args='["BTC/USDT"]')
agent.tool.ccxt_generic(action="call", exchange="bybit", method="fetch_ohlcv", args='["BTC/USDT","1m",null,200]')
# multi-exchange best bid/ask
agent.tool.ccxt_multi_exchange_orderbook(exchanges='["binance","bybit","okx"]', symbol="BTC/USDT")
Authentication (recommended: server-side)
Set environment variables in the agent runtime (shell, .zshrc, .env, secret manager):
export CCXT_EXCHANGE=bybit # or binance, okx, coinbase, ...
export CCXT_API_KEY=...
export CCXT_SECRET=...
# optional (only if your exchange requires them)
export CCXT_PASSWORD=...
export CCXT_UID=...
export CCXT_TOKEN=...
export CCXT_DEFAULT_TYPE=swap # or spot
export CCXT_SANDBOX=false
Then you can omit exchange= and call authenticated methods:
agent.tool.ccxt_generic(action="call", method="fetch_balance")
Notes
- Keep API keys out of code and out of git.
- CCXT
enableRateLimit=Trueis enabled by default in the tool.
Links
- CCXT: https://github.com/ccxt/ccxt
- Strands community tools: https://strandsagents.com/latest/documentation/docs/community/tools
Metadata
Release files for ccxt-tool-strands 0.1.10
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ccxt_tool_strands-0.1.10.tar.gz | 9.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ccxt_tool_strands-0.1.10-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 18.7 kB
Release files / ccxt_tool_strands-0.1.10.tar.gz
| Download URL | ccxt_tool_strands-0.1.10.tar.gz |
|---|---|
| Size | 9.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8f7b5e405baada39adc1ddf19cbb686baee329bb98efaf8c2a6a0977879c1bec
|
|
BLAKE2b-256 checksum How to use checksums |
a41ed6e2788617cf92b0d90a308e99525c7bd5774e2a8a4f6b0380eb86faf6d6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.12
|
Release files / ccxt_tool_strands-0.1.10-py3-none-any.whl
| Download URL | ccxt_tool_strands-0.1.10-py3-none-any.whl |
|---|---|
| Size | 9.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6a04602ce990d8e8452f7e51bdeecf8fba4c49aaa9be58a4a7c1a18ee4f0b13d
|
|
BLAKE2b-256 checksum How to use checksums |
54f085cf1ec4e0ce1310d326f3e28eaca9511426900286fdfb6a0a7bf2be613f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.12
|