最近看《DIVE INTO DEEP LEARNING》,根据其中的RNN章节,找个项目进行实践一下。首先说效果,很不理想,这也是意料之中的,毕竟股市、债市各种不可控、不可量化的因素太多了,权当做练习RNN就行。
目的:根据前N(5,10,15)天的行情,使用GRU,LSTM,BiLSTM对可转债次日开盘价进行预测。
数据:把每只转债的当日行情,按分钟处理,这样每天就有242组数据,每组数据包含(当时价格、昨日收盘价、今日开盘价,当时均价,当时交易量)五个特征。时间步设置为N,所以输入 数据的维度为[N,242,5]。
数据来源:新浪和中泰近一年的每日分时数据。
模型:GRU,LSTM,BiLSTM
激活函数:ReLU,Tanh
损失函数:MSELoss,LiLoss
优化函数:Adam,SGD
学习率:0.001
硬件:使用RTX 2060进行加速
瓶颈:因为所有数据都存储在mysql表中,每次加载处理数据占用时间最多。使用GRU/LSTM,GPU DUDA占用率40%,使用BiLSTM是占用率99%。
训练结果:对训练后的参数应用于新数据上,只能说大部分预测数据接近于开盘价,但是无法预测大幅度变化的开盘价。
总结:好像对起伏不大的数据有点作用,但是对真正的股市、债市意义不大。
作者通过《深入浅出深度学习》一书中的RNN概念,尝试预测股市中可转债的次日开盘价。使用GRU、LSTM和BiLSTM模型,结合历史行情数据(包括价格、交易量等),发现模型对小幅度波动数据有效,但在实际股市环境中预测大幅变动受限。主要瓶颈在于数据处理效率和GPU资源占用。
1847

被折叠的 条评论
为什么被折叠?



