答案 0 :(得分:70)
时间序列回归的经典方法是:
auto-regressive models(有关于它们的全部文献)
傅立叶分解或类似提取信号的周期分量(即数据中隐藏的振荡)
我所知道的其他不太常见的方法是
Slow Feature Analysis,一种提取时间序列驱动力的算法,例如parameters behind a chaotic signal
神经网络(NN)方法,使用经常性NN(即构建为处理时间信号)或经典前馈NN,接收过去数据的输入部分,并尝试预测未来的一个点;后者的优点是,已知经常性的NN在考虑到遥远的过去时会遇到问题
在我看来,对于财务数据分析,重要的是不仅要获得时间序列的最佳推测推断,而且要获得可靠的置信区间,因为由此产生的投资策略可能会有很大不同。概率方法,如高斯过程,为您提供“免费”,因为它们返回可能的未来值的概率分布。使用经典统计方法,您必须依赖bootstrapping techniques。
有许多Python库提供统计和机器学习工具,以下是我最熟悉的工具:
答案 1 :(得分:5)
我不知道python库,但R中有很好的预测算法是开源的。有关时间序列预测的代码和参考,请参阅forecast包。
答案 2 :(得分:3)
仅谈及它们背后的算法,我最近在项目中使用了double exponential smoothing,并且当数据出现趋势时,通过预测新值表现良好。
实现非常简单,但是对于你的情况,算法可能还不够精确。
答案 3 :(得分:3)
您是否曾尝试Autocorrelation查找时间序列中的期刊模式? 您可以使用numpy.correlate函数执行此操作。
答案 4 :(得分:3)
如何处理分类,回归,聚类,预测和相关任务的时间结构化输入有两种方法:
python包tsfresh从包含时间序列的pandas.DataFrame计算大量此类功能。您可以在http://tsfresh.readthedocs.io找到其文档。
免责声明:我是tsfresh的作者之一。
答案 5 :(得分:2)
Group method of data handling广泛用于预测财务数据。
答案 6 :(得分:1)
虽然它没有直接回答这个问题,但经过大量关于适合时间序列预测和顺序数据挖掘的图书搜索后,我遇到了这个研讨会页面http://sequenceanalysis.github.io/,其中有关于马尔可夫链拟合的有趣代码。我希望它也可以帮助其他人:)
答案 7 :(得分:0)
如果您想了解使用Python进行的时间序列预测,那么下面的链接将非常有帮助。
https://github.com/ManojKumarMaruthi/Time-Series-Forecasting