原文链接:Short-term stock price prediction based on echo state networks
展示课件链接:Short-Term Stock Price Prediction based on Echo State Network
这篇文章讲的是将Echo State Network(回声状态网络)应用于股票数据的短期预测中。我之前没有听说过ESN,而这篇文章在ESN之外的创新也不多,所以算是介绍这样一个工具吧。
Echo State Network
ESN是什么呢?这里直接应用一篇个人认为写的很好的教学文章,不过这里我也准备用简单的语言讲一讲个人的理解。
ESN拥有一个叫做reservoir的状态储存池,我们将其记为向量,对于这个
向量进行某种迭代
(1)
其中f是任意非线性函数。现在我们充当了一种Memory的角色。
接着令表示第i时刻的输入,
表示第i时刻的目标输出,我们将这个输入输出加到刚才的 (1)里面,得到实际的迭代式
(2)
是不是感觉这里面就像回声一样在里面荡来荡去,这里就对了。
最后输出为
(3)
在式子(3)里面,,
以及
已知,则可以用线性回归训练啦。
可以看出该算法有如下特点:
- 训练是最小二乘法,速度快
- 不会陷入局部最优解
另外也有一些需要注意的地方:
- W不能太大,否则可能越乘越大,可以通过W的特征值的最大值的大小来限制
- 为了使效果更优,W最好是稀疏矩阵(比如95%的零)
使用ESN预测短期股价
先说一些论文中的细节
- 论文中非线性函数
的选择为
(4)
- 通过赫斯特指数选择训练输入数据,文章里面选择了Hurst指数最接近1的序列进行训练,原因不明…… 也许是因为hurst接近1的时候,序列特征更持久?
相关文献:Some comments on Hurst exponent and the long memory processes on capital markets - 通过各种技术指标可以有效的提高效果,但是可能存在过拟合,所以通过PCA来进行数据降维。
想法与疑问
- 一般的论文都通过平均百分比误差来表示效果,感觉这东西还是不太容易量化实际的收益……
- 这里的LinearRegression是最简单的版本,我们是否可以给他加入更多的优化,比如局部回归,或者对于不同的部分采用不同的回归,甚至可以把决策树套进来。