Blog
2 min readNexrade

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.

PlanRPMKeys
Free1001 (30-day expiry)
Pro1,0003
Enterprise5,00010

Headers on every response:

  • X-RateLimit-Limit
  • X-RateLimit-Remaining
  • X-RateLimit-Reset
  • X-RateLimit-Scope (account, or ip when 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

  1. Prefer header auth (X-API-Key) over query params.
  2. Use GET /market-data for production traffic through the proxy pool.
  3. Keep private keys off the Nexrade API — never send exchange secrets to the proxy path.
  4. 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.