1. 项目背景与核心价值
金融时间序列预测一直是量化投资和算法交易领域的核心课题。在华尔街和全球主要金融机构中,利用神经网络预测股价走势已经形成了一套成熟的方法论体系。不同于传统的统计模型(如ARIMA、GARCH),神经网络能够自动捕捉市场中的非线性关系,尤其适合处理股票价格这种具有高噪声、非平稳特性的时间序列数据。
这个项目选择了IBM公司股票作为研究对象,原因有三:首先,IBM作为百年科技蓝筹股,其股价数据具有足够的长度和连续性;其次,科技股受行业基本面影响较大,适合验证模型对复杂因素的捕捉能力;最重要的是,IBM股价波动适中,既不像某些小盘股那样剧烈波动,也不像公用事业股那样过于平稳,是测试预测模型的理想样本。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 神经网络模型选型解析
2.1 NARX网络:外部因素融合专家
NARX(Nonlinear AutoRegressive with eXogenous inputs)网络是我在这个项目中首推的模型架构。它的核心优势在于能够同时处理:
- 股价自身的时间序列特征(通过自回归项)
- 外部宏观经济指标(如利率、CPI等)
- 行业特定数据(如科技指数、半导体出货量)
matlab复制% NARX网络典型结构示例
net = narxnet(1:2,1:2,10); % 2阶延迟输入,10个隐藏神经元
[Xs,Xi,Ai,Ts] = preparets(net,features,targets);
net = train(net,Xs,Ts,Xi,Ai);
实际应用中,我发现NARX对输入数据的预处理要求较高。必须确保:
- 外部数据与股价数据时间对齐(处理节假日差异)
- 所有特征需进行标准化(建议使用z-score)
- 延迟阶数需要通过互信息法确定
2.2 GRNN网络:小样本快速响应专家
广义回归神经网络(GRNN)在数据量有限时表现优异。我曾用2018年IBM股价数据测试,当训练样本少于200天时,GRNN的预测误差比BP网络低约15%。其核心参数是平滑因子σ,我的经验公式是:
σ = 0.5 * median_distance^(1/3)
其中median_distance是样本间欧氏距离的中位数。在Matlab中实现时:
matlab复制net = newgrnn
