
循环神经网络
|
197
RNN
和有效市场
基于
RNN
的金融
价格序列的预测结果与第
6
章中用来说明
EMH
的
OLS
回
归方法的预测结果一致。第
6
章演示了在最小二乘意义上,当日价格是明日
价格的最佳预测指标。在本章,我们可以看到将
RNN
应用于价格数据不会
产生任何其他见解。
8.4
金融收益率序列
正如之前的分析所表明的那样,预测收益率可能比预测价格更容易。因此,下面的
Python
代码根据对数收益率重复了前面的分析。
In [54]: data = generate_data()
In [55]: data['r'] = np.log(data / data.shift(1))
In [56]: data.dropna(inplace=True)
In [57]: data = (data - data.mean()) / data.std()
In [58]: r = data['r'].values
In [59]: r = r.reshape((len(r), -1))
In [60]: g = TimeseriesGenerator(r, r, length=lags, batch_size=5)
In [61]: model = create_rnn_model()
In [62]: %%time
model.fit_generator(g, epochs=500, steps_per_epoch=10,
verbose=False)
CPU times: user 20.4 s, sys: 4.2 s, ...