Ran it again with config.debug set:
...
gox was down for a bit, so it seems to be its trying to calculate EMA's on times where there is just no data. So number * NaN = NaN right... ( just like 234234*0=0). This will happen until the candle gets pushed out of the array i guess.
I think i have a fix which sorts this out, but saying this, i dont know gekko in its entirety at all. And these could have some adverse effects.
in methods/realtime-candle-fetcher.js
line 171: calculateCandle function
var bucket = this.buckets[this.currentBucket];
// because buckets (and their contents) are chronologically reversed
// the _last_ item is the open and the _first_ is the close
if(typeof _.last(bucket) == 'undefined')
return false;
if(typeof _.max(bucket) == 'undefined')
return false;
if(typeof _.min(bucket) == 'undefined')
return false;
if(typeof _.first(bucket) == 'undefined')
return false;
this.candles.open.push(_.last(bucket));
this.candles.high.push(_.max(bucket));
this.candles.low.push(_.min(bucket));
this.candles.close.push(_.first(bucket));
log.debug('calculated candle:', this.currentBucket);
this.emit('calculated candle');
if(this.currentBucket === 0)
this.emit('calculated new candle');
}
I added the sexy if statements to skip over underfined values.
but as i said, these could have some bad effects. I've only been using gekko for about 4 days and am no way in a position to predict what this would do:P