- LSTM-work.py
[color=rgba(0, 0, 0, 0.75)]
LSTM; GARCH; 股票波动率; Python
[color=rgba(0, 0, 0, 0.75)]
学习了金融数据分析这门课,对Python这个工具又有了新的认识,真是太强大了!本小白的报告是基于哈工大硕士论文田晓丹《基于LSTM与多GARCH型混合模型的股价波动性预测的实证分析》的方法,研究预测时间序列中证500指数价格波动率最优的模型,在GARCH模型基础上结合神经网络LSTM算法,对解释变量及GARCH得到的参数进行多次训练得到损失函数RMSE和MAE最小的混合模型。做完此实验能让我们对GARCH族模型的原理有更好的理解,也为在金融中应用算法提供思路,大家快来学习一下吧!
[color=rgba(0, 0, 0, 0.75)]GARCH族模型
[color=rgba(0, 0, 0, 0.75)]
GARCH(1,1)模型;EGARCH(1,1)模型;TGARCH(1,1)模型。这三个模型递进地改进了杠杆效应即对称效应,就是利空和利好消息对金融市场的冲击不同。通过Eviews对中证500指数收益率总样本的10%进行样本外预测,并根据损失函数RMSE和MAE大小,得到最小的损失模型为TGARCH,得到各参数的列估计值,具体可通过Eviews里面生成的模型残差和方差来计算得到各参数的列估计值。
[color=rgba(0, 0, 0, 0.75)]LSTM算法
[color=rgba(0, 0, 0, 0.75)]
LSTM 神经网络属于时间递归神经网络。基于对循环神经网络的优化,LSTM神经网络能够解决循环神经网络的梯度缺陷。LSTM神经网络包括存储器块(记忆单元Cell)和三个自适应乘法门,即输入门(Input Gate)、输出门(Output Gate)和遗忘门(Forget Gate)[10]。LSTM的训练过程也是复杂的,简单来说是其输入门的输入值由三部分组成,即输入层中神经元的输出向量,前一个隐含层中的记忆单元的输出向量,前一时刻记忆单元的历史存储信息。
[color=rgba(0, 0, 0, 0.75)]基于LSTM与GARCH族混合模型的Python代码