bfx-api-node-plugin-managed-candles

1.0.3 • Public • Published

Bitfinex Managed Candle Dataset Plugin for the Node.JS API

Build Status

This plugin maintains a full sorted candle set on its internal state, and emits it with every candle update with the event name data:managed:candles. The internal dataset is populated when receiving data from candle channels.

Note that the manager proxies the event as managed:candles. If subscribing on a socket instance (wsState.ev.on(...)) use the internal event name, otherwise use the manager name with manager.onWS(...).

Features

  • Maintains an up-to-date array of all received candles
  • Emits a new 'managed:candles' event with the full dataset on each update

Installation

npm i --save bfx-api-node-plugin-managed-candles

Quickstart

const { Manager } = require('bfx-api-node-core')
const ManagedCandlesPlugin = require('bfx-api-node-plugin-managed-candles')

const mgr = new Manager({
  plugins: [ManagedCandlesPlugin()]
})

// set up a connection, event listeners, etc

mgr.onWS('managed:candles', {}, (candles) => {
  debug(JSON.stringify(candles.toJS(), null, 2))
})

Docs

For an executable example, see examples/usage.js

Example

const debug = require('debug')('bfx:api:plugins:managed-candles:example')
const { Manager, subscribe } = require('bfx-api-node-core')
const ManagedCandlesPlugin = require('../')

const SYMBOL = 'tBTCUSD'
const mgr = new Manager({
  transform: true,
  plugins: [ManagedCandlesPlugin()]
})

mgr.onWS('open', {}, () => debug('connection open'))

// Receive updated dataset
mgr.onWS('managed:candles', {}, (candles) => {
  debug('updated dataset for %s contains %d candles', SYMBOL, candles.length)
  debug('latest candle follows')
  debug(JSON.stringify(candles[0].toJS(), null, 2))
})

const wsState = mgr.openWS()

subscribe(wsState, 'candles', { key: `trade:1m:${SYMBOL}` })

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Readme

Keywords

Package Sidebar

Install

npm i bfx-api-node-plugin-managed-candles

Weekly Downloads

24

Version

1.0.3

License

MIT

Unpacked Size

8.79 kB

Total Files

15

Last publish

Collaborators

  • bitfinexorg
  • vigan-abd
  • prdn