UNPKG

bluebot

Version:

A bitcoin trading bot for auto trading at various exchanges

48 lines (38 loc) 1.34 kB
var mongojs = require('mongojs'); var mongoUtil = require('./util'); var util = require('../../core/util.js'); var config = util.getConfig(); var dirs = util.dirs(); // verify the correct dependencies are installed var pluginHelper = require(`${dirs.core}pluginUtil`); var pluginMock = { slug: 'mongodb adapter', dependencies: config.mongodb.dependencies } // exit if plugin couldn't be loaded var cannotLoad = pluginHelper.cannotLoad(pluginMock); if (cannotLoad) { util.die(cannotLoad); } var mode = util.bluebotMode(); var collections = [ mongoUtil.settings.historyCollection, mongoUtil.settings.adviceCollection ] var connection = mongojs(config.mongodb.connectionString, collections); var collection = connection.collection(mongoUtil.settings.historyCollection); if (mode === 'backtest') { var pair = mongoUtil.settings.pair.join('_'); collection.find({ pair }).toArray((err, docs) => { // check if we've got any records if (err) { util.die(err); } if (docs.length === 0) { util.die(`History table for ${config.watch.exchange} with pair ${pair} is empty.`); } }) } if(mongoUtil.settings.exchange) { collection.createIndex({start: 1, pair: 1}, {unique: true}); // create unique index on "time" and "pair" } module.exports = connection;