logo
0
0
WeChat Login

当AI遇见金融(StockAgent):基于大语言模型的仿真现实世界股票交易

workflow schematic

AI代理能否模拟现实世界的交易环境,以研究外部因素对股票交易活动的影响(例如宏观经济、政策变化、公司基本面和全球事件)?这些经常影响交易行为的因素是投资者追求利润最大化的关键要素。我们的工作试图通过基于大型语言模型的代理来解决这个问题。我们开发了一个名为StockAgent的多代理AI系统,该系统由LLM驱动,旨在模拟投资者对真实股市的交易行为。StockAgent允许用户评估不同外部因素对投资者交易的影响,并分析交易行为和盈利能力效应。此外,StockAgent避免了现有基于AI代理的交易模拟系统中存在的测试集泄漏问题。具体来说,它防止模型利用其可能获得的与测试数据相关的先验知识。我们在StockAgent框架下评估了不同LLM在接近现实条件的股票交易环境中的表现。实验结果展示了关键外部因素对股票市场交易的影响,包括交易行为和股价波动规律。这项研究探讨了在没有与市场数据相关的先验知识的情况下,代理自由交易差距的研究。通过StockAgent模拟识别出的模式为基于LLM的投资建议和股票推荐提供了宝贵的见解。

链接

ARXIV链接: https://arxiv.org/pdf/2407.18957

架构

architect

交易模拟流程的工作流。共有四个阶段,分别是初始阶段交易阶段交易后阶段特殊事件阶段。在交易后阶段,每日事件和季度事件分别以每日和每季度频率发生。特定事件阶段是随机发生的事件,作用于随机的交易日。

快速开始

环境搭建

conda create --name stockagent python=3.9 conda activate stockagent git clone https://github.com/dhh1995/PromptCoder cd PromptCoder pip install -e . cd .. git clone <This Github Project> cd Stockagent pip install -r requirements.txt

API密钥

使用GPT作为代理LLM:

export OPENAI_API_KEY=YOUR_OPENAI_API_KEY

使用Gemini作为代理LLM:

export GOOGLE_API_KEY=YOUR_GEMINI_API_KEY

使用Gitee AI作为代理LLM (支持 Qwen 系列模型):

export GITEE_AI_API_KEY=YOUR_GITEE_AI_API_KEY

开始模拟

您可以选择一个基础LLM并通过一行命令启动模拟:

python main.py --model MODEL_NAME

我们将gemini-pro设置为默认LLM。

关于'procoder'

这里我们使用: https://github.com/dhh1995/PromptCoder.git 这个工具,请在安装后下载。

引用

如果您认为代码有价值,请使用此引用。

@article{zhang2024ai, title={When AI Meets Finance (StockAgent): Large Language Model-based Stock Trading in Simulated Real-world Environments}, author={Zhang, Chong and Liu, Xinyi and Jin, Mingyu and Zhang, Zhongmou and Li, Lingyao and Wang, Zhengting and Hua, Wenyue and Shu, Dong and Zhu, Suiyuan and Jin, Xiaobo and others}, journal={arXiv preprint arXiv:2407.18957}, year={2024} }

About

[Preprint] Large Language Model-based Stock Trading in Simulated Real-world Environments

4.76 MiB
0 forks0 stars1 branches0 TagREADMEAGPL-3.0 license
Language
Python95%
Shell5%