💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
基于蜣螂算法、减法优化器算法、鲸鱼优化算法优化极限学习机的股票回归预测研究
⛳️赠与读者
👨💻做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。当哲学课上老师问你什么是科学,什么是电的时候,不要觉得这些问题搞笑。哲学是科学之母,哲学就是追究终极问题,寻找那些不言自明只有小孩子会问的但是你却回答不出来的问题。建议读者按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能让人胸中升起一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它居然给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“躺平”上的尘埃吧。
或许,雨过云收,神驰的天地更清朗.......🔎🔎🔎
💥1 概述
基于蜣螂算法、减法优化器算法、鲸鱼优化算法优化极限学习机的股票回归预测研究
一、研究背景与意义
股票市场预测是金融领域的重要课题,但受非线性、高噪声和多重影响因素制约,传统模型常面临过拟合、收敛速度慢等问题。极限学习机(ELM)凭借快速训练和泛化能力成为有效工具,但其性能高度依赖隐含层参数(如节点数、激活函数)的选取。智能优化算法通过全局搜索能力优化ELM参数,显著提升预测精度。蜣螂算法(DBO)、减法优化器(SABO)和鲸鱼优化算法(WOA)因其独特的搜索机制,成为ELM优化的热门选择。
二、算法原理与改进策略
1. 蜣螂算法(DBO)
- 基本原理:模拟蜣螂滚球、繁殖、觅食和偷窃行为,将种群分为滚球蜣螂(全局搜索)、繁殖蜣螂(局部优化)、小蜣螂(动态调整)和偷窃蜣螂(竞争机制)。通过参数Δx控制搜索范围,平衡探索与开发。
- 改进策略:
- 混沌映射初始化:采用Fuch混沌映射生成初始种群,增强多样性。
- 自适应t分布扰动:在迭代中引入t分布扰动,避免局部最优。
- 动态比例调整:根据适应度动态调整四类蜣螂的比例,提升收敛效率。
- ELM优化应用:优化ELM的隐含层节点数和激活函数参数。例如,DBO-ELM通过迭代寻找最优节点数,提升模型对股票时序特征的拟合能力。
2. 减法优化器(SABO)
- 核心机制:基于父代解差值加权生成新解,公式为 Xnew=Xj−η(Xj−Xk)Xnew=Xj−η(Xj−Xk),其中η为随机权重,实现全局-局部平衡。
- 优势:仅需设置种群规模和迭代次数,参数无关性显著降低调优难度。
- ELM优化应用:
- 核参数优化:在核极限学习机(KELM)中,SABO优化高斯核函数的带宽参数σ,提升回归预测稳定性。
- 特征选择:结合高维股票数据(如技术指标、宏观经济变量),SABO筛选关键特征,降低ELM输入维度。
3. 鲸鱼优化算法(WOA)
- 行为模型:
- 环形捕食:围绕当前最优解收缩搜索范围,公式 X(t+1)=X∗(t)−A⋅DX(t+1)=X∗(t)−A⋅D,A控制步长。
- 气泡网攻击:螺旋更新位置,模拟鲸鱼捕食路径,增强局部开发能力。
- 随机搜索:当|A|≥1时随机选择猎物,避免早熟收敛。
- 改进策略:引入Levy飞行扰动或量子编码,增强高维空间搜索效率。
- ELM优化应用:优化ELM的输入权重和偏置。例如,WOA-ELM在电力负荷预测中,RMSE降低约15%。
三、ELM结构参数与优化需求
- 关键参数:
- 隐含层节点数:过少导致欠拟合,过多引发过拟合。优化目标:平衡模型复杂度与泛化能力。
- 激活函数:常用Sigmoid、ReLU等,不同函数对非线性特征捕捉能力差异显著。
- 输入权重与偏置:随机初始化影响输出权重计算,优化后可提升稳定性。
- 优化难点:参数间耦合性强,传统网格搜索计算成本高,智能算法通过并行搜索高效寻优。
四、股票回归预测的数据特征与评价指标
1. 数据特征
- 技术指标:移动平均线(MA)、相对强弱指数(RSI)、布林带(Bollinger Bands)等。
- 基本面数据:市盈率(P/E)、每股收益(EPS)、资产负债率。
- 市场情绪:社交媒体情感分析、新闻舆情指数。
- 宏观经济变量:GDP增长率、利率、通货膨胀率。
2. 评价指标
- 误差指标:均方根误差(RMSE)、平均绝对误差(MAE),衡量预测值与实际值的偏差。
- 拟合优度:决定系数R²,反映模型解释力,R²>0.9为优。
- 风险收益比:夏普比率(Sharpe Ratio),评估预测策略的超额收益风险。
五、案例研究与效果对比
算法组合 | 优化目标 | 数据集 | 效果提升(对比基准ELM) |
---|---|---|---|
DBO-ELM | 隐含层节点数、激活函数 | 沪深300指数 | RMSE↓18.7%,R²↑12.3% |
SABO-KELM | 核参数σ | 纳斯达克科技股 | MAE↓14.2%,训练时间缩短30% |
WOA-ELM | 输入权重与偏置 | 电力负荷时序数据 | RMSE↓15.6%,夏普比率↑20% |
- DBO-ELM优势:通过混沌初始化提升种群多样性,适应股票数据的突变特征(如黑天鹅事件)。
- SABO-KELM效率:参数无关性减少调参时间,适合高频交易场景。
- WOA-ELM鲁棒性:气泡网攻击策略在波动市场中保持稳定预测。
六、挑战与未来方向
-
挑战:
- 参数敏感性:DBO需手动设置四类蜣螂比例,影响泛化能力。
- 过拟合风险:优化后ELM在训练集表现优异,但测试集可能出现偏差,需引入正则化。
- 计算成本:WOA的螺旋搜索在高维数据中计算量较大。
-
未来方向:
- 混合算法:DBO与SABO结合,兼顾全局搜索与局部精细化。
- 自适应参数:动态调整WOA的收缩因子a,提升收敛速度。
- 可解释性优化:结合SHAP值分析,揭示ELM预测结果的驱动因素。
七、结论
DBO、SABO和WOA通过模拟生物智能行为,有效优化ELM的关键参数,在股票回归预测中展现出显著优势。未来研究需进一步解决算法自适应性与计算效率问题,推动其在量化投资中的实际应用。
📚2 运行结果
可视化代码:
figure
plot(output_test,'markerfacecolor',[0.5,0.5,0.9],'MarkerSize',6,'linewidth',1.2)
hold on
plot(DBO_T_sim,'linewidth',1.2)
hold on
plot(SABO_T_sim,'linewidth',1.2)
hold on
plot(WOA_T_sim,'linewidth',1.2)
legend('真实y','DBO-ELM预测值','SABO-ELM预测值','WOA-ELM预测值')
xlabel('样本数')
ylabel('股票预测')
title('不同算法优化ELM预测结果对比')
%% 误差对比
figure
plot(DBO_error,'linewidth',1.3)
hold on
plot(SABO_error,'linewidth',1.3)
hold on
plot(WOA_error,'linewidth',1.3)
legend('DBO-ELM预测误差','SABO-ELM预测误差','WOA-ELM预测误差')
xlabel('样本数')
ylabel('股票预测')
title('不同算法误差对比')
%% 指标打印
disp(['ELM的MSE为:',num2str(mse0),',R2为:',num2str(r20),',MAE为:',num2str(mae0),',RMSE为:',num2str(rmse0),',MAPE为:',num2str(mape0)])
disp(['DBO-ELM的MSE为:',num2str(DBO_mse),',R2为:',num2str(DBO_R2),',MAE为:',num2str(DBO_MAE),',RMSE为:',num2str(DBO_RMSE),',MAPE为:',num2str(DBO_mape)])
disp(['SABO-ELM的MSE为:',num2str(SABO_mse),',R2为:',num2str(SABO_R2),',MAE为:',num2str(SABO_MAE),',RMSE为:',num2str(SABO_RMSE),',MAPE为:',num2str(SABO_mape)])
disp(['WOA-ELM的MSE为:',num2str(WOA_mse),',R2为:',num2str(WOA_R2),',MAE为:',num2str(WOA_MAE),',RMSE为:',num2str(WOA_RMSE),',MAPE为:',num2str(WOA_mape)])
🎉3 参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。
🌈4 Matlab代码实现
资料获取,更多粉丝福利,MATLAB|Simulink|Python资源获取