探索Transformer在金融行情预测领域的应用——预测银行间回购市场加权价格

本文涉及的产品
交互式建模 PAI-DSW,每月250计算时 3个月
模型训练 PAI-DLC,100CU*H 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
简介: 文章先发在公众号上来,顺便在这里也写一下,主要思路其实就是模仿盘古天气大模型的方法,来试试能不能用来预测全国银行间市场质押式回购每日的加权平均价格,目前模型主要架构和训练粗略的跑了出来,效果不是太好,目前看了点其他paper,希望尝试利用已经开源的各种大模型做微调。欢迎大家批评指正。

2023年以来华为、谷歌等基于深度学习的天气预报大模型的出现,打破了人们对天气预报只能建立在复杂的物理、统计学基础的数值预报基础上的认知,而如今指导各行业和人们生活的数值天气预报更是经过上百年的系统性科学发展。虽然,目前这些天气大模型的基础数据还要部分依赖数值模型,但为深度学习能够产生精确天气预报已经做出了不小的贡献,并且模型已经投入到实际应用当中。举一反三,如果类似的模型架构也能应用到对银行间质押式回购资金面预测当中效果将会如何呢。

带着这种好奇和疑问,我找到了华为盘古天气(Pangu-Weather)发表在Nature上的论文—Accurate medium-range global weather forecasting with 3D neural networks并且以此为线索找到了论文的开源伪代码,在其论文和伪代码中,作者展示了模型的详细架构和工作原理。虽然开源的只是关于模型架构的简单代码,但在引用部分,作者详细指出其最基础的参考既是微软的Swin Tranformer——一种用于图像识别的移动窗口Transfromer模型。由于Swin模型同样是以论文的形式发表,且同样的,为了模型架构被大家理解,模型的所有基础代码作者全部做了开源。所以,我很顺利的集齐了这次举一反三所需要的所有跟模型架构有关的所有信息。(在这里要感谢下论文和开源这两大人类的精妙发明,简直就是在促进人类知识传播方面的天花板)

接下来就是对模型代码的逐行解析。简而言之,Swin模型通过对图片进行分块的多头注意力以及移动切割后再分块的多头自注意机智,已经使得其在图像识别领域有了不小的优势,同时节省了计算资源。因为Swin模型对像素块的切割处理以及通过移动窗口来构建切割块之间的联系的方式,盘古天气模型将这一特性应用到了以经纬度和高度为分割的3D地球气象模型中,并且通过继承Swin模型中的相对位置编码特性构建了在3D空间的相对位置编码,从而让模型在信息流中嵌入了不同经纬度的相对位置关系,以此将数据放入到encoder和decoder的流程中,并最终直接得到预报数值。

借鉴于此,对比银行间资金面相关的影响数据,如果将同业存单的不同信用等级和期限、市场行情的不同期限和不同行情指标(加权价格、当日最高最低价等)、央行公开市场操作的不同指标、分机构类型资金日内行情数据等一系列2D平面数据进行叠加,那么在初始状态即可得到一张能够描述银行间资金面影响因素的当日状态数据图,通过对此数据图应用Swin Transformer架构,对传入的各类型数据进行绝对位置编码以明确不同类型数据的不同位置信息,并改变最终返回的数据维度,最终得到我想要的预测银行间质押式回购R001-R1M这5个期限,最高成交、最低成交、加权平均价格、前加权平均价格这四个市场行情价格,组成的2D数据组。这个就是我这个模型的大致架构,我将其取名为IB Financial Liquidity Transformer(翻译成中文既是银行间资金面流动性模型),简称就是IBFL了。

下面是简要的模型结构图,涉及到参数和运算部分全部用的椭圆表示,有学习参数的部分用紫色进行了标注(其实一开始的想法是直接开源,无奈最终的结果太差,也就没有开源的必要了)
640.jpg

在采用近两年的数据将2D数据做96dim,同时encoder做2 layer,down sample之前做4 depth,之后做12 depth之后,(最后模型参数量为12,109,216个)。得到了对比真实世界数据差值最优的结果。如下表所示:

640-2.png
640-3.png

可以说如果用这样的结果来指导投资,不能说完全不能用,只能说用了可能就直接亏上天。虽然说一开始的想法是一次性把这个事情给做完,做到从0到1再到100,但是现在回想起来未免有点过于乐观。记得在吴恩达的深度学习课上,其所提出的一个评估深度学习最终模型效果的观点,就是模型最后的结果是否能达到人类所能达到的最好水平。如果以这个标准,在预测未来市场的加权平均价格方面,毕竟最智慧的人类也不能做到对第二天的市场加权价格手拿把掐,那么一个几乎是照搬过来的模型所得到的结果是这样的也不奇怪了。其次,模型无论是在数据量、各个指标的位置关系编码、不同指标在初始输入时embeding阶段的处理方面,我觉得都还有很大的改进空间。特别是受限于现在本身数据的不足,仔细甄别数据的有用程度便是提升模型本身训练可用数据的关键。所以,下一步的迭代,预计会从提取最优模型参数的自注意力权重,观察哪些权重占比更高从而改进数据输入开始。无论如何,感谢自己有毅力坚持从0做到了0.5,希望自己接下来能够继续保持求知欲,永远迭代!

相关文章
|
2月前
|
机器学习/深度学习 数据采集 存储
零基础入门金融风控之贷款违约预测Task4:建模和调参
零基础入门金融风控之贷款违约预测Task4:建模和调参
45 1
|
3月前
均值回归策略在A股ETF市场获利的可能性
【9月更文挑战第24天】均值回归策略是一种量化交易方法,依据资产价格与平均价格的关系预测价格变动。在A股ETF市场中,该策略可能带来收益,但需考虑市场复杂性和不确定性。历史数据显示某些ETF具有均值回归特征,但未来表现不确定,投资者应结合技术与基本面分析,合理决策并控制风险。
|
7月前
|
算法 数据可视化 数据挖掘
R语言指数平滑预测法分析南京出租车打车软件空载率时间序列补贴政策可行性
R语言指数平滑预测法分析南京出租车打车软件空载率时间序列补贴政策可行性
|
7月前
|
机器学习/深度学习 安全
R语言逻辑回归Logistic选股因素模型交易策略及沪深300指数实证
R语言逻辑回归Logistic选股因素模型交易策略及沪深300指数实证
|
7月前
|
机器学习/深度学习 算法 Python
数据分享|Python决策树、随机森林、朴素贝叶斯、KNN(K-最近邻居)分类分析银行拉新活动挖掘潜在贷款客户
数据分享|Python决策树、随机森林、朴素贝叶斯、KNN(K-最近邻居)分类分析银行拉新活动挖掘潜在贷款客户
|
7月前
非线性回归beta系数估算股票市场的风险分析亚马逊股票和构建投资组合
非线性回归beta系数估算股票市场的风险分析亚马逊股票和构建投资组合
非线性回归beta系数估算股票市场的风险分析亚马逊股票和构建投资组合
|
7月前
|
机器学习/深度学习 数据建模
数据分享|Eviews用ARIMA、指数曲线趋势模型对中国进出口总额时间序列预测分析
数据分享|Eviews用ARIMA、指数曲线趋势模型对中国进出口总额时间序列预测分析
|
7月前
|
安全 vr&ar
R语言非线性动态回归模型ARIMAX、随机、确定性趋势时间序列预测个人消费和收入、用电量、国际游客数量
R语言非线性动态回归模型ARIMAX、随机、确定性趋势时间序列预测个人消费和收入、用电量、国际游客数量
|
7月前
|
机器学习/深度学习 算法 Python
Python决策树、随机森林、朴素贝叶斯、KNN(K-最近邻居)分类分析银行拉新活动挖掘潜在贷款客户
Python决策树、随机森林、朴素贝叶斯、KNN(K-最近邻居)分类分析银行拉新活动挖掘潜在贷款客户
|
7月前
电信公司churn数据客户流失k近邻(knn)模型预测分析
电信公司churn数据客户流失k近邻(knn)模型预测分析

热门文章

最新文章