pixtron / bybit-api

An unofficial node.js lowlevel wrapper for the Bybit Cryptocurrency Derivative exchange API
MIT License
21 stars 16 forks source link
bitcoin bybit bybit-api bybit-rest bybit-websocket cryptocurrency exchange nodejs

DEPRECATED @pxtrn/bybit-api

This package has been deprecated and is no longer maintained. Please use bybit-api from @tiagosiebler

An unofficial node.js lowlevel wrapper for the Bybit Cryptocurrency Derivative exchange API.

Installation

npm install --save @pxtrn/bybit-api

Usage

Create API credentials at bybit (obviously you need to be logged in):

Rest client

const {RestClient} = require('@pxtrn/bybit-api');

const API_KEY = 'xxx';
const PRIVATE_KEY = 'yyy';

const client = new RestClient(API_KEY, PRIVATE_KEY);

client.changeUserLeverage({leverage: 4, symbol: 'ETHUSD'})
  .then(result => {
    console.log(result);
  })
  .catch(err => {
    console.error(error);
  });

See rest client api docs for further information.

Websocket client

const {WebsocketClient} = require('@pxtrn/bybit-api');

const API_KEY = 'xxx';
const PRIVATE_KEY = 'yyy';

const ws = new WebsocketClient({key: API_KEY, secret: PRIVATE_KEY});

ws.subscribe(['position', 'execution', 'trade']);
ws.subscribe('kline.BTCUSD.1m');

ws.on('open', function() {
  console.log('connection open');
});

ws.on('update', function(message) {
  console.log('update', message);
});

ws.on('response', function(response) {
  console.log('response', response);
});

ws.on('close', function() {
  console.log('connection closed');
});

ws.on('error', function(err) {
  console.error('ERR', err);
});

See websocket client api docs for further information.

Customise Logging

Pass a custom logger which supports the log methods silly, debug, notice, info, warning and error, or override methods from the default logger as desired:

const { RestClient, WebsocketClient, DefaultLogger } = require('@pxtrn/bybit-api');

// Disable all logging on the silly level
DefaultLogger.silly = () => {};

const API_KEY = 'xxx';
const PRIVATE_KEY = 'yyy';

const ws = new WebsocketClient({key: API_KEY, secret: PRIVATE_KEY}, DefaultLogger);

Donations

If this library helps you to trade better on bybit, feel free to donate a coffee, or create a bybit account using my ref link.