UNPKG

bot18

Version:

A high-frequency cryptocurrency trading bot by Zenbot creator @carlos8f

36 lines (29 loc) 926 B
/* * Copyright (c) 2012 Mathieu Turcotte * Licensed under the MIT license. */ var util = require('util'); var BackoffStrategy = require('./strategy'); /** * Fibonacci backoff strategy. * @extends BackoffStrategy */ function FibonacciBackoffStrategy(options) { BackoffStrategy.call(this, options); this.backoffDelay_ = 0; this.nextBackoffDelay_ = this.getInitialDelay(); } util.inherits(FibonacciBackoffStrategy, BackoffStrategy); /** @inheritDoc */ FibonacciBackoffStrategy.prototype.next_ = function() { var backoffDelay = Math.min(this.nextBackoffDelay_, this.getMaxDelay()); this.nextBackoffDelay_ += this.backoffDelay_; this.backoffDelay_ = backoffDelay; return backoffDelay; }; /** @inheritDoc */ FibonacciBackoffStrategy.prototype.reset_ = function() { this.nextBackoffDelay_ = this.getInitialDelay(); this.backoffDelay_ = 0; }; module.exports = FibonacciBackoffStrategy;