掌桥专利:专业的专利平台
掌桥专利
首页

基于DDPG深度强化学习算法的投资组合管理方法

文献发布时间:2023-06-19 11:22:42


基于DDPG深度强化学习算法的投资组合管理方法

技术领域

本发明涉及人工智能技术领领域,尤其是机器学习中的基于DDPG深度强化学习算法的投资组合管理方法。

背景技术

随着人工智能技术的发展,强化学习算法已经被应用于金融领域。目前,通过搭建合适的交互环境,基于离散型状态与行为空间的强化学习模型已经被初步地应用于资产管理。

但是由于资产管理的实际操作中动作空间与状态空间是连续的,而非离散的,基于离散型状态与行为空间的强化学习模型无法对其充分探索,因此其收益状况并不出色。在资产管理的离散型强化学习模型中,动作被定义为每一交易周期初所确定的资产分配权重,在此定义下,再规定最小权重单位便可得到离散化的动作空间。然而,如果最小权重单位太小或者资产数量太多,就会导致资产权重向量(动作)数量过多。这样一来,不仅对于动作空间的探索效率很低,而且神经网络的训练也会变得非常困难。

因此,如果使用离散型模型进行资产管理,通常需要限制资产个数,并且忽略手续费,以此来减少权重向量的个数。这严重影响了该模型的应用价值和泛化能力。

发明内容

本发明的目的就是为了解决现有技术中存在的上述问题,提供一种适于资产个数较多且效率较高的基于DDPG深度强化学习算法的投资组合管理方法。

本发明的目的通过以下技术方案来实现:

一种基于DDPG深度强化学习算法的投资组合管理方法,包括如下步骤:

S1,构建股票交易场景的多层式DDPG模型;

所述多层式DDPG模型包括两个全连接神经网络以及两个LSTM神经网络,两个全连接神经网络分别为Actor网络和Target-Actor网络,两个LSTM神经网络分别为Critics网络和Target-Critics网络;所述Actor网络的输入为第t个交易周期状态,其中t为一个正自然数,输出为当前交易周期的动作,不同标的资产在第t+1个交易周期的权重;所述Target-Actor网络的输入为预测的t+1个交易周期的状态,输出为当前交易周期的动作,不同标的资产在第t+2个交易周期的权重;所述Target-Critics网络的输入为所述Target-Actor网络的输出,不同标的资产在第t+2个交易周期的权重、以及第t+1个交易周期的状态,输出为一个评分;所述Critics网络的输入为第t个交易周期的状态、以及该交易周期的动作不同标的资产在第t+1个交易周期的权重,输出为一个评分;

S2,训练所述多层式DDPG模型框其参数最优化;

S3,加载训练好的多层式DDPG模型的参数,接收股票的历史价格和状态,通过所述多层式DDPG模型获取下一交易周期初的资产分配权重,并根据资产分配权重调整资产在股票市场中的分配,从而得到最优投资策略。

优选的,所述S1中,Actor网络以及Critics网络的输入为第t个交易周期的状态,其通过如下方法得到:

S11,交易周期以交易日替代,分别提取所要管理股票的前t个交易日的收盘、最高、最低价格,然后针对每一个交易日每一只股票,计算当前交易日的收盘价P

S12,将经过S11得到的状态组合成一个(t,50)维的状态矩阵,为第t个交易日的状态张量。

优选的,所述S2中,每次神经网络的训练过程如下:

S21,提取记忆批次

S22,将S

S23,将S

S24,从S

S25,计算期望行为奖励

S26,将S

S27,利用Huber-Loss以及

S28,利用该损失函数对Critics神经网络进行参数优化;

S29,将S

S30,将S

S31,对Target-Actor网络以及Target-Critics网络进行参数软更新。

优选的,所述Actor与Target-Actor网络结构为:

S310,接收(m,5)维张量,其中m为该投资组合管理的股票的个数,5为每只股票对应该交易日的开盘价,收盘价,最高价,最低价,成交价,根据接收的(m,5)维张量,计算当前交易日的状态,状态维数为42维;

S311,接收42维的状态,通过节点数为256的全连接层,该层使用ReLu函数作为激活函数,输出为256维的张量;

S312,将S311中获得的256维的张量输入一个节点数为128的全连接层,该层使用ReLu函数作为激活函数,输出为64维的张量;

S313,将S312中获得的64维的张量输入一个节点数为m的全连接层,该层使用ReLu函数作为激活函数,输出为m维的张量,并将此m维张量作为网络的输出,其中m为该投资组合管理的股票的个数。

优选的,所述Critics与Target-Critics网络结构为:

S314,输入为(128,50)维的张量,通过一个节点数为100的LSTM层,该层使用ReLu函数作为激活函数,输出为(128,100)的张量;

S315,将S314中获得的(128,100)维张量输入节点数为100的LSTM层,该层使用ReLu函数作为激活函数,输出为(128,100)的张量;

S316,将S315中获取的(128,100)维张量输入节点数为50的全连接层,输出为一维张量,作为该网络的最终输出值。

优选的,所述S27中,Huber-Loss损失函数为:

L(a,b)=0.5*(a-b)

L(a,b)=δ*|a-b|-0.5*δ

在此,取δ=1,a,b分别为

优选的,还包括S4,定期或不定期使用不同特征的价格时间序列数据对多层式DDPG模型进行叠加训练及参数微调。

本发明技术方案的优点主要体现在:

本方案引入了特殊的状态空间,使神经网络能够接收更多的有效信息,采用全连接神经网络作为Actor与Target-Actor网络,采用LSTM神经网络作为Critics与Target-Critics神经网络,加深了神经网络的深度,提高了神经网络的性能,使神经网络能够有效地进行训练,并找出每个状态下的最优动作。

附图说明

图1是本发明所述基于DDPG深度强化学习算法的投资组合管理方法的流程示意图;

图2.1是多层式DDPG模型的Actor与Target-Actor网络结构及工作原理示意图;

图2.2是多层式DDPG模型的Critics与Target-Critics网络结构及工作原理示意图;

图3 1999.07.23-2020.07.23时间段的测试数据集进行不同模型测试的结果比对图。

具体实施方式

本发明的目的、优点和特点,将通过下面优选实施例的非限制性说明进行图示和解释。这些实施例仅是应用本发明技术方案的典型范例,凡采取等同替换或者等效变换而形成的技术方案,均落在本发明要求保护的范围之内。

在方案的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“前”、“后”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。并且,在方案的描述中,以操作人员为参照,靠近操作者的方向为近端,远离操作者的方向为远端。

下面结合附图对本发明揭示的基于DDPG深度强化学习算法的投资组合管理方法进行阐述,其包括如下步骤:

S1,构建股票交易场景的多层式DDPG模型;

所述多层式DDPG模型包括两个全连接神经网络以及两个LSTM神经网络,两个全连接神经网络分别为Actor网络和Target-Actor网络,两个LSTM神经网络分别为Critics网络和Target-Critics网络;所述Actor网络的输入为第t个交易周期状态,其中t为一个正自然数,输出为当前交易周期的动作,不同标的资产在第t+1个交易周期的权重;所述Target-Actor网络的输入为预测的t+1个交易周期的状态,输出为当前交易周期的动作,不同标的资产在第t+2个交易周期的权重;所述Target-Critics网络的输入为所述Target-Actor网络的输出,不同标的资产在第t+2个交易周期的权重、以及第t+1个交易周期的状态,输出为一个评分;所述Critics网络的输入为第t个交易周期的状态、以及该交易周期的动作不同标的资产在第t+1个交易周期的权重,输出为一个评分;

具体的,通过深度神经网络构建智能代理,所述智能代理与使用股票开盘、收盘、最高、最低价格和成交量的时间序列数据构建的环境进行交互,环境会产生状态以及状态转移和即时回报,通过状态转移和即时回报的数据,训练深度神经网络,再次采取动作,依照上述过程循环,使智能代理每次采取动作的累计折扣即时回报最大化。

其中,代理的状态空间{S

所述第t个交易周期的状态张量作为深度神经网络的每个卷积神经网络的输入,通过如下方法得到:

S11,交易周期以交易日替代,分别提取所要管理股票的前t个交易日的收盘、最高、最低价格,然后针对每一个交易日每一只股票,计算当前交易日的收盘价P

S12,将经过S11得到的状态组合成一个(t,50)维的状态矩阵,为第t个交易日的状态张量。

S2,训练所述多层式DDPG模型使其参数最优化;

每次神经网络的训练过程如下:

S21,提取记忆批次

S22,将S

S23,将S

S24,从S

S25,计算期望行为奖励

S26,将S

S27,利用Huber-Loss以及

S28,利用该损失函数对Critics神经网络进行参数优化;

S29,将S

S30,将S

S31,对Target-Actor网络以及Target-Critics网络进行参数软更新。

训练好的模型能够直接用于股票交易,即根据不同的实时股票价格,输出对应的资金分配情况。

具体的,所述S27中,Huber-Loss损失函数为:

L(a,b)=0.5*(a-b)

L(a,b)=δ*|a-b|-0.5*δ

在此,取δ=1,a,b分别为

S3,加载训练好的多层式DDPG模型的参数,接收股票的历史价格和状态,通过所述多层式DDPG模型获取下一交易周期初的资产分配权重,并根据资产分配权重调整资产在股票市场中的分配,从而得到最优投资策略。

如附图2.1和图2.2所示,所述基于DDPG深度强化学习算法的投资组合管理方法的过程如下,其中所述Actor与Target-Actor网络结构为:

S310,接收(m,5)维张量,其中m为该投资组合管理的股票的个数,5为每只股票对应该交易日的开盘价,收盘价,最高价,最低价,成交价,根据接收的(m,5)维张量,计算当前交易日的状态,状态维数为42维;

S311,接收42维的状态,通过节点数为256的全连接层,该层使用ReLu函数作为激活函数,输出为256维的张量;

S312,将S311中获得的256维的张量输入一个节点数为128的全连接层,该层使用ReLu函数作为激活函数,输出为64维的张量;

S313,将S312中获得的64维的张量输入一个节点数为m的全连接层,该层使用ReLu函数作为激活函数,输出为m维的张量,并将此m维张量作为网络的输出。

所述Critics与Target-Critics网络结构为:

S314,输入为(128,50)维的张量,通过一个节点数为100的LSTM层,该层使用ReLu函数作为激活函数,输出为(128,100)的张量;

S315,将S314中获得的(128,100)维张量输入节点数为100的LSTM层,该层使用ReLu函数作为激活函数,输出为(128,100)的张量;

S316,将S315中获取的(128,100)维张量输入节点数为50的全连接层,输出为一维张量,作为该网络的最终输出值。

最终投资策略是通过模型获取下一交易周期初的资产分配权重,并根据资产分配权重调整资产在股票市场中的分配,从而得到最优投资策略。

在模型训练完成后,投入使用前,可以采用测试数据集进行模型的性能检测,具体的,以8支股票为例构成测试数据集,8支股票代码分别为:APA,LNC,RCL,FCX,GOLD,FDP,NEM,BMY。具体是通过Yahoo财经下载8支股票的时间序列数据,分别提取所选股票的前t个周期的开盘、收盘、最高、最低价格、成交量,再计算相应的特征。将得到的8组数据经过计算后的状态合并,处理成规模为一个N*42的包含8种投资产品的状态矩阵。对于前t个周期中非交易日的数据,由于交易周期取的是日,故对于非交易日数据直接删除。

将测试数据集输入本方案的模型后所得的结果和传统资产管理方法结果的对比呈现如附图3所示,其中涉及的传统方法如下:

Aniticor(ANTICOR)

The Uniform Buy and Hold(BAH)

Uniform Constant Rebalanced Portfolios(CRP)

Exponential Gradient(EG)

Online Moving Average Reversion(OLMAR)

Passive Aggressive Mean Reversion(PAMR)

Universal Portfolios(UP)

从比对图可以看出,本方案的方案相对其他方法,其获得的收益水平最佳,取得了更好的效果。

最后,针对复杂多变的股票市场,模型需要进行增量式的训练,因此,本发明所述基于DDPG深度强化学习算法的投资组合管理方法,还包括S4,定期或不定期使用不同特征的价格时间序列数据对多层式DDPG模型进行叠加训练及参数微调。这也是一种迁移学习的过程,使得模型更加完善和健壮,使模型拥有更好的扩展性和鲁棒性,此处具体的训练过程与上述S21-S31的过程相同,在此不作赘述。

本发明所述基于DDPG深度强化学习算法的投资组合管理方法,引入了特殊的状态空间,使神经网络能够接收更多的有效信息,采用全连接神经网络作为Actor与Target-Actor网络,采用LSTM神经网络作为Critics与Target-Critics神经网络,加深了神经网络的深度,提高了神经网络的性能,使神经网络能够有效地进行训练,并找出每个状态下的最优动作。

本发明尚有多种实施方式,凡采用等同变换或者等效变换而形成的所有技术方案,均落在本发明的保护范围之内。

相关技术
  • 基于DDPG深度强化学习算法的投资组合管理方法
  • 一种基于深度强化学习DDPG算法的D2D用户资源分配方法
技术分类

06120112899241