Rate-limit bypass for multi-exchange bots
How nexrade_req + the Nexrade API keep public REST traffic under exchange IP ceilings without giving up your trading library.
engineering · rate-limits · nexrade
Most exchange SDKs leave retries, caching, and multi-venue fan-out to you. When public REST is the bottleneck, the failure mode is usually IP-scoped weight, not “your code is slow.”
The split that works
Your bot
├─ private (orders, balances with your keys) → exchange (direct, signed)
└─ public (tickers, books, klines) → nexrade_req → Nexrade API → exchange
The open-source nexrade library owns trading logic. nexrade_req is the HTTP layer for public GETs. When you set NEXRADE_API_KEY, public calls can go through api.nexrade.com/market-data for:
- rotating proxy exits
- short-TTL response cache
- plan RPM enforcement with clear response headers
- exchange allowlisting (no open-web scraping)
Enable the relay
import os
os.environ["NEXRADE_API_KEY"] = "nxr_..." # dashboard → API keys
import nexrade
binance = nexrade.Binance({})
print(binance.get_price("BTCUSDT"))
Without a key, public calls can still go direct (subject to your IP limits). With a key, the library can share Nexrade’s pool instead of burning a single colocation IP.
Plan ceilings (per account)
RPM is shared across all active API keys in an account. Free traffic also has a client-IP guard.
| Plan | RPM | Keys |
|---|---|---|
| Free | 100 | 1 (30-day expiry) |
| Pro | 1,000 | 3 |
| Enterprise | 5,000 | 10 |
Headers on every response:
X-RateLimit-LimitX-RateLimit-RemainingX-RateLimit-ResetX-RateLimit-Scope(account, oripwhen the free-plan IP guard is tighter)
Geo-aware exits
Some venues restrict where API traffic may exit. Nexrade tracks blocked locations per exchange and skips proxy exits in those countries when the pool reports country metadata. That is a correctness / ToS concern more than a latency feature — but it avoids wasted 403s from banned geos.
Practical tips
- Prefer header auth (
X-API-Key) over query params. - Use
GET /market-datafor production traffic through the proxy pool. - Keep private keys off the Nexrade API — never send exchange secrets to the proxy path.
- Cache in your bot (Redis / nexrade-cache) for hot symbols; use the API for cross-IP capacity.
Read more
Want to try the path this note describes? Create a free API key, or return to the full list of notes.