将人工智能与定量分析相结合以增强战略制定
QuantGPT
是一款开源工具,专为那些寻求通过直观的 UI 充分利用 Vectorbt PRO 丰富文档功能的宽客而设计。我们的目标是利用先进的自然语言处理功能,在复杂文档和最终用户之间建立无缝桥梁。
AI 支持的文档搜索:使用自然语言查询完整的 Vectorbt PRO 文档,使信息搜索就像输入问题一样简单。上下文理解:获得与您的搜索查询直接相关的见解和上下文信息,确保您不仅掌握各种分析策略背后的“如何”,而且还掌握“为什么”。高效的策略制定:快速找到您需要的功能、参数和模块,节省您的时间并简化从构思到执行的流程。核心理念QuantGPT
的构建信念是,正确的工具可以显着提高量化策略开发的能力和效率。通过将人工智能与策略创建相融合,我们不仅简化了搜索过程,还简化了搜索过程。我们正在重新定义量化分析师与信息交互的方式。
作为一个社区驱动的项目, QuantGPT
依靠协作努力和贡献而蓬勃发展。无论是通过代码、想法还是反馈,您的输入都有助于塑造量化策略开发工具的未来。
深入了解QuantGPT
体验,提升您的交易策略,并为不断发展的定量分析领域做出贡献。
为该存储库添加星标或分叉以表示您的支持并保持更新。查看贡献指南,了解如何参与这一旅程。注意: QuantGPT
是一个不断发展的项目。我们从 Vectorbt PRO 开始,但视野是广阔的。目标是最终整合多种分析工具和库,打造一个用于定量分析的多功能生态系统。
探索QuantGPT
算法以思考的速度满足策略。
确保您的系统上安装了 Conda。如果没有,请从 Conda 官方网站下载。请按照以下步骤设置QuantGPT
:
首先将QuantGPT
存储库克隆到本地计算机:
git clone https://github.com/rnikitin/quantgpt.git
cd quantgpt
使用Python 3.10创建Conda环境并激活它:
conda create --name quantgpt python=3.10
conda activate quantgpt
在 Conda 环境中,使用 Conda 或 pip 安装 Scrapy:
conda install -c conda-forge scrapy
或者
pip install Scrapy
更多详细信息请参阅 Scrapy 官方文档。
安装 Scrapy 后,使用pip
安装其他必要的依赖项:
pip install -r requirements.txt
将env.example
重命名为.env
并填写必要的变量:
强制变量:
OPENAI_API_KEY= " sk-XXXX "
GPT_MODEL= " gpt-4 "
可选变量:如果需要,请在此处从 Chainlit Cloud 获取这些变量;如果您目前不需要持久性,则完全删除它们。您可以在此处阅读有关持久性和 Literal AI 平台的更多信息。
LITERAL_API_KEY= " cl_XXX "
如何生成CHAINLIT_AUTH_SECRET
您可以在此处阅读。要将CHAINLIT_AUTH_SECRET
添加到.env
文件,可以使用以下命令:
chainlit create-secret
导航到quant_scraper
目录以准备运行 scraper:
cd quant_scraper
执行抓取工具,将secret_url
直接传递到命令中:
scrapy crawl vbt_pro -a secret_url= " pvt_XXXX "
pvt_XXXX
应从 VectorBT Pro 会员资格中获得。
完成后,导航回项目的根目录:
cd ..
一切设置完毕后,启动用户界面:
chainlit run quantgpt.py
首次运行需要 3-5 分钟来构建 Vector Store 索引,具体取决于您的互联网连接速度。
您的QuantGPT
设置已完成。默认的 AI 模型是 GPT-4,但您可以在.env
文件中调整它。请注意索引和请求的成本,索引成本可能约为 1 美元,每个请求约为 0.2 美元。
QuantGPT
执行一系列涉及数据提取、转换和响应生成的步骤:
数据提取:
Scrapy
,系统以编程方式导航 vectorbt pro 文档网站以检索内容。改造:
llama_index
模块处理收集到的数据,根据 markdown 标题(“##”)将文档分段为索引部分。gpt-3.5-turbo
为每个部分生成相关问题,扩展文档的元数据。VectorIndex
中。响应生成:
VectorIndex
中提取相关部分。该方法旨在通过大量文档提供 SOTA 质量答案,但代价是每次查询的支付成本更高。
QuantGPT
旨在与 Chainlit 交互,利用其强大的聊天机器人 UI 功能,非常适合与定量交易应用程序的大型语言模型 (LLM) 进行交互和评估。
启动应用程序后,系统可能会提示您输入登录凭据。使用以下默认组合:
用户名: admin密码: admin
对于那些需要在其实例中保持持久性的用户,Chainlit 需要此身份验证步骤。它是一个占位符,应在生产中或在处理敏感数据时用适当的身份验证措施替换。
该应用程序将自身呈现为聊天界面,提供了一种与底层人工智能交互的直观方式。但是,重要的是要注意当前的一些限制:
随着QuantGPT
的发展,其功能也会不断发展。当前的限制是成长和发展的机会:
如果您是 LLM 开发人员或爱好者,您的专业知识可以帮助QuantGPT
充分发挥其潜力。强烈鼓励实验、尝试和贡献。如果您有想法或改进,请分叉存储库,进行更改并提交拉取请求。您的贡献很有价值,我们随时欢迎!
以下是QuantGPT
即将推出的内容:
不久的将来:
quantgpt.py
以便通过 Python 笔记本进行灵活的实验。展望未来:
长期愿景:
每一步都旨在让QuantGPT
成为量化交易界更智能、更直观的助手。
QuantGPT 最初是作为一个个人项目,出于导航和利用强大但复杂的 vectorbt.pro 库的功能的需要。然而,Quantgpt 的愿景远远超出了单一工具或库的范围。它是关于建立一个全面的生态系统,使量化交易者和开发人员能够将复杂的数据和复杂的策略转化为可操作的见解和可操作的交易系统。
以下是有关QuantGPT
如何发展的一些想法:
策略翻译:自动将经过回测的策略从 Vectorbt 翻译到 freqtrade 等其他交易平台,使用户能够轻松地从研究环境转移到实时交易环境。
知识整合:将学术论文、教程和书籍等广泛的量化金融资源纳入QuantGPT
索引。这将允许用户查询复杂的理论和模型并将其直接应用于他们的交易策略。
交互式学习:使用会话式用户界面创建交互式学习环境,经验不足的交易者可以提出问题并接收解释、代码片段或相关材料的参考,从而使复杂的定量概念的学习曲线变得平坦。
实时数据分析:将QuantGPT
与实时市场数据源连接起来,使其能够根据当前市场状况提供即时分析和见解。
自定义索引:允许用户从自己的数据集创建自定义索引,从而实现基于专有信息的个性化见解和策略开发。
QuantGPT
不仅仅是一个工具;更是一个工具。这是一个创新平台。以下是它如何为社区服务:
协作开发:鼓励开发人员和量化分析师为QuantGPT
的发展做出贡献,无论是通过贡献代码、共享数据集还是开发附加功能的插件。
弥合差距:通过充当各种定量工具和平台之间的联络人, QuantGPT
可以简化策略开发和回溯测试的工作流程,使其更加高效且易于使用。
量化交易民主化:帮助打破量化交易领域的进入壁垒,使更广泛的受众能够使用先进的交易工具和分析。
QuantGPT
的未来与我们的集体创造力一样有限。随着它的发展和适应, QuantGPT
的目标是成为每个量化交易者工具包的基石,从好奇的初学者到经验丰富的专业人士。与我们一起塑造量化交易的未来。
衷心感谢那些对QuantGPT
的发展至关重要的个人和团队:
QuantGPT
交互的无缝且直观的方式。你们的集体贡献不仅激发了该项目的灵感,而且使该项目得以取得成果。
QuantGPT
根据 MIT 许可证提供。该许可允许在专有软件中重复使用,前提是许可软件的所有副本均包含 MIT 许可条款和版权声明的副本。
要查看完整许可证,请参阅 GitHub 存储库中的 LICENSE 文件。