Live trade feed aggregator server streaming BTC time and sales data from major exchanges like Binance, Bybit, BitMEX and more via a unified WebSocket API
🚧 Tick stream example:
Supported pairs
Exchange | Pair | Supported |
---|---|---|
BINANCE | BTCUSDT | ✅ |
BYBIT | BTCUSDT | ✅ |
BYBIT | BTCUSD | - |
BITMEX | XBTUSD | 🚧 |
Base Url: ws://localhost:8081/
Example response
{
"side": "BUY",
"exchange": "BINANCE",
"price": 42364.6,
"quantity": 3.626,
"size": 153614.0396,
"time": 1704089838366
}
Users can choose to run this locally or via spinning up a docker instance.
🚧 Work in progress!
To run the server locally
Clone the repository
git clone https://github.com/nc1z/tick-stream-aggregator.git
Navigate into directory
cd tick-stream-aggregator/
Install dependencies
yarn install
Start the server
yarn start
For customisation, please pass the arguments as such
yarn start [command] [options]
# Example
yarn start --port 3000 --size 10000
Special thanks to the following developers and repositories for the inspiration, references and documentation
Inspiration for the idea
- AGGR - server side cryptocurrency trades aggregator
NodeJs design choices and optimisation
- Tardis.dev - The most granular data for cryptocurrency markets
Dependencies
- uWebSockets - ws for NodeJs back-ends
- Pino - super fast, all natural json logger
- findMyWay - A crazy fast HTTP router