I am happy to announce that last week we released our new algorithm, TrendCalculus v1.0, and can confirm the release is running for other users as intended. The code can be found here on our public repo. It is published under a GPLv3 license.
The code package delivers a fast command line tool for doing “Multi-Scale Trend Change Detection” over streams of time series data that aggregate transactions and thus reflect and summarise large scale human behaviours.
Internally the code is written to deliver a highly efficient model-free method for producing a multi-scale hierarchy of trends over a times-series. The method is bottom-up, meaning that change points are identified at the highest level of granularity, and these in turn can be reprocessed to generalise the changes further up to broader levels. The final effect is to construct a trend-wise partitioning of the time series into what we are calling a tree of trends.
If you are doing piecewise linear approximation over a time-series, my hypothesis is that TrendCalculus will be able to deliver a partitioning that meets your needs, and which is efficient and practical to use.
Over the coming weeks and months I’ll be writing up more about the method and its downstream uses. The publication of these studies will be announced on the dedicated google group I set up to foster a community of data scientists interested in developing an advanced data science of trends, a numeric algorithm based trend analytics discipline that is conspicuous in its absence.
If you wish to get involved, or to learn more, feel free to get in touch.