UNPKG

series-processing

Version:

Time-series processing for forex, market analysis, including MA, EMA,...

103 lines (95 loc) 3.16 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } /** * Add 2 series * * <output series> = <input 1 series> + <input 2 series> * OR * <output series> = <input 1 series> + <number> */ var add = exports.add = function add(outputKey, inputKey1, inputKey2) { return function (record) { if (typeof record === 'undefined') { return null; } return _defineProperty({}, outputKey, (isNaN(inputKey1) ? record[inputKey1] || 0 : inputKey1) + (isNaN(inputKey2) ? record[inputKey2] || 0 : inputKey2)); }; }; /** * Subtract 2 series * * <output series> = <input 1 series> - <input 2 series> * OR * <output series> = <input 1 series> - <number> */ var subt = exports.subt = function subt(outputKey, inputKey1, inputKey2) { return function (record) { if (typeof record === 'undefined') { return null; } return _defineProperty({}, outputKey, (isNaN(inputKey1) ? record[inputKey1] || 0 : inputKey1) - (isNaN(inputKey2) ? record[inputKey2] || 0 : inputKey2)); }; }; /** * Multiply 2 series * * <output series> = <input 1 series> * <input 2 series> * OR * <output series> = <input 1 series> * <number> */ var mult = exports.mult = function mult(outputKey, inputKey1, inputKey2) { return function (record) { if (typeof record === 'undefined') { return null; } return _defineProperty({}, outputKey, (isNaN(inputKey1) ? record[inputKey1] || 0 : inputKey1) * (isNaN(inputKey2) ? record[inputKey2] || 0 : inputKey2)); }; }; /** * Divide 2 series * * <output series> = <input 1 series> / <input 2 series> * OR * <output series> = <input 1 series> / <number> */ var div = exports.div = function div(outputKey, inputKey1, inputKey2) { return function (record) { if (typeof record === 'undefined') { return null; } return _defineProperty({}, outputKey, (isNaN(inputKey1) ? record[inputKey1] || 0 : inputKey1) / (isNaN(inputKey2) ? record[inputKey2] || 0 : inputKey2)); }; }; /** * Modular 2 series * * <output series> = <input 1 series> % <input 2 series> * OR * <output series> = <input 1 series> % <number> */ var mod = exports.mod = function mod(outputKey, inputKey1, inputKey2) { return function (record) { if (typeof record === 'undefined') { return null; } return _defineProperty({}, outputKey, (isNaN(inputKey1) ? record[inputKey1] || 0 : inputKey1) % (isNaN(inputKey2) ? record[inputKey2] || 0 : inputKey2)); }; }; /** * Pow 2 series * * <output series> = <input 1 series> * <input 2 series> * OR * <output series> = <input 1 series> * <number> */ var pow = exports.pow = function pow(outputKey, inputKey1, inputKey2) { return function (record) { if (typeof record === 'undefined') { return null; } return _defineProperty({}, outputKey, Math.pow(isNaN(inputKey1) ? record[inputKey1] || 0 : inputKey1, isNaN(inputKey2) ? record[inputKey2] || 0 : inputKey2)); }; };