164
实践探索 Vol. 4 No. 06 2022基于 LightGBM 回归与动态规划算法的价格预测 与量化交易策略
莫柠源
(合肥工业大学,安徽 宣城 242000)
摘要:本文构建使用遗传算法优化的基于 LightGBM 回归的价格预测模型并且使用了粒子群算法优化的基于动态规划的规划模型进行 黄金和比特币的量化交易相关的投资决策。本文根据当天前五天的交易数据采用 lightGBM 回归模型加上模拟退火算法优化参数预测出某 天的交易价格。紧接着,为了决策出最优的投资方案,本文设计了使用粒子群算法优化的基于动态规划的规划模型。该模型以夏普比率 为目标函数,以未来五天黄金和比特币交易变化量为决策变量,规定交易金额非负且只有在黄金交易日才能交易黄金。为了优化模型,
利用未来五天预测值的方差作为风险性的刻画,对风险性与收益赋予不同的权重作为目标函数,来刻画不同投资性格下的投资策略。
关键词:LightGBM;动态规划;量化交易;价格预测
当下,量化交易以专业的金融知识为基石,借助统计学与数 学工具,用数量模型固化从数据中,利用电脑技术进行交易,得 到超额的回报比。站在一个投资者的视角,进行资产配置。本文 站在一个投资者的视角,进行资产配置,基于交易价格数据使用 建立的数学模型给出每日最佳交易策略。
一、问题分析
整个交易策略主要被分为了两个部分,第一部分为需要根据直 到今日之前的黄金 / 比特币价格数据,对未来三天的价格进行预测,
第二部分为根据预测结果,综合风险性、投资收益、服务费等因素 来决定今日的投资策略 . 在对第一部分的研究中,我们尝试使用了 基于 LightGBM 神经网络的价格预测模型进行预测,将过往的价格 作为训练集进行训练,并不断迭代预测未来三天的价格,得到了全 局的预测结果并与实际情况进行比较 . 在第二部分中,我们尝试使 用动态规划的思想,综合考虑投资风险性、投资收益、服务费等因 素进行动态规划,制定每一天的投资策略以及调整持仓策略。
二、模 型建立与求解
(一)基于 LightGBM 的价格预测模型 1. 数据预处理
本文使用美国每日黄金结算价格自 2008 年 01 月 02 日到 2018 年 5 月 16 日共计 2290 天,以及每日比特币结算价格自 2013 年 04 月 28 日至 2018 年 8 月 14 日的数据。为了消除价格之间的量纲影 响,需要进行数据标准化处理。那么,对于黄金与比特币的价格,
我们使用今日价格 / 昨日价格的价格比率来代替今日价格进行后 续的预测。
对于时间序列数据的预测,往往是建立由好几个历史数据预 测下一时刻的未来数据,这时候为了充分利用全部数据,应该对 原始数据集进行滑动窗口操作。
具体到对每一天的预测,笔者通过滑动窗口操作取出这一天 之前五天的交易价格数据进行训练,以得到当天的预测交易价格。
划分训练集和测试集。进行机器学习时,一般都要涉及到划 分训练集和测试集的步骤。特别地,在进行数据预测时,一般把 预测的依据(也就是历史数据)称作 X,把需要预测的数据称为 y。即首先把原始数据划分为 train_X,train_y 这两个训练数据集和 test_X,test_y 这两个测试数据集。各自划分输入、输出,输入时 基于 5 个迄今历史值,输出得到下一个点的数据预测值。
此外,由于数据集中存在一些异常值,本文同样对既得数据
进行了归一化、去噪、滤波的预处理。
2. 预测模型建立
机器学习算法在被广泛用于金融时间序列中被实践证明有较 好的预测效果。其中,RNN 在实际应用过程中存在长依赖的问题,
而 LightGBM 则有效地解决了 RNN 的长依赖问题,并在诸如时间 序列等相关问题上有良好的表现。所以,综合上述考虑,本文决 定使用 LightGBM 进行预测。
3. 预测模型求解
在 LightGBM 神经网络的训练中使用的数据应是要提取的时间 序列数据的时序特征。不妨设置窗口长度为 5 天,滚动窗口长度 为 1 天,预测期设置为 5 天。这意味着,我们将根据每天的当前 时间点,通过查看之前 30 天的数据,预测 5 天后的股价。
图 1 时间序列划分
使用 LightGBM 神经网络对训练集进行训练时,本文采用模拟 退火算法启发式寻找最优参数模拟退火算法来源于固体退火原理,
是一种基于概率的算法,其来源是,将固体加温至充分高,再让 其冷却,加温时,固体内部粒子随温升变为无序状,内能增大,
而逐渐冷却时粒子渐趋有模拟退火是基于 Monte-Carlo 迭代求解策 略的一种随机寻优算法,其出发点是基于物理中固体物质的退火 过程与一般组合优化问题之间的相似性。模拟退火算法从某一较 高初温出发,伴随温度参数的不断下降,结合概率突跳特性在求 解空间中随机寻找目标函数的全局最优解,即在局部最优解处能 够概率性地跳出并最终趋于全局最优。模拟退火算法是一种通用 的优化算法,理论上算法具有概率的全局优化性能。
我们所熟知的爬山算法完全是一种贪心算法,每次都是选择 一个当前的最优解,因此只能搜索到局部的最优值。模拟退火算 法其实也是一种贪心算法,但在搜索过程中引入了随机因素。所 以在一定程度上,模拟退火算法以一定的概率来接受一个比当前 解要差的解,因此有可能会跳出这个局部的最优解,到达全局的
165
2022 年第 4 卷第 06 期 实践探索
最优解。当搜索到局部最优解后,会以一定的概率跳过,这样便 有机会找到全局最优值。
4. 预测模型结果
表 1 预测结果
MSE RMSE MAE MAPE R2 训练集
Training set 74030.178 272.085 156.675 2.772 0.995 测试集
Testing set 827169.61 909.489 574.182 2.202 0.997 我们可以看到,黄金方面和比特币的预测误差大致在 0.995(越 靠近 1 代表越好),所以,预测效果是良好的。
图 2 预测走势与真实走势折线图
(二)基于动态规划的量化交易策略 1. 规划模型建立
根据规划模型,在第 k 天时,我们将目标函数 f(k)设置为 今日调整持仓且未来三天不变时第三天的夏普比率的值。当这个 目标函数达到最大时,就是风险和收益平衡时的状态。
以 k 日为例,现金,黄金,比特币所占总资产的比重为 [ck, gk,bk]。
每日结束,即第 k 日结束,需要先结算涨跌。
若该日的现金,黄金,比特币的涨幅分别是 [0.00547%,Gk, Bk], 则 占 比 会 变 为 [(1+0.00547%)ck,(1+Gk)gk,(1+Bk) bk]。
然后,再进行交易调整持仓,结算交易费。
在交易费结算完成之后,最终当日的现金,黄金,比特币所 占总资产的比重为
[(1+0.00547%)ck-(1±0.01)ΔGk-(1±0.02)ΔBk,(1+Gk) gk+ΔGk-(1+Bk)bk+ΔBk]
本规划模型的约束条件很自然,就是在当天进行完所有的操 作之后,现金,黄金,比特币所占总资产的比重都应该是大于等 于 0 的值,也就是
k
k k
k k
(1 0.00547%)c (1 0.01) (1 0.02) 0
(1 G )g 0
(1 B )g 0
k k
k k
G B
G B
+ + ± ∆ + ± ∆ ≥
+ − ∆ ≥
+ − ∆ ≥
2. 规划模型优化
注意到,在上文模型建立的过程中,将目标函数 f(k)设置时,
要求了今日调整持仓且未来三天不变,在跌涨频繁波动的情况下,
做决策时,只考虑了当前持仓条件维持到第三天的情况,很容易 出现低点卖出,随后高点买入的情况。所以,设定中途的 [ΔGk+1, ΔBk+1,ΔGk+2,ΔBk+2,] 的值,约束条件不做改变,并重新使用 上述模型进行求解即可。
本文选择使用粒子群优化算法帮助加快收敛。
3. 规划模型求解
使用 PSO 算法优化,步骤如下:
步骤 1:初始化每个粒子的速度参数、位置参数、初始温度 T
(0);
步骤 2:计算退火温度 T(t+1)=φT(t),其中,φ 为退火常 数,φ ∈(0,1),通过模拟退火算法粗略搜索得到初始解;
步骤 3:根据模拟退火算法迭代粗略搜索产生的初始解,对 初始解利用标准 PSO 算法进行精确搜索;
步骤 4:判断全局最优是否达到最大迭代次数或满足收敛准 则,如果是,则输出结果,否则转至步骤 2。
4. 规划模型改进
在上述的模型过程中,我们采用了金融的夏普率作为目标函 数时,投资策略过于保守,尽量多地投资了黄金,而没有选择比 特币。这是由于比特币不同于传统的金融项目,他的每日波动范 围巨大,方差就会很大,作为夏普率时就会拒绝这么大的风险。
所以,最终的收益率是不高的。
事实上,对于投资人来说,不同的性格会导致不同的投资策略。
除了以单一的夏普率作为目标函数之外,我们还可以通过其他的 方法刻画不同人对风险和收益的心里预期。我们将三类人设置为 激进型(不考虑风险的存在),稳定型(以夏普率作为目标函数),
以及中间型(认为风险与收益有其他的权重),制定不同的投资 方案。
我们使用未来三天的预测值的标准差 σk作为风险的评估值,
如果未来三天预测的价格波动比较大,也就说明未来的风险比较 大。
在模型建立时,对于激进型人格,我们将目标函数 fk设定为 三天之后的收益最大,对于稳定型人格,我们将目标函数 fk仍设 定为三天之后的夏普率最大,最后,对于中间型人格,我们将目 标函数设置为 fk为三天之后的收益减去 0.76 倍的风险评估值 σk。
5. 规划结果
最终,激进型的投资总价值为 20560265.49,稳定性的投资总 价值为 1237.22,中间型的投资总价值为 4253.99。
(三)结论
本文通过对每日黄金结算价格自 2008 年 01 月 02 日到 2018 年 5 月 16 日共计 2290 天,以及每日比特币结算价格自 2013 年 04 月 28 日至 2018 年 8 月 14 日的数据预测与规划求解,可以得到多 种风格的投资方案与结果,为投资人进行量化交易提供了良好的 启发。
参考文献:
[1] 唐一峰 . 基于 XGBoost 算法和 LightGBM 算法的贷款违约 预测模型研究 [J]. 现代计算机,2021,27(32):5.
[2] 马晓君,沙靖岚,牛雪琪 . 基于 LightGBM 算法的 P2P 项 目信用评级模型的设计及应用 [J]. 数量经济技术经济研究,2018,
35(5):17.