easy_investment_Agent_crewai
liangdabiao/easy_investment_Agent_crewai加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
项目地址:https://github.com/liangdabiao/easy_investment_Agent_crewai
Stars:657 ⭐ | Forks:126 | 语言:Python | License:MIT
如果你是一个散户投资者,每天面对 K 线图、财务报表、资金流向、政策消息感到无从下手,可能会有一个朴素的想法:要是有个 AI 能帮我把这些信息整合起来,告诉我该买还是该卖就好了。
这个项目正是对这个问题的一种回答。它基于 CrewAI 框架,构建了一个由 4 个专业化 AI Agent 组成的"虚拟投资研究团队",通过 AKShare 数据源获取 A 股实时行情、财务数据、资金流向等信息,协作生成完整的股票分析报告。
这个项目的作者 liangdabiao 在博客中这样解释开发动机:
传统开发中,输入输出和中间过程都是复杂模糊的,用 if-else 和业务代码很难有效果——这时候试试 Agent 可以。
从 GitHub 数据来看,这个项目获得了 657 个 stars,在 A 股 + AI Agent 这个细分领域内属于头部项目。
项目采用 CrewAI 框架,其核心理念是让多个 AI Agent 像真实的研究团队一样分工协作。每个 Agent 扮演特定角色,拥有独立工具,输出后可共享给下一个 Agent,最终由投资顾问 Agent 综合形成决策建议。
四大专业 Agent 分工如下:
① A股市场分析师:负责技术面分析——K 线形态、均线系统、支撑阻力位判断,以及政策面影响评估和板块轮动分析。
② 财务报表专家:基于 CFA 背景知识,对目标公司进行盈利能力、偿债能力、营运能力评估,并与同业进行关键指标对比,输出估值判断(PE/PB/PS/PEG)。
③ 市场情绪研究员:追踪主力资金流向、北向资金动向、散户情绪,以及政策消息对股价的影响,对市场整体情绪进行量化评估。
④ A股投资策略顾问:作为团队输出的最终整合者,综合前三个 Agent 的分析结果,给出评级(买入/持有/卖出)、目标价、止损价、风险提示等可操作建议。
数据层采用 AKShare 作为主力数据源。AKShare 是国内最流行的开源金融数据库,覆盖 A 股实时行情、历史 K 线、财务报表、资金流向、宏观数据等多个维度,无需付费即可获取。值得注意的数据路由设计:美股/港股优先走 Longbridge → 降级 YFinance → 补 AKShare;A 股走 Efinance → AKShare → Tushare → Pytdx → Baostock 的五级降级链路——这种分层降级机制在实盘中尤为重要,避免单点接口失效导致整个分析流程中断。
项目定义了四类自定义工具,供 Agent 动态调用:
| 工具 | 能力 |
|---|---|
| A股数据工具 | 实时行情、历史 K 线、财务指标查询 |
| 财务分析工具 | 深度财务分析、同业对比 |
| 市场情绪工具 | 资金流向、新闻舆情、技术情绪信号 |
| 计算器工具 | 安全数学计算(避免浮点误差影响金融计算) |
工具基于 crewai[tools]>=0.152.0,通过 @tool 装饰器注册,可被 Agent 自主选择调用。
环境要求:Python 3.12~3.13
安装步骤(以 stock_analysis_a_stock 子目录为例):
git clone <repo-url>
cd stock_analysis_a_stock
poetry install --no-root
cp .env.example .env
# 配置 OPENAI_API_KEY(支持 OpenAI/GPT-4)或使用其他兼容接口
poetry run python src/a_stock_analysis/main.py
配置文件位于 config/agents.yaml 和 config/tasks.yaml,支持修改 Agent 角色设定、任务描述和输出格式,以适配不同分析需求。
切换模型:在 crew.py 中可切换为 Ollama 本地模型(默认注释掉了),适合有本地 GPU 且希望降低 API 成本的用户。
1. 分析质量高度依赖底层数据源和 AI 模型
AKShare 数据来自公开网络抓取,存在数据延迟和字段不完整的可能性;在极端行情(涨停/跌停/熔断)下,实时数据可能与真实成交有偏差。AI 模型生成的"投资建议"本质上是对历史数据的模式识别,不能预测黑天鹅事件。
2. CrewAI 框架本身的局限性
当前版本仅支持顺序执行(Sequential Process),尚不支持更复杂的"共识流程"或"自主流程";多个 Agent 之间的信息传递依赖 YAML 配置,缺乏细粒度的错误处理机制。
3. 无 Web UI,需要一定技术背景
项目是纯命令行工具,没有图形化界面。虽然降低了部署复杂度,但对非技术用户存在一定门槛——需要能修改 .env 配置和 Python 代码。
4. 免责声明的法律边界
项目 README 明确声明"仅供学习研究使用,不构成投资建议",这是开源社区的通行做法,但同时也意味着用户需要自行承担投资决策的全部后果。
这个项目在两个维度上有代表性价值:
AI Agent 工程化的一面:它展示了如何用 CrewAI 这样的多 Agent 框架,将模糊的"股票分析"任务分解为结构化的工作流,并通过工具调用与真实数据源打通。这不是"把数据喂给 LLM 吐文字"的简单模式,而是多角色协作、分工明确的工程实践。
A 股量化分析的民主化:AKShare 此前解决的是"获取 A 股数据"的问题,这个项目在此基础上叠加 AI 分析能力,降低了个人投资者构建量化研究工具的门槛——无需付费数据接口、无需 Quant 背景知识,有 Python 基础即可运行。
| 维度 | 评价 |
|---|---|
| 技术深度 | ⭐⭐⭐ CrewAI 多 Agent + AKShare 数据源,工程实现扎实 |
| 实用性 | ⭐⭐⭐⭐ 覆盖 A 股分析全流程,可直接用于个人投资研究 |
| 上手友好度 | ⭐⭐⭐ 有 Python 基础即可,文档较清晰 |
| 部署复杂度 | ⭐⭐⭐ 需手动配置 Python 环境/API Key,无容器化 |
| 数据可靠性 | ⭐⭐⭐ AKShare 数据可用,但需注意延迟和完整性 |
| 项目活跃度 | 持续更新,有配套博客演示,适合技术投资者关注 |
如果你对 AI Agent 在金融场景的应用感兴趣,或者想找一套可改装的 A 股分析框架,这个项目值得 Clone 并亲自运行一次。