PYTHON用RNN神经网络LSTM优化EMD经验模态分解交易策略分析股票价格MACD

简介: PYTHON用RNN神经网络LSTM优化EMD经验模态分解交易策略分析股票价格MACD

全文链接:http://tecdat.cn/?p=28265 


作者:Xiaoyi Sun


预测股票价格,并在合适的时间产生交易策略实现收益,一直是一个热门的问题,到现在为止也提出了很多预测方法。但股票价格 的实时预测是一个难点,需要及时预测价格趋势并作出交易判断。


解决方案


任务/目标


根据市场上已有价格等数据,预测股票价格或趋势,形成交易策略,通过回测计算收益情况。


数据源准备


使用分钟集数据,获得股票价格、交易量、 流量数据,其中流量数据是用一种特殊的方 法计算。每天交易时间为 4 小时,所以一天 有 240 组数据。

由于数据量级的差异,需要对数据进行预处理,都进行归一化。


构造


以上说明了如何抽取相关特征,我们大致有如下训练样本(只列举部分特征)。

划分训练集和测试集


考虑到最终模型会预测将来的某时间段的销 量,为了更真实的测试模型效果,以时间来 切分训练集和测试集。其中训练集与测试集 的比例为 8:2。


建模


LSTM,长短期记忆网络,是一种特殊的 RNN 网络。LSTM 解决了 RNN 中存在的长期依赖问题, 有输入门、输出门和遗忘门。

EMD,经验模态分解,任何信号可以分解成若干模态分量之合。

EMD分解在处理非平稳及非线性数据上,具有非常明显的优势,适合于分析非线性、非 平稳信号序列,具有很高的信噪比。


模型优化


利用 LSTM 预测股票价格解决 EMD 分解的端点问题。

利用 LSTM 预测中国平安的股票价格情况:从 loss 图中可以看出,网络效果较好,训练集和测试集的loss 都是下降后趋于稳定,不存在过拟合现象。

从下图可以看出测试集的价格预测有很高的 一致性。


点击标题查阅往期内容


Python TensorFlow循环神经网络RNN-LSTM神经网络预测股票市场价格时间序列和MSE评估准确性


01

02

03

04



下图是放大后效果

利用EMD 分解计算 MACD 的值生成交易信号,将信号代入真实股价产生收益。可以 看出胜率在60%左右

相关文章
|
2月前
|
数据可视化 数据处理 Python
如何使用Python实现一个基于均线的交易策略
【10月更文挑战第9天】本文介绍了如何使用Python实现一个基于均线的交易策略。主要步骤包括导入所需库(如`pandas`、`numpy`和`matplotlib`),加载股票或期货的历史数据,计算均线和其他指标,实现交易策略逻辑,以及可视化交易结果。示例代码展示了如何根据均线交叉点进行开仓、止损和止盈操作,并提供了注意事项,如数据来源、交易成本和风险管理。
81 7
|
2月前
|
机器学习/深度学习 数据采集 存储
时间序列预测新突破:深入解析循环神经网络(RNN)在金融数据分析中的应用
【10月更文挑战第7天】时间序列预测是数据科学领域的一个重要课题,特别是在金融行业中。准确的时间序列预测能够帮助投资者做出更明智的决策,比如股票价格预测、汇率变动预测等。近年来,随着深度学习技术的发展,尤其是循环神经网络(Recurrent Neural Networks, RNNs)及其变体如长短期记忆网络(LSTM)和门控循环单元(GRU),在处理时间序列数据方面展现出了巨大的潜力。本文将探讨RNN的基本概念,并通过具体的代码示例展示如何使用这些模型来进行金融数据分析。
309 2
|
2月前
|
机器学习/深度学习 数据采集 TensorFlow
智能市场营销策略优化:使用Python实现深度学习模型
【10月更文挑战第1天】 智能市场营销策略优化:使用Python实现深度学习模型
174 63
|
27天前
|
网络协议 数据挖掘 5G
适用于金融和交易应用的低延迟网络:技术、架构与应用
适用于金融和交易应用的低延迟网络:技术、架构与应用
52 5
|
29天前
|
算法 数据处理 开发者
超越传统:Python二分查找的变种策略,让搜索效率再上新台阶!
本文介绍了二分查找及其几种Python实现的变种策略,包括经典二分查找、查找第一个等于给定值的元素、查找最后一个等于给定值的元素以及旋转有序数组的搜索。通过调整搜索条件和边界处理,这些变种策略能够适应更复杂的搜索场景,提升搜索效率和应用灵活性。
32 5
|
28天前
|
Python
不容错过!Python中图的精妙表示与高效遍历策略,提升你的编程艺术感
本文介绍了Python中图的表示方法及遍历策略。图可通过邻接表或邻接矩阵表示,前者节省空间适合稀疏图,后者便于检查连接但占用更多空间。文章详细展示了邻接表和邻接矩阵的实现,并讲解了深度优先搜索(DFS)和广度优先搜索(BFS)的遍历方法,帮助读者掌握图的基本操作和应用技巧。
34 4
|
1月前
|
算法 IDE API
Python编码规范与代码可读性提升策略####
本文探讨了Python编码规范的重要性,并深入分析了如何通过遵循PEP 8等标准来提高代码的可读性和可维护性。文章首先概述了Python编码规范的基本要求,包括命名约定、缩进风格、注释使用等,接着详细阐述了这些规范如何影响代码的理解和维护。此外,文章还提供了一些实用的技巧和建议,帮助开发者在日常开发中更好地应用这些规范,从而编写出更加清晰、简洁且易于理解的Python代码。 ####
|
1月前
|
数据采集 Web App开发 JavaScript
爬虫策略规避:Python爬虫的浏览器自动化
爬虫策略规避:Python爬虫的浏览器自动化
|
1月前
|
数据采集 数据可视化 数据处理
如何使用Python实现一个交易策略。主要步骤包括:导入所需库(如`pandas`、`numpy`、`matplotlib`)
本文介绍了如何使用Python实现一个交易策略。主要步骤包括:导入所需库(如`pandas`、`numpy`、`matplotlib`),加载历史数据,计算均线和其他技术指标,实现交易逻辑,记录和可视化交易结果。示例代码展示了如何根据均线交叉和价格条件进行开仓、止损和止盈操作。实际应用时需注意数据质量、交易成本和风险管理。
61 5
|
2月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于贝叶斯优化CNN-LSTM网络的数据分类识别算法matlab仿真
本项目展示了基于贝叶斯优化(BO)的CNN-LSTM网络在数据分类中的应用。通过MATLAB 2022a实现,优化前后效果对比明显。核心代码附带中文注释和操作视频,涵盖BO、CNN、LSTM理论,特别是BO优化CNN-LSTM网络的batchsize和学习率,显著提升模型性能。