9 Tips for AnyStock Best Performance

AnyChart Stock and Financial Charts, our tool for visualizing time-based data, is sophisticated and fast at the same time - but with some simple tricks, you can improve its performance even more. Here are nine tips for AnyStock best peformance with the links to detailed instructions and samples in our documentation:

1. When you have thousands of points on the chart, it is a good idea to use data grouping. Ungrouped data always slows the chart due to the fact that you actually have thousands of objects added to the plot. Grouping limits the number of objects displayed and keeps the ability to zoom in and see actual data.

2. Ungrouped data is particularly slow when you have a lot of peaks (i.e. sets like (1,-1,1,-1,1,1…) with more than a thousand of points). The reason is Flash poor performance with drawing vertical lines. This problem can be solved by turning on grouping, but please do not forget that the scroller thumbnail series always shows ungrouped data, so it is better to turn it off. To learn how to do it, please see: Scroller without Data Provider.

If you operate “peaky” data sets, by the same reason a Stick series performs better than a Bar series, Line — even better than Stick, and the utmost performance can be reached with a Marker series.

3. Using live update options, you should be careful with the number of technical indicators - due to their nature they are recalculated when new data arrives and sometimes may slow things down. However, calculation takes only 10% of time, and 90% is consumed by redrawing, so you should note this only when data set has more than 10.000 points and you are using more than 10 indicators.

4. The best timestamp format is %T since it is not converted on a data set parsing stage and is used as is. The %u timestamp format is good too. All “normal” date/time formats slow the performance down because they need to be converted into %T before being used by the internal data storage. See more: Timestamps in Milliseconds.

5. If you are using live update with the appendData() method, it is better to do, for example, one update with 5 rows each 10 seconds, rather than five updates with 1 point each 2 seconds.

6. Annotations slow the rendering down when you have more than a hundred of them on a chart (this will be improved in the future versions).

7. In case of a bad mouse-over experience, you may consider dropping the use of the {%SeriesIcon} token in the legend and use either text coloring or a UTF full block (U+2588) symbol.

8. If the Scroller responsiveness is poor, try to use the former without a data provider. To learn how, see the sample XML: Scroller without Data Provider.

9. If you are using ungrouped data, and the mouse-over performance is poor, please check if markers are enabled and consider disabling them.

Leave a Reply