-
-
Notifications
You must be signed in to change notification settings - Fork 8.7k
graceful shutdown
github-actions[bot] edited this page Jun 11, 2026
·
2 revisions
'use strict';
import ccxt from '../../js/ccxt.js';
console.log('CCXT Version:', ccxt.version); // eslint-disable-line import/no-named-as-default-member
let stop = false;
async function shutdown(milliseconds) {
await ccxt.sleep(milliseconds);
stop = true;
}
async function watchOrderBook(exchangeId, symbol) {
const exchange = new ccxt.pro[exchangeId](); // eslint-disable-line import/no-named-as-default-member
await exchange.loadMarkets();
// exchange.verbose = true
while (!stop) {
try {
const orderbook = await exchange.watchOrderBook(symbol);
console.log(new Date(), exchange.id, symbol, orderbook['asks'][0], orderbook['bids'][0]);
}
catch (e) {
console.log(symbol, e);
stop = true;
break;
}
}
await exchange.close();
}
async function main() {
const streams = {
'binance': 'BTC/USDT',
'okx': 'BTC/USDT',
};
await Promise.all([
shutdown(10000),
...Object.entries(streams).map(([exchangeId, symbol]) => watchOrderBook(exchangeId, symbol)),
]);
}
main();(If the page is not being rendered for you, you can refer to the mirror at https://docs.ccxt.com/)
- Install
- Examples
- Manual
- CCXT Pro
- Contributing
- Supported Exchanges
- Exchanges By Country
- API Spec By Method
- FAQ
- Changelog
- Awesome
- API Spec by Exchange
- fetchCurrencies
- alpaca
- apex
- ascendex
- aster
- backpack
- bigone
- binance
- bingx
- bit2c
- bitbank
- bitbns
- bitfinex
- bitflyer
- bitget
- bithumb
- bitmart
- bitmex
- bitopro
- bitrue
- bitso
- bitstamp
- bitteam
- bittrade
- bitvavo
- blockchaincom
- blofin
- btcbox
- btcmarkets
- btcturk
- bullish
- bybit
- bydfi
- cex
- coinbase
- coinbaseexchange
- coinbaseinternational
- coincheck
- coinex
- coinmate
- coinmetro
- coinone
- coinsph
- coinspot
- cryptocom
- cryptomus
- deepcoin
- delta
- deribit
- derive
- digifinex
- dydx
- exmo
- extended
- foxbit
- gate
- gemini
- grvt
- hashkey
- hibachi
- hitbtc
- hollaex
- htx
- hyperliquid
- independentreserve
- indodax
- kraken
- krakenfutures
- kucoin
- fetchBidsAsks
- latoken
- lbank
- lighter
- luno
- mercado
- mexc
- modetrade
- ndax
- novadax
- okx
- onetrading
- p2b
- pacifica
- paradex
- paymium
- phemex
- poloniex
- tokocrypto
- toobit
- upbit
- weex
- whitebit
- woo
- woofipro
- xt
- zaif
- fetchStatus