first commit
This commit is contained in:
commit
aa7869eb33
386 files changed
+69375
No files matched your search
@@ -0,0 +1,67 @@
|
||||
var _ = require('lodash');
|
||||
var prompt = require('prompt-lite');
|
||||
var moment = require('moment');
|
||||
|
||||
var util = require('./util');
|
||||
var config = util.getConfig();
|
||||
var dirs = util.dirs();
|
||||
var log = require(dirs.core + 'log');
|
||||
|
||||
var scan = require(dirs.tools + 'dateRangeScanner');
|
||||
|
||||
// helper to store the evenutally detected
|
||||
// daterange.
|
||||
var setDateRange = function(from, to) {
|
||||
config.backtest.daterange = {
|
||||
from: moment.unix(from).utc().format(),
|
||||
to: moment.unix(to).utc().format(),
|
||||
};
|
||||
util.setConfig(config);
|
||||
}
|
||||
|
||||
|
||||
module.exports = function(done) {
|
||||
scan((err, ranges) => {
|
||||
|
||||
if(_.size(ranges) === 0)
|
||||
util.die('No history found for this market', true);
|
||||
|
||||
if(_.size(ranges) === 1) {
|
||||
var r = _.first(ranges);
|
||||
log.info('Gekko was able to find a single daterange in the locally stored history:');
|
||||
log.info('\t', 'from:', moment.unix(r.from).utc().format('YYYY-MM-DD HH:mm:ss'));
|
||||
log.info('\t', 'to:', moment.unix(r.to).utc().format('YYYY-MM-DD HH:mm:ss'));
|
||||
|
||||
|
||||
setDateRange(r.from, r.to);
|
||||
return done();
|
||||
}
|
||||
|
||||
log.info(
|
||||
'Gekko detected multiple dateranges in the locally stored history.',
|
||||
'Please pick the daterange you are interested in testing:'
|
||||
);
|
||||
|
||||
_.each(ranges, (range, i) => {
|
||||
log.info('\t\t', `OPTION ${i + 1}:`);
|
||||
log.info('\t', 'from:', moment.unix(range.from).utc().format('YYYY-MM-DD HH:mm:ss'));
|
||||
log.info('\t', 'to:', moment.unix(range.to).utc().format('YYYY-MM-DD HH:mm:ss'));
|
||||
});
|
||||
|
||||
prompt.get({name: 'option'}, (err, result) => {
|
||||
|
||||
var option = parseInt(result.option);
|
||||
if(option === NaN)
|
||||
util.die('Not an option..', true);
|
||||
|
||||
var range = ranges[option - 1];
|
||||
|
||||
if(!range)
|
||||
util.die('Not an option..', true);
|
||||
|
||||
setDateRange(range.from, range.to);
|
||||
return done();
|
||||
});
|
||||
|
||||
});
|
||||
}
|
||||
Reference in new issue
Block a user