多LLM AI交易代理框架1rok
1rok是一个独立的框架,用于在多个LLM提供商上运行投资组合构建代理,支持OpenAI、Anthropic、Gemini等,集成Alpaca、Yahoo Finance等数据源。其两阶段管线(run和execute)通过10个专业代理进行市场分析、股票筛选和订单执行。
1rok是一个开源的独立框架,旨在为投资组合构建代理提供一个统一的操作环境,支持包括OpenAI、Anthropic、Gemini、xAI、DeepSeek、GLM和OpenRouter在内的多个LLM提供商。该项目在GitHub上(仓库: achaljhawar/1rok)发布,采用TypeScript编写,并基于Bun运行时。
1rok的核心特性在于其内联工具注册表,该注册表将Alpaca、Yahoo Finance、FRED和Tavily等金融数据源提供的市场、股票、研究、技术分析、期权、收益、投资组合和网页搜索等八大工具组整合在一起。这些工具通过Zod定义进行类型验证,并适配各提供商的工具调用格式。
代理管线是1rok的核心,分为四个阶段和十个专业代理:宏观代理(The Economist)读取市场机制;筛选代理(The Scout)选出25-30个候选标的;然后六个分析代理并行工作,分别负责情绪、基本面、估值、催化剂、风险和技术分析;随后编排代理(The CIO)综合意见;最后投资组合构建代理(The Trader)确定仓位,并通过Alpaca执行订单(默认为纸交易)。
值得注意的是,1rok明确区分了两个命令:run仅生成投资组合构建的JSON工件,从不触碰经纪商;execute则读取工件并实际下单。执行时可指定--live标志以进行真实交易,否则默认使用Alpaca的纸交易环境。
项目还提供了一个实时排行榜网站(investingbench.vercel.app),自2026年1月20日起跟踪各模型在Alpaca纸交易中的表现。权重分配为:基本面20%,估值20%,风险(倒置)15%,技术分析15%,催化剂15%,情绪10%,宏观门控5%。每个投资组合最多持有8个仓位,最低85%的仓位资金,单一标的不超过40%。
1rok的架构清晰:CLI入口通过Provider适配器连接TradingPipeline,后者实例化内联工具注册表,并由专业代理通过工具循环调用。工具处理程序调用位于src/data中的类型化服务,这些服务再访问外部API。项目布局包括src/data(提供者客户端、领域服务、类型)、src/tools(工具定义和注册表)、src/harness/agents(代理实现)、src/harness/providers(提供者适配器和工具循环)和src/harness/pipeline(运行编排)。
安装要求Bun 1.1.0或更高版本,并需要设置相应提供商的API密钥。快速启动命令包括bun install、复制.env.example并填写密钥,然后运行bun run 1rok -- run --model <model-id>。还支持全局安装CLI。
项目环境变量包括Alpaca、FRED、Tavily的API密钥,以及各LLM提供商的密钥。Anthropic模型通过@anthropic-ai/claude-agent-sdk集成,该包内置claude二进制文件。可选变量包括默认模型ID和每个模型的单独纸交易凭证。
脚本包括类型检查、构建和测试。此外,1rok还支持程序化使用,通过导入createProviderFromModel和TradingPipeline直接运行管线。
总之,1rok是一个功能丰富的多LLM交易代理框架,适合对算法交易和AI代理感兴趣的研究者及开发者。它强调安全性(run不接触经纪商),并提供了灵活的扩展性。