UNPKG

@azteam/candlestick-chart

Version:

N/A

121 lines (120 loc) 4.41 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.generateTickBBPercentRange = generateTickBBPercentRange; exports.generateTickCandleSizeRange = generateTickCandleSizeRange; exports.generateTickColor = generateTickColor; exports.generateTickCompare = generateTickCompare; exports.generateTickProfitPercentRange = generateTickProfitPercentRange; exports.generateTickSMACompare51020 = generateTickSMACompare51020; exports.generateTickSMACompareBB = generateTickSMACompareBB; var _lodash = _interopRequireDefault(require("lodash")); var _constant = require("./constant"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } function generateTickSMACompare51020(name, type, tick) { var arr = _lodash["default"].orderBy([{ key: 5, value: tick["".concat(type, "_sma_5")] }, { key: 10, value: tick["".concat(type, "_sma_10")] }, { key: 20, value: tick["".concat(type, "_sma_20")] }], ['value'], ['desc']); return "".concat(name, "_").concat(type, "_sma_straight_").concat(_lodash["default"].map(arr, 'key').join('_')); } function generateTickSMACompareBB(name, type, tick) { return [5, 10].map(function (i) { var sma = tick["".concat(type, "_sma_").concat(i)]; var value = 'UNKNOWN'; if (sma > tick.bb_sma) { if (sma > tick.bb_upper_band) { value = 'TOP'; } else { value = 'ABOVE'; } } else if (sma <= tick.bb_sma) { if (sma < tick.bb_lower_band) { value = 'BOTTOM'; } else { value = 'BELOW'; } } return "".concat(name, "_").concat(type, "_sma_").concat(i, "_bb_").concat(value); }); } function generateTickBBPercentRange(name, tick) { var value = 6; if (tick.bb_percent <= 0) { value = 0; } else if (tick.bb_percent <= 0.2) { value = 1; } else if (tick.bb_percent <= 0.4) { value = 2; } else if (tick.bb_percent <= 0.6) { value = 3; } else if (tick.bb_percent <= 0.8) { value = 4; } else if (tick.bb_percent <= 1) { value = 5; } return "".concat(name, "_bbp_range_").concat(value); } function generateTickProfitPercentRange(name, tick, currentTick) { var value = 0; if (tick.profit_percent < 0) { value = Math.floor(tick.profit_percent / 0.5); } else if (tick.profit_percent > 0) { value = Math.ceil(tick.profit_percent / 0.5); } var currentValue = 0; if (currentTick.profit_percent < 0) { currentValue = Math.floor(currentTick.profit_percent / 0.5); } else if (currentTick.profit_percent > 0) { currentValue = Math.ceil(currentTick.profit_percent / 0.5); } value = value >= 10 ? 10 : value; value = value <= -10 ? -10 : value; currentValue = currentValue >= 10 ? 10 : currentValue; currentValue = currentValue <= -10 ? -10 : currentValue; return "".concat(name, "_profit_per_range_").concat(value, "_").concat(currentValue); } function generateTickCandleSizeRange(name, tick, currentTick) { var value = 0; if (tick.color === _constant.CANDLE_COLOR.RED) { value = Math.floor(tick.candle_size / 0.5); } else if (tick.color === _constant.CANDLE_COLOR.GREEN) { value = Math.ceil(tick.candle_size / 0.5); } var currentValue = 0; if (currentTick.color === _constant.CANDLE_COLOR.RED) { currentValue = Math.floor(currentTick.candle_size / 0.5); } else if (currentTick.color === _constant.CANDLE_COLOR.GREEN) { currentValue = Math.ceil(currentTick.candle_size / 0.5); } value = value >= 10 ? 10 : value; value = value <= -10 ? -10 : value; currentValue = currentValue >= 10 ? 10 : currentValue; currentValue = currentValue <= -10 ? -10 : currentValue; return "".concat(name, "_candle_size_range_").concat(value, "_").concat(currentValue); } function generateTickColor(name, tickPrev2, tickPrev1, tickCurrent) { return "".concat(name, "_color_").concat(tickPrev2.color, "_").concat(tickPrev1.color, "_").concat(tickCurrent.color); } function generateTickCompare(name, tickPrev2, tickPrev1, tickCurrent) { return ['close', 'high', 'low'].map(function (i) { var arr = _lodash["default"].orderBy([{ key: 2, value: tickPrev2[i] }, { key: 1, value: tickPrev1[i] }, { key: 0, value: tickCurrent[i] }], ['value'], ['desc']); return "".concat(name, "_straight_").concat(i, "_").concat(_lodash["default"].map(arr, 'key').join('_')); }); }