CN116703607A - 一种基于扩散模型的金融时间序列预测方法与*** - Google Patents
一种基于扩散模型的金融时间序列预测方法与*** Download PDFInfo
- Publication number
- CN116703607A CN116703607A CN202310710238.2A CN202310710238A CN116703607A CN 116703607 A CN116703607 A CN 116703607A CN 202310710238 A CN202310710238 A CN 202310710238A CN 116703607 A CN116703607 A CN 116703607A
- Authority
- CN
- China
- Prior art keywords
- model
- sequence
- prediction
- price change
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 100
- 238000009792 diffusion process Methods 0.000 title claims abstract description 93
- 230000008859 change Effects 0.000 claims abstract description 75
- 230000008569 process Effects 0.000 claims abstract description 56
- 238000012549 training Methods 0.000 claims abstract description 53
- 238000012360 testing method Methods 0.000 claims abstract description 22
- 230000007246 mechanism Effects 0.000 claims abstract description 21
- 238000012795 verification Methods 0.000 claims abstract description 19
- 238000007781 pre-processing Methods 0.000 claims abstract description 11
- 239000011159 matrix material Substances 0.000 claims description 52
- 238000010606 normalization Methods 0.000 claims description 24
- 238000009826 distribution Methods 0.000 claims description 17
- 238000010276 construction Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 12
- 238000011156 evaluation Methods 0.000 claims description 8
- 230000001186 cumulative effect Effects 0.000 claims description 6
- 238000000354 decomposition reaction Methods 0.000 claims description 6
- 238000005315 distribution function Methods 0.000 claims description 6
- 230000007774 longterm Effects 0.000 claims description 4
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000004140 cleaning Methods 0.000 claims description 3
- 238000010200 validation analysis Methods 0.000 claims description 3
- 238000013135 deep learning Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 5
- 238000013459 approach Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- CDBYLPFSWZWCQE-UHFFFAOYSA-L Sodium Carbonate Chemical compound [Na+].[Na+].[O-]C([O-])=O CDBYLPFSWZWCQE-UHFFFAOYSA-L 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 238000012300 Sequence Analysis Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000012067 mathematical method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000036651 mood Effects 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000012954 risk control Methods 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000000087 stabilizing effect Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/06—Asset management; Financial planning or analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S10/00—Systems supporting electrical power generation, transmission or distribution
- Y04S10/50—Systems or methods supporting the power network operation or management, involving a certain degree of interaction with the load-side end user applications
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Accounting & Taxation (AREA)
- Computational Mathematics (AREA)
- Development Economics (AREA)
- Operations Research (AREA)
- Databases & Information Systems (AREA)
- Finance (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Biology (AREA)
- Human Resources & Organizations (AREA)
- Game Theory and Decision Science (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Economics (AREA)
- Computational Linguistics (AREA)
- Fuzzy Systems (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Algebra (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于扩散模型的金融时间序列预测方法与***,涉及基于深度学习的时间序列预测领域,所述方法包括以下步骤:步骤1、选取预测目标金融资产的行情序列数据,进行数据预处理得到数据样本,再将所述数据样本分为训练集、验证集和测试集;步骤2、构建所述预测目标金融资产的价格变动预测模型,包括扩散模型前向过程、扩散模型后向过程以及多尺度去噪分数匹配机制;步骤3、将所述训练集输入到所述价格变动预测模型中进行训练,并通过所述验证集进行模型验证,最终确定所述价格变动预测模型的参数;步骤4、将所述测试集输入到参数已经确定的所述价格变动预测模型中进行模型预测,对所述价格变动预测模型的预测性能进行评估。
Description
技术领域
本发明涉及基于深度学习的时间序列预测领域,尤其涉及一种基于扩散模型的金融时间序列预测方法与***。
背景技术
量化投资是一种基于数学和统计学方法,利用计算机算法和技术进行投资决策的投资策略。量化投资的目标是通过利用历史和实时市场数据,以及机器学习、人工智能等技术的应用,构建出可复制的投资模型,从而实现投资组合的优化和风险控制。在量化投资中,投资者利用大量的数据来分析市场走势和行业趋势,通过编程实现自动化交易,实现高效率、低风险的投资目标。量化投资的优点在于它具有高度的可控性、可复制性和稳定性,减少了情绪因素对投资决策的影响,从而提高了投资的效率和成功率。而基于金融时间序列预测构建的量化投资策略在量化投资中占据重要地位。
由于金融市场数据具有时序性和周期性,通过对历史市场数据进行时序分析,可以发现其中的规律和趋势,从而进行未来市场价格变动的预测。传统的时序分析预测技术包括自回归移动平均(ARMA)和广义自回归条件异方差模型(GARCH)模型。随着机器学习和深度学习等人工智能技术的发展,很多研究者开始使用支持向量机、随机森林、以XGBoost和LightGBM为代表的梯度提升树模型、以卷积神经网络和循环神经网络以及Transformer为代表的深度学习模型来对市场行情进行建模,预测市场行情变动。但是使用上述模型中提供的时序预测技术常常遇到过拟合和泛化性差的问题,而且大多数时序预测模型在对单支金融资产的价格变动预测时只考虑了单资产的历史行情信息,因此并不能很好地挖掘除市场行情序列的变化规律,从而无法生成比较准确的预测结果。
因此,本领域的技术人员致力于开发一种新的金融时间序列预测方法与***,解决现有技术中存在的上述问题。
发明内容
有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是如何克服预测过程中的过拟合和泛化性差,以及时序预测模型在对单支金融资产的价格变动预测时因为只考虑单资产的历史行情信息而导致的预测结果不准确。
为实现上述目的,本发明提供了一种基于概率扩散模型(DiffusionProbabilistic Model)的金融时序变动预测方法与***,以降低行情价格变动预测的过拟合程度,提升预测的泛化性能。该方法与***在预测单支金融资产行情价格变动时综合考虑与之相关联的其他资产的行情走势信息,采用扩散模型的前向过程来对综合多支金融资产的时序特征序列进行增强,可以减小时序预测模型的过拟合程度,提升时序预测模型的预测泛化性能,通过扩散模型的后向过程生成预测序列,并且引入多尺度去噪分数匹配机制,来对扩散模型后向过程生成的预测序列去噪,同时得到预测结果的不确定性估计。
具体来说,本发明提供的一种基于扩散模型的金融时间序列预测方法包括以下步骤:
步骤1、选取预测目标金融资产的行情序列数据,进行数据预处理得到数据样本,再将所述数据样本分为训练集、验证集和测试集;
步骤2、构建所述预测目标金融资产的价格变动预测模型,包括扩散模型前向过程、扩散模型后向过程以及多尺度去噪分数匹配机制;
步骤3、将所述训练集输入到所述价格变动预测模型中进行训练,并通过所述验证集进行模型验证,最终确定所述价格变动预测模型的参数;
步骤4、将所述测试集输入到参数已经确定的所述价格变动预测模型中进行模型预测,对所述价格变动预测模型的预测性能进行评估。
进一步地,所述步骤1包括以下子步骤:
步骤101、选取所述行情序列数据;所述行情序列数据包括所述预测目标金融资产的数据,也包括与所述预测目标金融资产相关联的其他金融资产的数据;
步骤102、选取开盘价、收盘价、最高价、最低价、成交量、持仓量和BOLL指标作为特征维度;
步骤103、采用均值方差归一化作为特征归一化方法,对所述行情序列数据的每一个所述特征维度单独进行归一化处理,计算公式为:
其中,x表示某个所述特征维度的原始值,x*表示所述特征维度经过归一化处理后的数值,μ表示所述特征维度在当前时间点之前一段时间的均值,σ表示所述特征维度在当前时间点之前一段时间的标准差;
步骤104、记i时刻归一化处理后的特征矩阵为Xi∈RN×D,其中,N表示所述预测目标金融资产以及与所述预测目标金融资产相关联的其他金融资产的数量,D表示选择的所述特征维度的数量;在连续等间隔的t个时间点上取t个不同的所述特征矩阵X构成一个特征矩阵序列X(0),即(X1,X2,...,Xt),并将所述特征矩阵序列X(0)作为输入样本;所述输入样本对应的预测目标序列为在所述输入样本后的一段时间序列;在所述输入样本后的一段时间序列中所述预测目标序列的每个元素为逐时间步的价格变化,即所述预测目标序列Y(0)为:
(Yt+1,Yt+2,...,Yτ)=(Pt+1-Pt,Pt+2-Pt+1,...,Pτ-Pτ-1)
其中,Pt表示t时刻所述预测目标金融资产的价格,Yt+1表示t时刻至t+1时刻的价格变动;所述特征矩阵序列与所述预测目标序列构成所述数据样本;
步骤105、将所述数据样本分为所述训练集、所述验证集和所述测试集。
进一步地,所述步骤2包括以下子步骤:
步骤2.1、构建所述价格变动预测模型中的所述扩散模型前向过程;
步骤2.2、构建所述价格变动预测模型中的所述扩散模型后向过程;
步骤2.3、构建所述价格变动预测模型中的所述多尺度去噪分数匹配机制;
其中,所述步骤2.1中的所述扩散模型前向过程包括:构造一个逐渐增加高斯噪声的马尔科夫链;输入所述特征矩阵序列X(0)=(X1,X2,...,Xt)和对应的所述预测目标序列Y(0)=(Yt+1,Yt+2,...,Yτ),使用不同的方差计划同时进行扩散,得到增强后的所述特征矩阵序列和所述预测目标序列;其中,β=(β1,…,βT)是所述特征矩阵序列的扩散方差计划,β′=(β′1,…,β′T)是所述预测目标序列的扩散方差计划;
初始输入的所述特征矩阵序列X(0)可以有如下分解:
X=<Xr,∈X>
其中,Xr表示所述特征矩阵序列中去噪后的部分,∈X表示所述特征矩阵序列中的噪声;
初始输入的所述预测目标序列Y(0)也可以有类似的分解:
Y=<Yr,∈Y>
其中,Yr表示所述预测目标序列中去噪后的部分,∈Y表示所述预测目标序列中的噪声;
增加噪声后的t时刻,所述特征矩阵序列表示为:
其中,表示噪声部分信号,/>表示去噪后的部分信号;
增加噪声后的t时刻,所述预测目标序列表示为:
其中,表示噪声部分信号,/>表示去噪后的部分信号。
进一步地,所述步骤2.2中的所述扩散模型后向过程采用NVAE模型。
进一步地,在所述价格变动预测模型将经过所述扩散模型前向过程进行扩散增强后的所述特征矩阵序列X′1,X′2,...,X′t输入编码器后,所述步骤2.2中的所述扩散模型后向过程包括以下子步骤:
步骤2.2.1、通过自下而上的确定性网络从输入的所述特征矩阵序列中提取特征表示;在提取所述特征表示的过程中,所述NVAE模型使用残差块构建分层多尺度模型来对所述特征矩阵序列中的长期相关性进行建模;
步骤2.2.2、通过解码器和自上而下的网络来逐组推断潜变量,输出序列
进一步地,所述步骤2.3中的所述多尺度去噪分数匹配机制使得生成的所述序列的概率分布更接近真实的所述预测目标序列的分布Y1,Y2,...,YT;
所述多尺度去噪分数匹配机制的目标函数为:
其中,σt∈{σ1,…,σT},{σ1,…,σT}是递减序列;
为进一步去除当中的噪声,使用单步梯度去噪跳跃,具体为:
其中,为预测的不确定性估计。
进一步地,所述步骤3包括以下子步骤:
步骤3.1、定义训练所述价格变动预测模型的损失函数,所述损失函数表示为:
其中,和/>控制扩散模型的生成方向,使得模型预测生成的序列/>更接近加入噪声后的预测目标序列Y′(t),而LDSM(ζ,t)的目标则是使预测生成的序列/>更接近加入噪声前的预测目标序列Y(t);ψ和λ为控制不同损失权重的超参数;
步骤3.2、将所述训练集输入到所述价格变动预测模型中进行训练;
步骤3.3、测试不同的所述超参数,从中选取在所述验证集上的评价指标最好的模型,其中,所述评价指标选择均方误差MSE和连续概率排位分数CRPS:
其中,是时刻T的预测值,YT是时刻T的真实标签值;
CRPS=∫[Ff(x)-Fo(x)]2dx
其中,Ff(x)是的累计分布函数,Fo(x)是YT的累计分布函数;MSE和CRPS越接近0,表示所述价格变动预测模型的预测准确率越高。
本发明还提供了一种基于扩散模型的金融时间序列预测***,所述***包括:数据预处理模块、模型构建模块、模型训练模块和模型预测模块;
其中,所述数据预处理模块用于数据清洗、特征选取、归一化处理和数据集构建;所述数据清洗剔除不在交易时间内的数据;所述特征选取包括开盘价、收盘价、最高价、最低价、成交量、持仓量和BOLL指标作为特征维度;所述归一化处理采用均值方差归一化方法;所述数据集构建包括获取预测目标金融资产的数据,也包括与所述预测目标金融资产相关联的其他金融资产的数据,形成一个特征矩阵序列,并将所述特征矩阵序列作为数据样本,再将所述数据样本分为训练集、验证集和测试集;
所述模型构建模块构建所述预测目标金融资产的价格变动预测模型,所述价格变动预测模型包括扩散模型前向过程、扩散模型后向过程以及多尺度去噪分数匹配机制;
所述模型训练模块利用所述训练集训练所述价格变动预测模型,训练时的总体损失函数包括:KL散度损失、MSE损失以及多尺度去噪分数匹配引入的损失;
所述模型预测模块利用所述价格变动预测模型在所述测试集上对所述预测目标金融资产的价格变动进行预测,并对所述价格变动预测模型的预测性能进行评估。
进一步地,所述模型构建模块还包括权利要求3~6中任一项所述的基于扩散模型的金融时间序列预测方法中的所述步骤2及其子步骤。
进一步地,所述模型训练模块还包括权利要求7中所述的基于扩散模型的金融时间序列预测方法中的所述步骤3及其子步骤。
本发明提供的一种基于扩散模型的金融时间序列预测方法与***至少具有以下技术效果:
1、现有的金融资产价格变动预测***大多数只考虑待预测的单支金融资产信息,没有考虑与之相关联的多支金融资产信息考。本发明所提供的技术方案比较充分考虑与预测目标金融资产相关联的其他金融资产的行情变动信息,使得预测模型的预测效果更好;
2、由于金融时间序列的信噪比极低,可能会造成训练模型过程中发生过拟合和泛化问题。因此,本发明所提供的技术方案采用概率扩散模型来解决金融时序预测问题。为减小过拟合问题,首先采取扩散模型的前向过程对输入特征序列进行时序增强,在前向过程中,逐步往输入数据中按计划添加不同程度的高斯噪声,而后经过扩散模型的后向过程生成预测序列,最后引入多尺度去噪分数匹配机制来对扩散模型后向过程生成的预测序列进行去噪,以提升模型预测的准确性,同时还能得到预测结果的不确定性估计。
以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。
附图说明
图1是本发明的一个较佳实施例提供的***模块示意图;
图2是图1所示实施例提供的预测模型示意图;
图3是图1所示实施例提供的扩散模型前向过程示意图;
图4是图1所示实施例提供的扩散模型后向过程示意图。
具体实施方式
以下参考说明书附图介绍本发明的多个优选实施例,使其技术内容更加清楚和便于理解。本发明可以通过许多不同形式的实施例来得以体现,本发明的保护范围并非仅限于文中提到的实施例。
本发明实施例提出一种基于概率扩散模型的金融时间序列变动预测方法与***,在预测单支金融资产行情价格变动时综合考虑与之相关联的其他资产的行情走势信息,采用扩散模型的前向过程来对综合多支金融资产的时序特征序列进行增强,可以减小时序预测模型的过拟合程度,提升时序预测模型的预测泛化性能,通过扩散模型的后向过程生成预测序列,并且引入多尺度去噪分数匹配机制,来对扩散模型后向过程生成的预测序列去噪,同时得到预测结果的不确定性估计。
本发明实施例提出一种基于概率扩散模型的金融时间序列变动预测方法,首先,通过数据预处理模块构建训练所需数据集。选择预测目标金融资产以及与其相关联的金融资产,选择开盘价、收盘价、最高价、最低价、成交量、持仓量和BOLL等指标作为特征。而后对每个时间点的特征进行归一化,归一化方式为均值方差归一化,均值和方差由该时间点之前一段时间的行情序列计算得到,然后按时间顺序依次确定训练集、验证集、测试集的开始和结束时间,完成数据集的构建。接着,通过模型构建模块完成模型的构建,将数据预处理模块输出的数据集输入到模型中,通过模型训练模块进行模型的训练。具体地,通过综合KL散度损失、MSE损失和多尺度去噪分数匹配损失,模型能够更好地预测生成更接近原始预测目标序列的序列,同时减小预测的过拟合程度,增强预测的泛化性能。
具体地,本发明提供的一种基于扩散模型的金融时间序列预测方法包括以下步骤:
步骤1、选取预测目标金融资产的行情序列数据,进行数据预处理得到数据样本,再将数据样本分为训练集、验证集和测试集;
步骤2、构建预测目标金融资产的价格变动预测模型,包括扩散模型前向过程、扩散模型后向过程以及多尺度去噪分数匹配机制(如图2所示);
步骤3、将训练集输入到价格变动预测模型中进行训练,并通过验证集进行模型验证,最终确定价格变动预测模型的参数;
步骤4、将测试集输入到参数已经确定的价格变动预测模型中进行模型预测,对价格变动预测模型的预测性能进行评估。
特别地,步骤1包括以下子步骤:
步骤101、选取行情序列数据;行情序列数据包括预测目标金融资产的数据,也包括与预测目标金融资产相关联的其他金融资产的数据,例如预测纯碱期货价格变动,同时会考虑玻璃等有产业上下游关联的期货品种;
步骤102、选取开盘价、收盘价、最高价、最低价、成交量、持仓量和BOLL指标作为特征维度;
步骤103、采用均值方差归一化作为特征归一化方法,对行情序列数据的每一个特征维度单独进行归一化处理,计算公式为:
其中,x表示某个特征维度的原始值,x*表示特征维度经过归一化处理后的数值,μ表示特征维度在当前时间点之前一段时间的均值,σ表示特征维度在当前时间点之前一段时间的标准差;
步骤104、记i时刻归一化处理后的特征矩阵为Xi∈RN×D,其中,N表示预测目标金融资产以及与预测目标金融资产相关联的其他金融资产的数量,D表示选择的特征维度的数量;在连续等间隔的t个时间点上取t个不同的特征矩阵X构成一个特征矩阵序列X(0),即(X1,X2,...,Xt),并将特征矩阵序列X(0)作为输入样本;输入样本对应的预测目标序列为在输入样本后的一段时间序列;在输入样本后的一段时间序列中预测目标序列的每个元素为逐时间步的价格变化,即预测目标序列Y(0)为:
(Yt+1,Yt+2,...,Yτ)=(Pt+1-Pt,Pt+2-Pt+1,...,Pτ-Pτ-1)
其中,Pt表示t时刻预测目标金融资产的价格,Yt+1表示t时刻至t+1时刻的价格变动;特征矩阵序列与预测目标序列构成数据样本;
步骤105、将数据样本分为训练集、验证集和测试集。
特别地,步骤2包括以下子步骤:
步骤2.1、构建价格变动预测模型中的扩散模型前向过程;
步骤2.2、构建价格变动预测模型中的扩散模型后向过程;
步骤2.3、构建价格变动预测模型中的多尺度去噪分数匹配机制;
其中,步骤2.1中的扩散模型前向过程包括:构造一个逐渐增加高斯噪声的马尔科夫链;输入特征矩阵序列X(0)=(X1,X2,...,Xt)和对应的预测目标序列Y(0)=(Yt+1,Yt+2,...,Yτ),使用不同的方差计划同时进行扩散,得到增强后的特征矩阵序列和预测目标序列;其中,β=(β1,…,βT)是特征矩阵序列的扩散方差计划,β′=(β′1,…,β′T)是预测目标序列的扩散方差计划(如图3所示);
初始输入的特征矩阵序列X(0)可以有如下分解:
X=<Xr,∈X>
其中,Xr表示特征矩阵序列中去噪后的部分,∈X表示特征矩阵序列中的噪声;
初始输入的预测目标序列Y(0)也可以有类似的分解:
Y=<Yr,∈Y>
其中,Yr表示预测目标序列中去噪后的部分,∈Y表示预测目标序列中的噪声;
增加噪声后的t时刻,特征矩阵序列表示为:
其中,表示噪声部分信号,/>表示去噪后的部分信号;
增加噪声后的t时刻,预测目标序列表示为:
其中,表示噪声部分信号,/>表示去噪后的部分信号。
特别地,步骤2.2中的扩散模型后向过程采用NVAE(Nouveau VAE)模型。NVAE模型是一种深度分层VAE模型,分层VAE模型结构中的潜变量被分成不相交的组,目的是为了增加近似后验分布和先验分布的表达能力(如图4所示)。
在价格变动预测模型将经过扩散模型前向过程进行扩散增强后的特征矩阵序列X′1,X′2,...,X′t输入编码器后,步骤2.2中的扩散模型后向过程包括以下子步骤:
步骤2.2.1、通过自下而上的确定性网络从输入的特征矩阵序列中提取特征表示;在提取特征表示的过程中,NVAE模型使用残差块构建分层多尺度模型来对特征矩阵序列中的长期相关性进行建模。编码器会先从顶部一组潜变量z1开始,逐组地从层次结构中采样,同时逐渐增加潜变量空间维度,这种多尺度方法使得NVAE能够在层次结构的顶部捕获全局的长期相关性,在底部捕获时序表示的局部依赖。
步骤2.2.2、通过解码器和自上而下的网络来逐组推断潜变量,输出序列由于分层VAE结构中近似后验分布和先验分布之间的KL散度是无界的,训练优化十分困难,因此,NVAE模型还通过近似后验参数的残差参数化来改进最小化KL项,并且使用谱正则化方法来稳定VAE训练。
特别地,扩散模型后向过程生成的序列分布倾向于接近加入噪声后的目标预测序列分布Y′1,Y′2,...,Y′T,因此,为减小预测结果的不确定性同时不牺牲预测精度,需要进一步去噪。采用多尺度去噪分数匹配方法,来使得生成序列/>的概率分布更接近真实的目标预测序列分布Y1,Y2,...,YT,也就是待预测的未来行情走势序列分布。
多尺度去噪分数匹配机制的目标函数为:
其中,σt∈{σ1,…,σT},{σ1,…,σT}是递减序列;
为进一步去除当中的噪声,使用单步梯度去噪跳跃,具体为:
其中,为预测的不确定性估计。
特别地,步骤3包括以下子步骤:
步骤3.1、定义训练价格变动预测模型的损失函数,损失函数表示为:
其中,和/>控制扩散模型的生成方向,使得模型预测生成的序列/>更接近加入噪声后的预测目标序列Y′(t),而LDSM(ζ,t)的目标则是使预测生成的序列/>更接近加入噪声前的预测目标序列Y(t);ψ和λ为控制不同损失权重的超参数。
步骤3.2、将训练集输入到价格变动预测模型中进行训练,训练过程如下:
1、重复;
2、Y(0)~q(Y(0)),δX~N(0,Id),δY~N(0,Id);
3、随机从1,...,T中选择t;
4、
5、使用NVAE模型生成潜变量z,z~pφ(Z|X(t));
6、从中采样得到/>计算KL散度/>
7、计算多尺度去噪分数匹配损失:
8、计算总体损失函数:
9、θ,φ←arg min(L);
10、直至收敛。
步骤3.3、测试不同的超参数,从中选取在验证集上的评价指标最好的模型,其中,评价指标选择均方误差MSE和连续概率排位分数CRPS:
其中,是时刻T的预测值,YT是时刻T的真实标签值;
CRPS=∫[Ff(x)-Fo(x)]2dx
其中,Ff(x)是的累计分布函数,Fo(x)是YT的累计分布函数;MSE和CRPS越接近0,表示预测分布和真实分布越接近,模型的预测准确率越高。
步骤4的模型预测包括以下步骤:
步骤4.1、根据以下步骤生成预测结果;
1、输入:X~q(X);
2、采样:Z~pφ(Z|X);
3、生成:
4、最终输出:
步骤4.2、预测性能评估,计算测试集上的MSE和CRPS。
本发明还提供了一种基于扩散模型的金融时间序列预测***,包括:数据预处理模块、模型构建模块、模型训练模块和模型预测模块(如图1所示)。
其中,数据预处理模块用于数据清洗、特征选取、归一化处理和数据集构建;数据清洗剔除不在交易时间内的数据;特征选取包括开盘价、收盘价、最高价、最低价、成交量、持仓量和BOLL指标作为特征维度;归一化包括对于每个时间点的特征,用该时间点之前一段时间的特征序列计算而来的均值标准差进行归一化。
数据集构建包括获取预测目标金融资产的数据,也包括与预测目标金融资产相关联的其他金融资产的数据,比如预测纯碱期货的价格趋势,就会同时考虑与之有产业上下游关联的玻璃期货的价格走势。将同一时刻的多支资产特征拼接在一起构成多资产的二维矩阵,再取一段时间内的二维矩阵形成形成一个特征矩阵序列,并将特征矩阵序列作为数据样本,再将数据样本分为训练集、验证集和测试集;
模型构建模块构建预测目标金融资产的价格变动预测模型。价格变动预测模型的输入为多支金融资产的历史价格和特征序列,输出为多支金融资产未来的价格变动序列。首先,将所要预测的目标资产和其他相关的多支资产的行情序列以及BOLL等技术指标组成一个二维矩阵,并在连续等间隔的t个时间点上将取到的不同的二维矩阵构成一个时间序列作为预测模型的输入。再通过扩散模型的前向过程对数据进行增强,提升模型的生成泛化能力。而后将扩散后的输入序列输入扩散模型的后向过程,得到生成序列。为了让生成序列更接近真实的目标预测序列,使用多尺度去噪分数匹配机制,使得生成序列的概率分布接近真实的目标预测序列,也就是未来的价格序列的概率分布。
具体来说,价格变动预测模型包括扩散模型前向过程、扩散模型后向过程以及多尺度去噪分数匹配机制。
扩散模型前向过程输入为时序特征矩阵序列和预测目标序列,输出为经过时序扩散增强后的时序特征序列和预测目标序列,时序增强的目的是弥补时间序列数据的局限性,以减小预测模型的过拟合程度。扩散模型的前向过程是一个马尔可夫链,每一时间步都在上一步的输出序列的基础上加上不同程度的高斯噪声。而特征序列和预测目标序列所加的高斯噪声的程度由不同参数控制。
扩散模型后向过程采用NVAE模型,输入为经过扩散增强的特征序列,输出为生成的预测序列。NVAE模型是一类VAE模型,采用编码器-解码器结构,训练时将数据输入编码器生成潜变量,再通过解码器生成数据,VAE的训练目标保证生成数据分布接近原始数据分布的同时又有所变化。而NVAE在传统VAE基础上进行了改进,通过近似后验参数的残差参数化来改进最小化KL项,并且使用谱正则化方法来稳定VAE训练,这样提高了VAE的训练稳定性和生成效果。
多尺度去噪分数匹配机制输入是原始预测目标序列和扩散模型后向过程生成的预测序列,输出为去噪后的预测序列。该机制的目的是为了在不牺牲预测精度的同时减小生成目标序列的不确定性,因为生成的序列分布倾向于接近经过时序增强后的预测目标序列而不是未经过时序增强的原始预测目标序列。
模型训练模块利用训练集训练价格变动预测模型,模型训练时总体损失函数分为三部分:一部分是模型预测生成的序列分布和加入噪声后的预测目标序列分布之间的KL散度损失;一部分是模型预测生成的序列和加入噪声后的预测目标序列之间的MSE损失;还有一部分是多尺度去噪分数匹配引入的损失。前两部分的目的在于使得模型预测生成的序列更接近加入噪声后的预测目标序列,而最后一部分的目的在于使模型预测生成的序列更接近加入噪声前的预测目标序列。
模型预测模块用于利用训练模块训练完成的模型在测试集上对金融资产价格变动进行预测,使用相关评价指标来对模型的预测性能进行评估。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
Claims (10)
1.一种基于扩散模型的金融时间序列预测方法,其特征在于,所述方法包括以下步骤:
步骤1、选取预测目标金融资产的行情序列数据,进行数据预处理得到数据样本,再将所述数据样本分为训练集、验证集和测试集;
步骤2、构建所述预测目标金融资产的价格变动预测模型,包括扩散模型前向过程、扩散模型后向过程以及多尺度去噪分数匹配机制;
步骤3、将所述训练集输入到所述价格变动预测模型中进行训练,并通过所述验证集进行模型验证,最终确定所述价格变动预测模型的参数;
步骤4、将所述测试集输入到参数已经确定的所述价格变动预测模型中进行模型预测,对所述价格变动预测模型的预测性能进行评估。
2.如权利要求1所述的基于扩散模型的金融时间序列预测方法,其特征在于,所述步骤1包括以下子步骤:
步骤101、选取所述行情序列数据;所述行情序列数据包括所述预测目标金融资产的数据,也包括与所述预测目标金融资产相关联的其他金融资产的数据;
步骤102、选取开盘价、收盘价、最高价、最低价、成交量、持仓量和BOLL指标作为特征维度;
步骤103、采用均值方差归一化作为特征归一化方法,对所述行情序列数据的每一个所述特征维度单独进行归一化处理,计算公式为:
其中,x表示某个所述特征维度的原始值,x*表示所述特征维度经过归一化处理后的数值,μ表示所述特征维度在当前时间点之前一段时间的均值,σ表示所述特征维度在当前时间点之前一段时间的标准差;
步骤104、记i时刻归一化处理后的特征矩阵为Xi∈RN×D,其中,N表示所述预测目标金融资产以及与所述预测目标金融资产相关联的其他金融资产的数量,D表示选择的所述特征维度的数量;在连续等间隔的t个时间点上取t个不同的所述特征矩阵X构成一个特征矩阵序列X(0),即(X1,X2,...,Xt),并将所述特征矩阵序列X(0)作为输入样本;所述输入样本对应的预测目标序列为在所述输入样本后的一段时间序列;在所述输入样本后的一段时间序列中所述预测目标序列的每个元素为逐时间步的价格变化,即所述预测目标序列Y(0)为:
(Yt+1,Yt+2,...,Yτ)=(Pt+1-Pt,Pt+2-Pt+1,...,Pτ-Pτ-1)
其中,Pt表示t时刻所述预测目标金融资产的价格,Yt+1表示t时刻至t+1时刻的价格变动;所述特征矩阵序列与所述预测目标序列构成所述数据样本;
步骤105、将所述数据样本分为所述训练集、所述验证集和所述测试集。
3.如权利要求2所述的基于扩散模型的金融时间序列预测方法,其特征在于,所述步骤2包括以下子步骤:
步骤2.1、构建所述价格变动预测模型中的所述扩散模型前向过程;
步骤2.2、构建所述价格变动预测模型中的所述扩散模型后向过程;
步骤2.3、构建所述价格变动预测模型中的所述多尺度去噪分数匹配机制;
其中,所述步骤2.1中的所述扩散模型前向过程包括:构造一个逐渐增加高斯噪声的马尔科夫链;输入所述特征矩阵序列X(0)=(X1,X2,...,Xt)和对应的所述预测目标序列Y(0)=(Yt+1,Yt+2,...,Yτ),使用不同的方差计划同时进行扩散,得到增强后的所述特征矩阵序列和所述预测目标序列;其中,β=(β1,…,βT)是所述特征矩阵序列的扩散方差计划,β′=(β′1,…,β′T)是所述预测目标序列的扩散方差计划;
初始输入的所述特征矩阵序列X(0)可以有如下分解:
X=<Xr,∈X>
其中,Xr表示所述特征矩阵序列中去噪后的部分,∈X表示所述特征矩阵序列中的噪声;
初始输入的所述预测目标序列Y(0)也可以有类似的分解:
Y=<Yr,∈Y>
其中,Yr表示所述预测目标序列中去噪后的部分,∈Y表示所述预测目标序列中的噪声;
增加噪声后的t时刻,所述特征矩阵序列表示为:
其中,表示噪声部分信号,/>表示去噪后的部分信号;
增加噪声后的t时刻,所述预测目标序列表示为:
其中,表示噪声部分信号,/>表示去噪后的部分信号。
4.如权利要求3所述的基于扩散模型的金融时间序列预测方法,其特征在于,所述步骤2.2中的所述扩散模型后向过程采用NVAE模型。
5.如权利要求4所述的基于扩散模型的金融时间序列预测方法,其特征在于,在所述价格变动预测模型将经过所述扩散模型前向过程进行扩散增强后的所述特征矩阵序列X′1,X′2,...,X′t输入编码器后,所述步骤2.2中的所述扩散模型后向过程包括以下子步骤:
步骤2.2.1、通过自下而上的确定性网络从输入的所述特征矩阵序列中提取特征表示;在提取所述特征表示的过程中,所述NVAE模型使用残差块构建分层多尺度模型来对所述特征矩阵序列中的长期相关性进行建模;
步骤2.2.2、通过解码器和自上而下的网络来逐组推断潜变量,输出序列
6.如权利要求5所述的基于扩散模型的金融时间序列预测方法,其特征在于,所述步骤2.3中的所述多尺度去噪分数匹配机制使得生成的所述序列的概率分布更接近真实的所述预测目标序列的分布Y1,Y2,...,YT;
所述多尺度去噪分数匹配机制的目标函数为:
其中,σt∈{σ1,…,σT},{σ1,…,σT}是递减序列;
为进一步去除当中的噪声,使用单步梯度去噪跳跃,具体为:
其中,为预测的不确定性估计。
7.如权利要求6所述的基于扩散模型的金融时间序列预测方法,其特征在于,所述步骤3包括以下子步骤:
步骤3.1、定义训练所述价格变动预测模型的损失函数,所述损失函数表示为:
其中,和/>控制扩散模型的生成方向,使得模型预测生成的序列/>更接近加入噪声后的预测目标序列Y′(t),而LDSM(ζ,t)的目标则是使预测生成的序列/>更接近加入噪声前的预测目标序列Y(t);ψ和λ为控制不同损失权重的超参数;
步骤3.2、将所述训练集输入到所述价格变动预测模型中进行训练;
步骤3.3、测试不同的所述超参数,从中选取在所述验证集上的评价指标最好的模型,其中,所述评价指标选择均方误差MSE和连续概率排位分数CRPS:
其中,是时刻T的预测值,YT是时刻T的真实标签值;
CRPS=∫[Ff(x)-Fo(x)]2dx
其中,Ff(x)是的累计分布函数,Fo(x)是YT的累计分布函数;MSE和CRPS越接近0,表示所述价格变动预测模型的预测准确率越高。
8.一种基于概率扩散模型的金融资产价格变动预测***,其特征在于,所述***包括:数据预处理模块、模型构建模块、模型训练模块和模型预测模块;
其中,所述数据预处理模块用于数据清洗、特征选取、归一化处理和数据集构建;所述数据清洗剔除不在交易时间内的数据;所述特征选取包括开盘价、收盘价、最高价、最低价、成交量、持仓量和BOLL指标作为特征维度;所述归一化处理采用均值方差归一化方法;所述数据集构建包括获取预测目标金融资产的数据,也包括与所述预测目标金融资产相关联的其他金融资产的数据,形成一个特征矩阵序列,并将所述特征矩阵序列作为数据样本,再将所述数据样本分为训练集、验证集和测试集;
所述模型构建模块构建所述预测目标金融资产的价格变动预测模型,所述价格变动预测模型包括扩散模型前向过程、扩散模型后向过程以及多尺度去噪分数匹配机制;
所述模型训练模块利用所述训练集训练所述价格变动预测模型,训练时的总体损失函数包括:KL散度损失、MSE损失以及多尺度去噪分数匹配引入的损失;
所述模型预测模块利用所述价格变动预测模型在所述测试集上对所述预测目标金融资产的价格变动进行预测,并对所述价格变动预测模型的预测性能进行评估。
9.如权利要求8所述的基于概率扩散模型的金融资产价格变动预测***,其特征在于,所述模型构建模块还包括权利要求3~6中任一项所述的基于扩散模型的金融时间序列预测方法中的所述步骤2及其子步骤。
10.如权利要求8所述的基于概率扩散模型的金融资产价格变动预测***,其特征在于,所述模型训练模块还包括权利要求7中所述的基于扩散模型的金融时间序列预测方法中的所述步骤3及其子步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310710238.2A CN116703607A (zh) | 2023-06-15 | 2023-06-15 | 一种基于扩散模型的金融时间序列预测方法与*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310710238.2A CN116703607A (zh) | 2023-06-15 | 2023-06-15 | 一种基于扩散模型的金融时间序列预测方法与*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116703607A true CN116703607A (zh) | 2023-09-05 |
Family
ID=87840761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310710238.2A Pending CN116703607A (zh) | 2023-06-15 | 2023-06-15 | 一种基于扩散模型的金融时间序列预测方法与*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116703607A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117312777A (zh) * | 2023-11-28 | 2023-12-29 | 北京航空航天大学 | 基于扩散模型的工业设备时间序列生成方法及装置 |
-
2023
- 2023-06-15 CN CN202310710238.2A patent/CN116703607A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117312777A (zh) * | 2023-11-28 | 2023-12-29 | 北京航空航天大学 | 基于扩散模型的工业设备时间序列生成方法及装置 |
CN117312777B (zh) * | 2023-11-28 | 2024-02-20 | 北京航空航天大学 | 基于扩散模型的工业设备时间序列生成方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Rahman et al. | Predicting prices of stock market using gated recurrent units (GRUs) neural networks | |
CN110956309A (zh) | 基于crf和lstm的流程活动预测方法 | |
Das et al. | An optimized feature reduction based currency forecasting model exploring the online sequential extreme learning machine and krill herd strategies | |
CN116703607A (zh) | 一种基于扩散模型的金融时间序列预测方法与*** | |
CN111598329A (zh) | 基于自动化参数调整循环神经网络的时序数据预测方法 | |
CN111861751A (zh) | 基于深度强化学习的股票量化交易方法、存储介质及设备 | |
CN117094451B (zh) | 一种耗电量的预测方法、装置及终端 | |
He et al. | GA-based optimization of generative adversarial networks on stock price prediction | |
Nagashima et al. | Data Imputation Method based on Programming by Example: APREP-S | |
Аkanova et al. | Impact of the compilation method on determining the accuracy of the error loss in neural network learning | |
Pongsena et al. | Deep Learning for Financial Time-Series Data Analytics: An Image Processing Based Approach | |
He | Topological optimisation of artificial neural networks for financial asset forecasting | |
Supriyanto | Comparison of Grid Search and Evolutionary Parameter Optimization with Neural Networks on JCI Stock Price Movements during the Covid 19 | |
Gangas | Deep Learning for cryptocurrency assets: Employing series forecasting models for price prediction and uncertainty quantification | |
Dengerud | Global Models for Time Series Forecasting With Applications to Zero-shot Forecasting | |
Cederberg et al. | Forecasting the Nasdaq-100 index using GRU and ARIMA | |
CN110991637B (zh) | 一种公司形象提升***的社交网络数据提取方法及*** | |
Magnani | A Deep Learning stacking ensemble algorithm for Stock Market classification and risk management | |
Cahyadi et al. | Bitcoin Price Prediction Model Development Using Convolutional Neural Network (CNN) and Long Short-Term Memory (LSTM) | |
Rostami et al. | Time series forecasting of house prices: An evaluation of a support vector machine and a recurrent neural network with LSTM cells | |
Shah et al. | Stock Market Prediction Using Deep Learning | |
Durmus | A Primer to the 42 Most commonly used Machine Learning Algorithms (With Code Samples) | |
TANKSALE | A Data Driven Approach to Option Pricing | |
Tran et al. | Initial coin offering prediction comparison using Ridge regression, artificial neural network, random forest regression, and hybrid ANN-Ridge | |
Ech-Chafiq | Some applications of machine learning in finance |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |