Package for time series?

Are there any Julia packages for time series analysis? Like arma, arima, vector autoregressions etc.

I’ve tried looking around a bit, but didn’t find anything. Thanks.

There is some progress in the community, see e.g. : https://towardsdatascience.com/arima-models-with-turing-jl-81dcf2a1094c

In ChaosTools, there is some basic nonlinear timeseries analysis techniques as well: https://juliadynamics.github.io/DynamicalSystems.jl/dev/chaos/nlts/

Have a look in the “related software” section of this website as well: https://juliadynamics.github.io/JuliaDynamics/

I am interested in time series analysis tools in general, and always want to bring more stuff like that to Julia. If you have any updates on this, please let me know either via here or the #dynamics-bridge Slack channel!

1 Like

Thanks for the info. I might translate some models from Python or R then if I get the time. Might be a good opportunity to learn Julia properly!

1 Like

If you do go that route you may be very interested in the following package: https://github.com/joshday/OnlineStats.jl

In my package I have some really rudimentary time series models… Moving average, control charts, echo state networks… No ARIMA/ARX/Holt Winter/etc because I got lazy.

Something like https://pkg.julialang.org/docs/ControlSystemIdentification/FH1SZ/0.1.5/ ?

This package is no longer maintained, but updating it to work on Julia 1+ could be a good learning project if you’re looking for one!

Some great tips, thanks guys!

I have a small little package for efficiently simulating univariate, vector-, and matrix-valued ARMA processes here. I have some other convenient things implemented for univariate processes, and I really ask that everything be on the stack for vector- and matrix-valued series. So if you want to work on a giant vector ARMA process, this might not immediately be useful (although I do plan to deal with that at some point soon-ish).

I haven’t implemented estimation yet, but could very quickly make an example file for doing maximum likelihood for a univariate process, for example.

1 Like