项目简介
本项目基于Python语言,运用隐马尔可夫模型(HMM)对股票市场状态进行预测。围绕三个具体问题展开,分别采用前向 - 后向算法、Viterbi算法进行市场状态预测,以前者预测结果为基础对未来28天市场走向进行预测,并对预测结果进行分析。
项目的主要特性和功能
- 前向 - 后向算法预测:在
FB_algorithm.py
文件中实现,利用前向传播和后向传播算法分别计算alpha矩阵和beta矩阵,两者乘积归一化后得到100天的隐藏变量预测矩阵,生成预测状态链。 - Viterbi算法预测:
Viterbi_algorithm.py
文件依据Viterbi算法流程编写伪代码,计算最优路径以预测市场状态。 - 未来市场走向预测:使用
FuturePrediction
函数,以前向 - 后向算法预测的前100天模型为基础,对未来28天市场走向进行预测,通过随机抽样分析结果,计算预测值与真实值的差别。
安装使用步骤
前提条件
确保本地已安装Python 3.8环境,推荐使用PyCharm作为开发工具。
操作步骤
- 下载本项目的源码文件到本地。
- 打开项目文件夹,定位到相应的代码文件。
- 第一小问:运行
FB_algorithm.py
文件,程序会根据从hmm_params.mat
读取的参数进行前向 - 后向算法计算,输出100天的隐藏变量预测矩阵和预测状态链。 - 第二小问:运行
Viterbi_algorithm.py
文件,依据算法流程和伪代码实现,输出最优路径。 - 第三小问:运行包含
FuturePrediction
函数的代码文件,以前向 - 后向算法的预测结果为输入,完成未来28天市场走向的预测并分析结果。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】