Skip to content

Commit 1c4ae4d

Browse files
committed
Add name to indicators
1 parent f794625 commit 1c4ae4d

1 file changed

Lines changed: 13 additions & 6 deletions

File tree

src/config/updateIndicators.js

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@ export default (chart, newData, indicatorConfs) => {
2121
const seriesDataByIndicators = indicatorConfs.map(conf => {
2222
switch (conf.class.toLowerCase()) {
2323
case 'sma':
24-
return [simpleMovingAverageArray(yData, conf)];
24+
return [{ name: 'Simple moving average', data: simpleMovingAverageArray(yData, conf) }];
2525
case 'ema':
26-
return [exponentialMovingAverageArray(yData, conf)];
26+
return [{ name: 'Exponential moving average', data: exponentialMovingAverageArray(yData, conf) }];
2727
case 'bb': {
2828
const bbData = bollingerBandsArray(yData, conf);
2929
const middle = [];
@@ -36,27 +36,34 @@ export default (chart, newData, indicatorConfs) => {
3636
lower.push(d[2]);
3737
});
3838

39-
return [middle, upper, lower];
39+
return [
40+
{ name: 'Bollinger band', data: middle },
41+
{ name: 'Bollinger band', data: upper },
42+
{ name: 'Bollinger band', data: lower }
43+
];
4044
}
4145
default:
4246
return [];
4347
}
4448
});
4549

46-
const flattenSeriesData = [].concat(...seriesDataByIndicators);
50+
const flattenIndicatorsData = [].concat(...seriesDataByIndicators);
4751

4852
indicatorsSeriesPoolIds.forEach((seriesId, idx) => {
49-
const seriesData = flattenSeriesData[idx];
53+
const indicatorObj = flattenIndicatorsData[idx];
5054
const indicatorSeries = chart.get(seriesId);
5155

52-
if (!seriesData) {
56+
if (!indicatorObj) {
5357
indicatorSeries.setData([], false);
5458
return;
5559
}
5660

61+
const seriesData = indicatorObj.data;
62+
5763
const indexOffset = newData.length - seriesData.length;
5864

5965
const indicatorData = seriesData.map((y, i) => [+newData[i + indexOffset].epoch * 1000, y]);
6066
indicatorSeries.setData(indicatorData, false);
67+
indicatorSeries.update({ name: indicatorObj.name }, false);
6168
});
6269
};

0 commit comments

Comments
 (0)