A Multimodal Foundation Agent for Financial Trading: Tool-Augmented, Diversified, and Generalist翻译

摘要

金融交易是市场的重要组成部分,由包括新闻、价格和 K 线图在内的多模态信息环境提供信息,并涵盖多种任务,例如定量交易和各种资产的高频交易。虽然深度学习和强化学习等先进的人工智能技术在金融领域得到广泛应用,但由于多模态数据处理不足以及各种跨任务的通用性有限,它们在金融交易任务中的应用常常面临挑战。为了应对这些挑战,我们推出了 FinAgent,这是一种多模态基础Agent,具有用于金融交易的工具增强能力。FinAgent 的市场情报模块处理各种数据(数字、文本和视觉数据),以准确分析金融市场。其独特的双层反思模块不仅能够快速适应市场动态,而且还融入了多样化的记忆检索系统,增强了agent从历史数据中学习并改进其决策过程的能力。agent对动作推理的重视增强了其对财务决策的能力。此外,FinAgent 整合了既定的交易策略和专家见解,确保其交易方法既是数据驱动的,又植根于健全的金融原则。通过对包括股票和加密货币在内的 6 个金融数据集进行全面实验,FinAgent 在 6 个金融指标方面显着优于 9 个最先进的基线,利润平均提高超过 36%。具体而言,在一个数据集上实现了 92.27% 的回报(相对改进为 84.39%)。值得注意的是,FinAgent 是第一个专为金融交易任务而设计的先进多模态基础智能体。

1.介绍

在这里插入图片描述
  金融市场对于经济稳定、促进资本配置和风险管理至关重要。由技术分析策略开发的金融交易系统通过实现高效交易来增强这些市场。基于规则的交易系统是僵化的,难以适应市场波动,常常导致在不断变化的市场中表现不佳。基于强化学习的系统表现出增强的适应性,但遇到了巨大的障碍,例如需要大量的训练数据和决策过程的不可解释性。此外,他们很难在不同的市场条件下进行泛化,对市场噪音敏感,并且往往无法将新闻和报告等多模态市场情报整合到他们的分析中。金融交易领域需要更先进的机器学习方法来应对复杂的市场动态,寻求超越基于规则和强化学习方法的局限性。
  最近,大型语言模型 (LLM) 在应用于人工智能Agent时展示了其在一系列决策任务中的潜力,标志着从自然语言处理到更复杂、特定于任务的功能的显着扩展。这一进步包括记忆和规划模块的集成,使这些agent能够适应动态环境,类似于人类认知过程。GPT-4V 等多模态LLM的出现进一步推动了这种发展,GPT-4V 通过处理文本和视觉数据增强了LLM的能力。此外,像 Toolformer 这样的工具增强模型的集成使LLM能够利用外部工具,从而提高他们在复杂场景中的决策能力。这种适应性和增强的处理能力的结合为金融科技等领域提供了新的可能性,在这些领域,细致入微的分析和适应非常重要。
  LLM在分析和解释金融数据方面表现出了卓越的能力,BloombergGPT 和 FinGPT 等发展就证明了这一点。然而,QA任务和交易中的序列决策之间存在天然的差距。尽管 FinMEM 是一个基于人对齐的记忆机制和特征设计的LLM交易智能体,但LLM作为全面自主交易系统的全部功能仍未得到充分开发,特别是在其解释多模态数据和利用多种工具的能力方面。应对金融市场复杂性的挑战如下:

  • Ch1: Insufficient Multimodal Data Processing Ability。处理广泛的市场情报,包括数字、文本和视觉信息,存在很大的困难。需要先进的分析方法从如此多样化的数据中提取关键见解来预测市场趋势。
  • Ch2: Lack of Targeted Information Retrieval。一些agent将检索与其主要任务混合在一起,仅依靠简短的目标任务摘要来检索历史数据。由于缺乏精确搜索,结果中引入了太多不相关的数据,从而降低了整体性能。
  • Ch3: Adaptability in Rapidly Evolving Markets。金融交易需要能够快速适应波动的市场条件。传统方法往往存在不足,这凸显了模型能够响应实时数据并根据历史市场趋势调整策略的必要性。
  • Ch4: Integration of Domain Knowledge。当前的模型往往难以有效整合专家指导和先进交易工具等既定方法,导致市场分析的有效性和深度下降。
  • Ch5. Reasoning for Actions。许多复杂的人工智能模型具有黑盒性质,直接给出决策结果,而不提供推理过程。

为了解决使多模态LLM适应动态且信息丰富的金融交易任务的挑战,我们推出了 FinAgent,这是一种多模态基础Agent,它集成了文本和视觉信息,用于对市场动态和历史交易模式进行全面分析。具体来说,FinAgent 的市场情报模块处理数字、文本和视觉等多模态数据,以提供对金融市场趋势的精确分析,为未来的交易任务提供见解(Ch1)。我们开发了一种独特设计的双层反思模块,不仅能够快速适应市场动态,还能增强智能体从历史数据中学习并改进决策过程的能力(Ch2)。FinAgent 为市场情报和反思模块引入了多元化的内存检索系统,将交易和检索任务分开,以增强对其特定功能的关注并最大限度地减少结果中的噪音(Ch3)。最后,决策模块结合专家知识,包括补充专家指导和辅助专家策略,来指导智能体的决策。 这种对动作提供合理解释的能力增强了对其金融决策的置信度(Ch4 & Ch5)。 具体来说,我们的贡献有四个方面:

  • 我们引入了市场情报模块,该模块能够从包括资产价格、视觉表示、新闻和专家分析的多模态数据集中提取关键见解,提供跨不同市场的多方面视图。
  • 我们不仅为交易任务生成摘要,还为检索任务提供查询字段。这些查询文本包括不同的检索类型,专门用于实现特定类型信息的集中检索。
  • 我们的两级反思模块结合了低级反思,用于分析市场价格变动以获得见解,而高级反思则评估过去的交易决策以寻求改进,模拟决策中的学习过程。
  • 我们在 FinAgent 中使用一套工具,包括专家指导和基于技术指标的高级交易策略,将领域知识注入金融交易中。

通过对包括股票和加密货币在内的 6 个金融数据集进行全面实验,FinAgent 在 6 个金融指标方面显着优于 9 个最先进的基线,利润平均提高超过 36%。具体而言,在一个数据集上实现了 92.27% 的回报(相对改进为 84.39%)。值得注意的是,FinAgent 是第一个专为金融交易任务而设计的先进多模态基础Agent。

2.RELATED WORK

2.1 LLM Agents for Decision Making

随着 ChatGPT 和 GPT-4 等LLM的出现,人工智能和自然语言处理领域已经达到了一个重要的里程碑。BloombergGPT 推出了金融领域的第一个LLM,结合了金融和文本数据,但没有公共访问权限。FinGPT 提出了第一个开源金融LLM,将强化学习与人类反馈相结合。
  虽然LLM在 NLP 任务中取得了令人印象深刻的性能,但更多的工作探索了LLM不仅作为语言处理器,而且能够作为执行复杂任务的Agent。AutoGPT 和 MetaGPT、Voyager 和人工智能Agent将LLM的能力扩展到涉及推理和协作的复杂任务,显着推进了技术并影响了日常生活。FinMEM 提供了一种 LLM Agent,具有与人类对齐的记忆机制和用于自动交易的角色设计。
  最近,人们越来越有兴趣使用外部工具和模块化方法来增强 LLM Agent。工具增强语言模型 (TALM) 已通过最近的基准进行了评估,例如 ScienceQA 和 TabMWP,旨在评估其解决复杂推理挑战的能力,特别是那些需要使用外部工具的挑战。这些改进使LLM能够通过网络搜索检索当前信息并应用来自外部来源的专业知识。
  然而,LLM Agent的一个主要限制是它们对基于文本的信息的依赖,这限制了它们的感知和与环境的交互。通过引入具有视觉特征的模型,例如最新版本的 GPT-4V,标志着一项关键突破。还出现了多模态Agent,利用多模态大语言模型的视觉功能来执行以前纯文本Agent无法完成的任务。大多数现有的LLM硕士都专注于 NLP 任务,而它们在交易方面的潜力尚未得到充分开发。FinAgent 是一个多模态、工具增强的LLM基础Agent,用于弥补金融交易方面的差距。

2.2 AI for Financial Trading

人工智能技术已广泛应用于各种金融交易任务中。基于 RNN 的模型(例如 GRU 和 LSTM)在股票预测中很受欢迎,因为它们是专门为捕获序列数据中的时间模式而设计的。另一个工作方向采用基于图的深度学习模型来模拟股票之间的成对关系。例如,Feng et al. 通过时间卷积增强图卷积网络(GCN),以挖掘股票之间的关系。Sawhney et al. 关注股票行业数据以及公司CEO之间的联系。基于树的模型也实现了鲁棒的性能。 Xu 和 Cohen 提出了一种变分自动编码器架构来从推文中提取潜在信息。Chen et al. 结合专业基金经理的投资行为,加强交易策略设计。经济新闻和财报电话等其他数据源也用于提高预测性能。Sun et al. 介绍一种新的三阶段集成学习方法。强化学习通过算法、平台和评估工具包在金融领域取得了成功。然而,这些方法中的大多数都因其对价格数据的关注和有限的泛化性而受到阻碍,因此需要能够集成多模态智能并驾驭复杂市场动态的先进技术。

3.PROBLEM FORMULATION

我们首先介绍金融交易中的马尔可夫决策过程(MDP)公式。随后,我们提供了 FinAgent 的正式表述,它将 LLM 集成到 RL pipeline中,以实现金融交易中的灵活推理和决策。

3.1 Financial Trading as MDP

金融交易任务涉及顺序做出投资决策(例如,买入/卖出股票),以在一定的风险承受能力下最大化总利润。我们将其表述为经典 RL 场景下的 MDP,其中Agent(投资者)与环境(金融市场)交互,在离散时间采取行动(投资决策)以赚取奖赏(利润)。MDP 由 5 元组 ( S , A , T , R , γ ) (\mathcal S, \mathcal A, \mathcal T, \mathcal R, \gamma) (S,A,T,R,γ) 构造。具体来说, S \mathcal S S 是有限状态集。 A \mathcal A A 是一组有限的动作集合。状态转移函数 T : S × A × S → [ 0 , 1 ] \mathcal T: \mathcal S×\mathcal A×\mathcal S → [0, 1] T:S×A×S[0,1] 封装了基于所选动作的状态之间的转移概率。奖赏函数 R : S × A → R \mathcal R: \mathcal S×\mathcal A →\mathcal R R:S×AR 量化在某种状态下采取动作的即时奖赏。衰减因子为 γ ∈ [ 0 , 1 ) \gamma ∈[0, 1) γ[0,1)。策略 π : S × A → [ 0 , 1 ] \pi:\mathcal S ×\mathcal A → [0, 1] π:S×A[0,1] 为每个状态 s ∈ S s ∈ \mathcal S sS 分配一个动作分布,其中 a ∈ A a ∈ \mathcal A aA 的概率为 π ( a ∣ s ) \pi (a|s) π(as)。在训练期间,Agent负责在整个交易周期的每个时刻做出投资决策,并尝试学习最大化期望累积衰减奖赏(整体利润)的最优策略(投资策略): π θ ∗ = a r g m a x π θ E π θ [ ∑ i = 0 T γ i r t + i ∣ s t = s ] \pi_{\theta*}=arg max_{\pi_{\theta}}\mathbb E_{\pi_{\theta}}[\sum^T_{i=0}\gamma^ir_{t+i}|s_t=s] πθ=argmaxπθEπθ[i=0Tγirt+ist=s]
  具体来说,我们专注于单一资产(例如股票或加密货币)交易。状态代表 RL Agent基于价格信息、有限订单簿、技术指标、趋势预测、财经新闻、专家投资行为和整体市场状况对金融市场的感知。动作空间包括购买、出售或持有资产的三种选择。奖赏函数利用市场资本(盈/亏)的变化并考虑佣金费用。

3.2 Problem Formulation

我们进一步将多模态 LLM 集成到 RL 框架中,从而实现推理过程的灵活定义。在 FinAgent 的制定中,我们关注独立定义、学习和应用这些流程的必要性。 我们将 FinAgent 的经典 RL 优化问题扩展如下:
π θ ∗ = a r g m a x π θ E π θ [ ∑ i = 0 T γ i r t + i ∣ s t = s , μ t = μ ] , (1) \pi_{\theta*}=arg\mathop{max}\limits_{\pi_{\theta}}\mathbb E_{\pi_{\theta}}[\sum^T_{i=0}\gamma^ir_{t+i}|s_t=s,\mu_t=\mu],\tag{1} πθ=argπθmaxEπθ[i=0Tγirt+ist=s,μt=μ],(1)
其中 r t r_t rt是时刻 t t t的奖励,取决于环境状态 s t s_t st和动作 a t a_t at μ ( ⋅ ) \mu(·) μ() 是封装有用的内部推理过程的专用模块。请注意,状态包含多模态信息,包括文本、数字和视觉数据。面对任务 λ \lambda λ并配备记忆 M e m t λ Mem^{\lambda}_t Memtλ和工具 T o o l t λ Tool^{\lambda}_t Tooltλ,FinAgent作为多模态LLM Agent,通过以下过程确定其动作 a t a_t at
π F i n A g e n t ( a t ∣ s t , μ t ) = D λ ( L L M ( ϕ D λ ( s t , μ t ) ) ) μ t = μ ( s t , M e m t λ , T o o l t λ ) (2) \begin{array}{cc} \pi_{FinAgent}(a_t|s_t,\mu_t)=\mathcal D^{\lambda}\bigg (LLM(\phi^{\lambda}_{D}(s_t,\mu_t))\bigg )\\ \mu_t=\mu(s_t,Mem^{\lambda}_t,Tool^{\lambda}_t) \end{array}\tag{2} πFinAgent(atst,μt)=Dλ(LLM(ϕDλ(st,μt)))μt=μ(st,Memtλ,Tooltλ)(2)
其中 ϕ ( ⋅ ) \phi(·) ϕ() 是与任务相关的提示生成器。然后提示被传递到多模态LLM,从中生成响应。最后,通过任务特定的动作解析函数 D λ ( ⋅ ) D^{\lambda}(·) Dλ() 解析响应,以在环境中执行兼容的动作。
  FinAgent是该框架中专为金融交易设计的多模态LLM Agent,它包含五个核心模块,分别是市场情报模块(M)、记忆模块(Mem)、低层反思模块(L)、高层反思模块 (H) 和决策模块 (D)。我们可以如下定义𝜇𝑡和其他模块:
μ t = μ ( s t , M e m t λ , T o o l t λ ) = μ ( M t λ , L t λ , H t λ , T o o l t λ ) M t λ = L L M ( ϕ M λ ( s t , M e m t M , λ ) ) L t λ = L L M ( ϕ L λ ( M t λ , K C t , M e m t L , λ ) ) H t λ = L L M ( ϕ H λ ( M t λ , T C t , M e m t H , λ ) ) , (3) \begin{array}{cc} \mu_t=\mu (s_t,Mem^{\lambda}_t,Tool^{\lambda}_t)=\mu(M^{\lambda}_t,L^{\lambda}_t,H^{\lambda}_t,Tool^{\lambda}_t)\\ M^{\lambda}_t=LLM(\phi^{\lambda}_M(s_t,Mem^{M,\lambda}_t))\\ L^{\lambda}_t=LLM(\phi^{\lambda}_L(M^{\lambda}_t,KC_t,Mem^{L,\lambda}_t))\\ H^{\lambda}_t=LLM(\phi^{\lambda}_H(M^{\lambda}_t,TC_t,Mem^{H,\lambda}_t)), \end{array}\tag{3} μt=μ(st,Memtλ,Tooltλ)=μ(Mtλ,Ltλ,Htλ,Tooltλ)Mtλ=LLM(ϕMλ(st,MemtM,λ))Ltλ=LLM(ϕLλ(Mtλ,KCt,MemtL,λ))Htλ=LLM(ϕHλ(Mtλ,TCt,MemtH,λ)),(3)
其中 M , M e m , L , H , D M, Mem, L, H, D M,Mem,L,H,D 分别对应各个模块, M e m ∗ , λ Mem^{*,\lambda} Mem,λ表示 M , L , H M, L, H M,L,H的记忆模块。KC和TC代表K线图和交易图。 ϕ ∗ λ \phi^{\lambda}_* ϕλ 表示与任务 λ \lambda λ关联的每个模块对应的提示生成器。
  因此,通过集成记忆机制、增强工具和多个设计模块,FinAgent 的总体目标是找到如式(2)所述的策略来优化总体衰减收益:
π F i n A g e n t = a r g m a x π ( ⋅ ) , μ ( ⋅ ) E [ ∑ i = 0 T γ i r t + i ∣ s t = s , μ t = μ ] s . t . π ( a t ∣ s t , μ t ) = D λ ( L L M ( ϕ D λ ( s t , μ t ) ) )   w i t h   E q . ( 3 ) ∀ t . (4) \begin{array}{cc} \pi_{FinAgent}=arg\mathop{max}\limits_{\pi(\cdot),\mu(\cdot)}\mathbb E\bigg [\sum^T_{i=0}\gamma^ir_{t+i}|s_t=s,\mu_t=\mu\bigg ]\\ s.t.\quad \pi(a_t|s_t,\mu_t)=\mathcal D^{\lambda}(LLM(\phi^{\lambda}_D(s_t,\mu_t)))~with~Eq.(3)\quad\forall t. \end{array}\tag{4} πFinAgent=argπ(),μ()maxE[i=0Tγirt+ist=s,μt=μ]s.t.π(atst,μt)=Dλ(LLM(ϕDλ(st,μt))) with Eq.(3)t.(4)

4.FINAGENT FRAMEWORK

在这里插入图片描述
  如图1所示,FinAgent框架由五个核心模块组成。具体来说,市场情报模块(§4.1)负责收集、整理、汇总和分析市场信息,包括每日更新的股票新闻、价格以及月度和季度财务报告。低级反思模块(§4.3)建立了市场情报和价格变化之间的内在相关性。高层反思模块(§4.3)涉及在过去的交易决策结果的背景下反思市场状况、价格变化和其他因素,旨在从以前的经验中获得见解,并通过评估未来的盈利能力来确定盈利能力的潜在改进。历史决策的有效性并为未来决策过程提供建议。记忆模块(§4.2)的主要作用是通过提供存储功能和向量检索功能来支持上述三个模块。工具增强决策模块(§4.4)将上述信息与增强工具和交易者偏好相结合,通过综合分析做出最终投资决策。
在这里插入图片描述

4.1 Market Intelligence Module

为了做出有利的投资决策,从各种多模态金融数据源中收集、总结、分析和提取关键见解是有益的。我们设计市场情报模块来实现这一目标。市场情报通常涉及有关宏观环境、当前市场状况或投资者情绪的每日数据,为投资和交易决策提供信息。在 FinAgent,我们利用与目标资产相关的最新和历史新闻、财务报告和资产价格的力量来提供信息和优化交易决策。
  Latest Market Intelligence。该模块主要由资产新闻和每日资产价格组成。然而,它并不仅限于这些要素。任何影响市场的信息都可以包含在我们的框架内,作为最新市场情报的一部分。该部分的目标是评估每个市场情报项目对未来资产价格影响的情绪(根据其对市场认知和潜在结果的影响,市场情报可以分为积极、消极或中性),并提供市场最近是否表现出看跌或看涨趋势的详细摘要,从而协助做出明智的决策。
  尽管如此,历史数据可以提供对可能影响未来定价并可能影响当前和即将到来的市场动态的模式的见解。例如,如果过去的产品发布显着提升了公司的股价,那么最近的产品发布可能会产生类似的效果(一些新闻会详细说明某事件发生后公司股价上涨或下跌的百分比)。我们希望将这些历史经验以及模式融入到 FinAgent 考虑因素中。这启发我们添加两个额外的功能层:从过去的市场情报中检索相关信息,并从中总结关键见解和历史经验
  Diversified Retrieval Operation。一种直接的方法涉及使用最新市场情报的摘要作为查询文本,然后使用 LLM 提取其语义丰富的嵌入。这允许通过向量相似性检索具有相似内容的过去市场情报。然而,采用这种方法不可避免地会带来两个显着的缺点:i)对近期市场情报的总结主要是为了支持后续的交易决策任务,而不是检索任务。这两个目标之间的巨大差距可能会导致检索结果不令人满意;ii)摘要中可能包含一些与检索任务无关的噪声,直接影响检索结果。为了应对这些挑战,FinAgent 中实现了多样化的检索。具体来说,我们在最新市场情报组件的输出中引入了一个额外的查询文本字段,该字段致力于与满足交易任务的摘要并行地提供检索任务。值得强调的是,我们可以定义各种检索类型,使Agent能够从多个角度、多种意义上、有目的地检索过去的市场情报。如图2所示,有 M M M种检索类型,因此单独检索 t o p − K top-K topK历史市场情报可以形成 M × K M\times K M×K个过去市场情报的组合。这种方法为最新摘要附带的每条历史信息分配特定的检索类型。这种细粒度的标签有助于更有针对性、更高效的搜索和检索过程。
  Past Market Intelligence。一旦搜索到类似的过去市场情报,它就会经历摘要步骤,提供为增强交易决策而量身定制的关键见解。这种细致的方法确保只纳入最相关的信息,从而减轻噪音的影响并最大限度地利用历史数据来制定交易策略。

4.2 Memory Module

记忆机制对于 LLM Agent 有效处理大量文本、掌握上下文、确保对话的连贯性以及提高 Agent 的理解和逻辑能力至关重要。在金融交易多模态 LLM Agent的背景下,记忆机制在三个主要方面发挥着至关重要的作用:i) 敏锐度。此功能允许多模态 LLM Agent利用市场新闻、财务报告和相关信息来增强市场预测。通过分析历史数据和时事并了解其对市场趋势和资产价格的潜在影响,多模态LLM Agent可以构建更准确的市场模型,预测未来价格走势和市场动态,以有效支持交易决策。ii) 适应性。 随着价格趋势和市场环境的快速发展,记忆机制使多模态 LLM Agent能够快速学习新的市场数据和价格趋势,以适应这些变化。这种适应性是通过对市场状况和交易结果的持续分析来实现的,使多模态LLM Agent能够动态调整其交易策略,以应对市场波动并利用新的交易机会。iii) 可修改性。记忆机制还使多模态 LLM Agent能够记住过去的决策错误和成功的交易,以进行深入的反思和分析。通过这种自我评估,多模态 LLM Agent可以识别导致错误的因素,避免在未来的交易决策中重复相同的错误。这种持续的学习和调整过程有助于持续优化多模态 LLM Agent的交易性能和输出质量,从而产生更稳健和高效的交易策略。
  为了实现记忆机制中的3A优势——敏锐性、适应性和可修正性,我们开发的记忆模块采用了矢量存储架构。该模块由三个主要部分组成:市场情报存储器(为(§4.1)服务)、低级反思存储器(为(§4.3)服务)和高级反思存储器(为(§4.3)服务)。如图 2 所示,摘要操作为每个模块创建一个查询文本字段,从而增强内存存储和检索过程。具体来说,市场情报模块的独特之处在于它能够通过查询文本检索过去的市场情报。该模块使用向量表示来简化存储和检索过程,根据查询文本向量的相似性来匹配数据。市场情报、低层反思和高层反思模块的所有分析和摘要都存储在记忆模块中。这种集成为Agent提供了广泛的最新和历史市场数据和见解,增强了其决策能力。

4.3 Reflection Module

Agent的设计中融入了反思模块,以模拟人类决策中固有的认知学习过程。反思框架分为低级反思和高级反思,每个反思都有不同的目的,以增强Agent的交易决策。低级反思模块涉及反思Agent的观察(例如新闻、财务报告、K线图和技术指标)与市场中由此产生的价格变动之间的关系,在提供的信息和实际价格变化之间建立联系。而高级反思模块则检查过去的决策,跟踪Agent的行为和随后的价格变动,以便从过去的成功或错误中学习。
  Low-level Reflection Module。低级反思模块的主要重点是分析给定的市场情报与 K 线图和技术指标以及过去和未来的价格变化之间的联系,以增强决策能力。在获取价格变化数据后,该模块会针对不同的时间范围生成详细的分析,涵盖短期、中期和长期的观点。重点是识别目标股票价格变动的潜在模式,并从给定的市场情报摘要和 K 线图分析如何导致此类价格变动中得出见解。为了方便将来的访问和参考,该模块生成一个查询字段,其中包含所学经验的简明摘要,确保在后续决策过程中有效检索和应用见解。
  High-level Reflection Module。高级反思模块旨在提供对过去交易决策的分析和反思。除了过去的交易决策及其基本推理之外,该模块还结合了交易图表上买入和卖出点的图形表示,以及累积收益图,以直观地表示历史决策的有效性。初始阶段评估每个交易决策的正确性,识别成功和错误。随后,该模块会针对每个已识别的错误或成功提出改进或纠正措施建议,从而促进持续的学习过程。除了个人决策分析之外,该模块还从成功和错误中生成总体经验教训,提供可适应未来交易决策的摘要和查询文本,以方便检索相关反思。这种迭代学习过程为Agent提供了一个动态知识库,该知识库随每个决策而发展,并允许交易Agent在类似场景之间建立联系,应用学到的经验教训来做出更明智的决策。

4.4 Tool-Augmented Decision-making Module

决策模块集成了关键输入,包括市场情报摘要、对价格变动分析的低级反思以及对过去决策的反思。还考虑具有专业投资指导的增强工具和传统交易策略,如 MACD 交叉、带有 RSI 过滤器的 KDJ 和均值回归。该模块分析市场情报中的情绪,根据价格走势预测看涨或看跌趋势,反思经验教训,并评估专业指导和传统指标。决策是综合这些分析的见解而得出的,同时考虑当前的财务状况,从而做出最终决定——是购买、出售还是持有资产。利用思维链(COT)方法和情境学习原理,我们的交易决策模块不仅执行交易,还提供推理,确保每个决策都植根于对市场动态和情境知识的全面理解。

5.EXPERIMENT SETUP

我们的研究旨在对 FinAgent 的交易有效性进行彻底评估,强调其通过显着缩短历史数据训练窗口有效运行的独特能力。该评估还涉及利用多模态数据输入,结合信息和Agent辅助增强工具,以及多视角多样化检索。这种方法旨在增强对市场动态和情绪的理解,实现更全面、更逻辑的决策过程以及经过证实的解释。为了验证其有效性,我们进行了一系列实验来解决以下研究问题(RQ):

  • RQ1:FinAgent 是否优于当前最先进的交易Agent并能处理其他具有挑战性的算法任务?
  • RQ2:FinAgent 的每个组件对其整体性能的贡献度如何?
  • RQ3:FinAgent 中增强工具的集成是否会导致其交易性能显着改善?
  • RQ4:FinAgent的多样化检索效果如何?

5.1 Datasets

在这里插入图片描述
在这里插入图片描述

### STiL 方法概述 Semi-supervised Tabular-Image Learning (STiL) 是一种用于处理多模态数据的半监督学习方法[^1]。该方法旨在通过结合表格数据和图像数据来提升模型性能,特别是在标注数据有限的情况下。STiL 的核心目标是从不同模态的数据中提取任务相关信息并加以融合。 #### 多模态分类中的任务相关信息探索 在多模态分类场景下,任务相关信息通常分布在不同的数据源之间。STiL 方法通过设计特定机制,在训练过程中逐步识别哪些特征对于当前任务最为重要[^2]。具体而言: - **跨模态关联建模**:STiL 利用注意力机制捕获表格数据与图像数据之间的潜在关系。这种机制能够动态调整各模态的重要性权重,从而聚焦于最相关的部分[^3]。 - **自监督信号增强**:为了充分利用未标记样本的信息,STiL 引入了自监督学习策略。这些策略可以通过预测旋转角度、对比学习等方式生成额外的学习信号,进一步优化模型参数[^4]。 - **联合表示空间构建**:通过对齐两种模态的嵌入向量,STiL 创建了一个统一的任务相关表示空间。这使得即使某些模态缺失或质量较差时,模型仍能保持较高的鲁棒性和准确性[^5]。 以下是实现上述功能的一个简化代码框架: ```python import torch.nn as nn class STILModel(nn.Module): def __init__(self, tabular_dim, image_channels): super(STILModel, self).__init__() # 图像编码器初始化 self.image_encoder = ImageEncoder(image_channels) # 表格数据编码器初始化 self.tabular_encoder = TabularEncoder(tabular_dim) # 跨模态注意层 self.cross_modal_attention = CrossModalAttention() # 输出层定义 self.classifier = Classifier() def forward(self, table_data, image_data): img_features = self.image_encoder(image_data) tab_features = self.tabular_encoder(table_data) combined_features = self.cross_modal_attention(img_features, tab_features) output = self.classifier(combined_features) return output ``` 此代码展示了如何分别对图像和表格数据进行编码,并利用 `CrossModalAttention` 层完成两者间的交互操作[^6]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值