# `CCXT.Exchanges`
[🔗](https://github.com/ZenHive/ccxt_client/blob/main/lib/ccxt/exchanges.ex#L1)

Compile-time generator for all exchange modules.

Reads the spec manifest and generates one module per exchange
(e.g., `CCXT.Bybit`, `CCXT.Binance`) at compile time via `Module.create/3`.

New exchange = new spec file in `priv/specs/json/output/`, zero Elixir code.

## How it works

The manifest lists all exchange IDs. For each ID, this module calls
`CCXT.Exchange.prepare_generate_data/1` to build the AST, then creates
the module directly — same pipeline as `use CCXT.Exchange`, but without
needing individual stub files.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
