SimStock:一种比相关性更优的股票相似性度量方法

·
·
·

一.  本文概要

本文提出了一种新的股票相似性评估框架SimStock,通过结合自监督学习和时域泛化技术,实现了股票数据的相似性表示。其主要贡献包括引入维度损坏的自监督学习方法,使得SimStock能够学习到稳健的股票表示;在四个真实基准测试中展现出卓越的性能,能够跨越时间、地域和行业的界限,为任何查询股票找到相似的股票;简化了筛选潜在投资机会的过程,能够轻松找到与不同市场上的股票相似的投资对象。

二. 背景知识

2.1 自监督学习

自监督学习(SSL)是一种在计算机视觉和自然语言处理领域广泛研究的方法。它的主要目标是创建一个嵌入空间,使得相似的数据点在该空间中靠近,而不相似的数据点则远离。然而,在金融领域,尤其是处理时间序列数据(如股票数据)时,对于应用自监督学习的研究相对较少。这是因为在非平稳时间序列数据中生成不同的视图(正样本和负样本)具有挑战性,而这对于自监督表示至关重要。目前,大部分关于自监督学习的研究都集中在视频理解或动作分类方面,而对于将时间序列数据的周期性信息纳入考虑的研究还很有限。虽然有一种名为TS2VEC的方法能够通过对比学习在时间序列数据中生成稳健的表示,但是它仍然难以处理嘈杂和非平稳的时间序列数据(如股票数据)。

2.2 时域泛化

时域泛化(DG)是指学习一个通用的模型表示,用于适应不同的领域。已经提出了各种方法来实现时域泛化。其中一种典型的方法是数据操作,通过增加输入数据的多样性来获得通用的模型表示。另一种方法是领域不变表示学习,它通过不同的技术(如内核方法对抗训练和特征对齐)来确保模型在不同领域中具有相似的表示。此外,还有一些学习策略,如元学习和集成学习,旨在增强模型的泛化能力。然而,这些方法通常假设时间是按顺序排列的,无法自适应地处理随时间变化的情况。最近提出的一种方法叫做DRAIN,是首个能够自适应地学习多个源域之间的时间漂移的时域泛化方法。我们提出的模型SimStock基于DRAIN,但是有两个主要区别。首先,SimStock将时域泛化引入到自监督学习框架中,因此它适用于无标签数据,并且可以同时考虑时间上下文和静态信息。其次,SimStock考虑了从一个源域适应到多个目标域的情况,以实现股票数据的通用表示,而DRAIN只考虑了不同的时域。

三.  本文方法

图片
SimStock算法是一个用于股票数据分析和预测的算法。它考虑了股票数据随时间的变化。在训练阶段,它使用T个观察到的源域(代表不同时间点的股票数据分布)来训练模型。每个源域包含了股票的时间特征和静态元数据。通过一个深度神经网络,SimStock将这些特征转换为一个表示嵌入,用于捕捉股票的时态和静态特征。
SimStock的目标是在未来的目标域上进行测试,它希望能够预测股票数据在不同时间点的动态变化。为了达到这个目标,SimStock采用了自我监督学习的框架,并结合了时间域泛化的概念。它通过在训练过程中预测不同时间点的模型参数的动态变化,从而捕捉股票数据在时间分布变化时的特征。具体而言,SimStock使用一个深度神经网络模型作为表示模型,将股票的时间特征和静态元数据作为输入,并输出一个表示嵌入。这个表示嵌入包含了股票数据的时态和静态特征。在训练过程中,SimStock通过预测不同时间点的模型参数的动态变化来训练模型。这样,模型可以学习到股票数据的动态变化规律,从而能够在未来的目标域上做出准确的预测。

3.1 时域泛化

SimStock使用了一个表示网络来学习股票数据的特征,并通过时间域泛化的概念来处理数据的动态变化。这个概念是受到DRAIN算法的启发提出的。在SimStock中,每个时间域都有一个表示网络,它通过最大化条件概率来训练模型参数的状态。不同时间点的模型参数状态是通过一个深度神经网络进行预测的。SimStock的目标是在未来的目标域上进行测试,并通过整合训练数据来估计未来的模型参数状态。为了解决数据在不同时间点的动态变化问题,SimStock引入了时间域泛化的概念。它通过使用LSTM来建模模型参数的随机过程,以有效地更新模型参数。通过这种方式,SimStock能够捕捉股票数据的时态变化,并预测未来的股票走势。

3.2 时间表征学习

SimStock的目标是学习一个能够理解股票数据随时间变化的模型。为了实现这一目标,SimStock使用了一个称为半监督学习框架的方法来进行时间表示学习。在SimStock的框架中,使用了时间特征变体和静态元数据的组合来捕捉股票价格的时变模式和其他相关信息。

  1. 首先,SimStock通过一个称为时间变换模块的步骤对股票价格特征进行处理。这个模块会对价格特征进行多次变换,并将它们组合起来,形成一个更丰富的表示。例如,可以使用移动平均等方法来创建不同时间间隔内的时间特征,比如一天和一周的模式。
  2. 同时,SimStock还考虑了股票的静态元数据,比如公司的描述和财务报表。这些静态数据在一个静态嵌入层进行处理,得到一个嵌入表示。可以使用不同的嵌入模型来处理不同类型的数据。
  3. 接下来,SimStock将时间特征变体和静态元数据的嵌入组合起来,形成一个组合嵌入表示。这个组合嵌入表示包含了时间模式和其他静态信息的融合。
  4. 为了进一步提取有意义的特征,SimStock引入了特征标记模块。这个模块将输入特征转换为标记嵌入,以获得更加有信息量的表示。通过计算特征索引的偏置项和权重向量,可以得到特征标记嵌入。
  5. 最后,SimStock将所有特征标记嵌入堆叠在一起,并添加一个特殊的分类标记,得到一个被认为包含了训练后信息精髓的标记嵌入。

总的来说,SimStock的时间表示学习框架通过将时间特征变体、静态元数据和特征标记嵌入结合起来,可以更好地理解股票数据的时变模式和相关信息。

四. 实验分析

4.1 实验设置

  • 数据集:使用纽约证券交易所(NYSE)、纳斯达克证券交易所(NASDAQ)、上海证券交易所(SSE)、深圳证券交易所(SZSE)和东京证券交易所(TSE)上市股票的每日股票价格(OHLCV)和行业信息。数据集包含了详细的价量信息。
  • 基线模型:寻找相似股票的常用方法之一是计算股票收益的相关性。基线中使用了两个版本的相关性基线模型,取决于回溯期。Corr1使用过去一年的收益率,Corr2使用测试期开始时(即2018年2月13日)的收益率。另外还使用了其它的两种方法作为基线。
  • 超参数选择:使用Adam优化器进行训练,并设置了初始学习率为10^-3。
  • 训练细节:按年份将时间源域划分为四个域,所有模型都使用相同的训练细节。
  • 评估指标:为了评估我们模型的性能,我们使用动态时间规整(Dynamic Time Warping,DTW)来衡量任意两只股票之间的距离。DTW是一种常用的用于时间序列数据的距离度量方法,相比于相关性更为灵活。我们使用DTW度量来选择前10、5、3和1个相似股票,并以DTW@10、DTW@5、DTW@3和DTW@1作为评估指标。

4.2 实验结果

实验部分研究了SimStock模型在一对一和一对多场景中的表现。在一对一场景中,SimStock在同一个交易所中找到相似股票的能力最好,优于其他基线模型。在一对多场景中,SimStock在不同交易所中找到相似股票的能力也优于基线模型。定性评价方面,SimStock在找到与查询股票在时间序列距离和基本面信息方面相似的股票上表现良好。然而,其他模型在这两个方面中只有一个方面表现良好。这表明SimStock在找到相似股票方面具有较好的综合能力。
图片
图片

五. 总结展望

SimStock是一种新颖的方法,通过自监督学习和时间域泛化来表示股票的相似性。在这项研究中,SimStock成功地解决了股票表示学习中的挑战,包括时间分布偏移和传统分类的模糊性。通过结合股票数据的时间和静态特征,并引入时间域泛化,SimStock学习到了具有鲁棒性的股票表示。实验证明SimStock在寻找相似股票方面的有效性,优于其他基线模型和最先进的自监督学习模型。这表明SimStock在股票市场分析和投资决策领域具有广阔的应用前景。

展望未来,SimStock可以进一步扩展到更多的股票市场和交易所,以提供更全面和准确的相似股票推荐。此外,可以探索SimStock在其他金融领域的应用,如债券、期货等。随着技术的进一步发展,SimStock的性能和效果还有可能得到进一步的提升。

发布者:股市刺客,转载请注明出处:https://www.95sca.cn/archives/111039
站内所有文章皆来自网络转载或读者投稿,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!

(0)
股市刺客的头像股市刺客
上一篇 1天前
下一篇 1天前

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注