难度:中级 · 时长:30分钟 · 收获:掌握基于 OpenClaw 的多智能体股票分析系统搭建,实现自动化选股、深度分析和模拟交易
目标读者
- 1-3 年经验的开发者
- 对 AI Agent 和量化交易感兴趣的程序员
- 想搭建个人股票助手的投资者
核心依赖与环境
- Node.js 18+
- OpenAI 兼容 API(Claude/Gemini/DeepSeek 等)
- 可选:Telegram Bot Token
- 可选:历史行情数据(CSV 格式)
项目结构树
StockClaw/
├── config/ # 配置文件
│ ├── llm.local.toml # LLM 大模型配置
│ ├── telegram.json # Telegram 集成配置
│ ├── tools.json # 工具配置
│ └── agents.json # 智能体配置
├── skills/ # 技能模块
│ └── crypto-stock-market-data/ # 行情数据获取技能
├── prompts/ # Prompt 模板
│ ├── agents/ # 专业智能体角色定义
│ │ ├── value_analyst/ # 价值分析师
│ │ ├── technical_analyst/ # 技术分析师
│ │ ├── news_sentiment_analyst/ # 情绪分析师
│ │ ├── risk_manager/ # 风险管理师
│ │ ├── portfolio_agent/ # 投资组合代理
│ │ └── trade_executor/ # 交易执行器
│ ├── workflows/ # 工作流模板
│ │ ├── backtest_mode/ # 回测模式
│ │ └── portfolio_review/ # 组合回顾
│ └── shared/ # 共享规则
├── data/ # 数据存储
│ └── portfolio.json # 投资组合状态
└── src/ # 核心代码
├── index.ts # 入口文件
├── router.ts # 请求路由
└── ...
手把手步骤
1. 克隆项目与安装依赖
首先从 GitHub 克隆 StockClaw 项目,然后安装依赖:
git clone https://github.com/24mlight/StockClaw.git
cd StockClaw
npm install
TIP
如果你在中国大陆,建议配置 npm 镜像源以加速安装:
npm config set registry https://registry.npmmirror.com
2. 配置 LLM 大模型
StockClaw 支持任何 OpenAI 兼容的 LLM API。我们创建一个本地配置文件:
# 复制示例配置
cp config/llm.local.example.toml config/llm.local.toml
编辑 config/llm.local.toml,以 Claude 为例:
# config/llm.local.toml
[llm]
# 使用 OpenAI 兼容接口
model = "claude-sonnet-4-20250514"
baseUrl = "https://api.anthropic.com/v1"
apiKey = "sk-ant-your-api-key-here"
# 可选:高级配置
[llm.context]
maxTokens = 200000 # 根据模型上下文窗口设置
compactionThreshold = 150000 # 触发压缩的阈值
如果你使用 DeepSeek、Qwen 或其他兼容 API,只需修改 baseUrl 和 model 即可。
WARNING
API Key 必须妥善保管,不要提交到版本控制系统。项目默认已忽略 config/llm.local.toml。
3. 启动服务
直接运行启动命令:
npm start
首次启动时,服务会自动检测配置文件,如果 Telegram 配置不存在,会提示你进行设置。
服务默认运行在 http://127.0.0.1:8000,打开浏览器即可访问 Web UI。
4. 配置 Telegram(可选)
如果你想通过 Telegram 与 StockClaw 交互,需要:
- 在 Telegram 中搜索 @BotFather,创建新机器人,获取 Bot Token
- 首次启动时,在终端输入
yes开启 Telegram 集成 - 粘贴你的 Bot Token
- 在 Telegram 中给你的机器人发送任意消息
- 将终端显示的配对码粘贴回来完成绑定
或者手动创建配置文件 config/telegram.json:
{
"enabled": true,
"botToken": "YOUR_BOT_TOKEN_HERE",
"allowedUsers": ["your_telegram_id"]
}
TIP
绑定 Telegram 后,你可以随时随地通过手机查询股票、接收分析报告,甚至执行模拟交易。
5. 配置行情数据技能
StockClaw 内置了加密货币和股票行情数据技能。技能目录位于 skills/,核心技能是 crypto-stock-market-data。
技能配置文件 config/tools.json 已经包含了内置技能:
{
"skills": [
{
"name": "crypto-stock-market-data",
"enabled": true,
"path": "skills/crypto-stock-market-data"
}
]
}
这个技能提供了以下工具:
get_crypto_price- 获取加密货币实时价格get_coin_historical_chart- 获取历史K线数据get_global_market_data- 获取全球市场数据get_company_profile- 获取股票公司基本信息get_coin_details- 获取代币详细信息
6. 创建第一个投资组合
StockClaw 使用 JSON 文件管理投资组合。创建 data/portfolio.json:
{
"cash": 100000,
"positions": [
{
"symbol": "AAPL",
"shares": 100,
"entryPrice": 175.5
},
{
"symbol": "MSFT",
"shares": 50,
"entryPrice": 380.0
},
{
"symbol": "NVDA",
"shares": 25,
"entryPrice": 450.0
}
],
"createdAt": "2026-03-14T00:00:00Z"
}
这个配置表示:
- 初始现金:10 万美元
- 持仓:苹果 100 股、微软 50 股、英伟达 25 股
7. 执行股票深度分析
现在我们通过 Web UI 或 Telegram 让 StockClaw 分析一只股票。
通过 Web UI:
- 打开
http://127.0.0.1:8000 - 在输入框输入:
Do a deep analysis on NVDA
StockClaw 会启动多智能体协作分析:
- 价值分析师 - 分析公司基本面、财务数据、估值水平
- 技术分析师 - 分析价格走势、技术指标、趋势形态
- 情绪分析师 - 分析新闻舆情、市场情绪、机构持仓
- 风险管理师 - 评估潜在风险、下行空间、仓位建议
- 根智能体 - 综合所有专业意见,输出最终建议
你可以看到各个专业智能体依次被调用,最终合成一个完整的分析报告。
通过 Telegram:
/analyze NVDA
8. 模拟交易操作
StockClaw 支持模拟交易(Paper Trading),所有交易只记录在本地,不会真正下单。
买入操作:
Buy 10 shares of GOOGL at market price
系统会:
- 获取实时报价
- 验证现金充足
- 计算交易成本
- 更新投资组合状态
- 返回交易确认
卖出操作:
Sell 5 shares of AAPL
查询持仓:
Show my portfolio
或使用斜杠命令:
/portfolio
9. 运行历史回测
这是 StockClaw 最强大的功能之一——用历史数据验证你的投资策略。
回测当前组合:
Backtest my portfolio for the last 7 trading days
StockClaw 会:
- 准备历史行情数据
- 隔离每个交易日的决策上下文(T-1 约束)
- 逐日模拟交易决策
- 计算收益率、最大回撤、夏普比率
- 生成详细的回测报告
WARNING
回测时间越长,消耗的 token 越多,耗时也越长。建议先用 7 天或 30 天小范围测试。
回测特定策略:
Backtest a strategy: buy when RSI < 30, sell when RSI > 70
你还可以让 StockClaw 自动发现投资机会:
Find a few US stocks with strong value and technical alignment
常见问题排查
1. LLM API 连接失败
症状:启动时报错 Connection refused 或 401 Unauthorized
排查步骤:
- 确认
config/llm.local.toml中的apiKey正确 - 检查
baseUrl是否可访问:curl -I <your-baseUrl> - 确认模型名称是否正确(大小写敏感)
- 查看日志中的详细错误信息
2. Telegram Bot 无法启动
症状:Telegram 消息没有响应
排查步骤:
- 确认 Bot Token 正确
- 检查
config/telegram.json中的enabled为true - 用
@BotFather检查机器人状态是否正常 - 确认已发送过消息完成用户绑定
3. 行情数据获取失败
症状:分析时提示 Failed to fetch stock data
排查步骤:
- 检查网络连接
- 确认
skills/crypto-stock-market-data已启用 - 查看技能日志排查具体 API 错误
- 部分数据源需要 API Key,检查是否配置
4. 投资组合状态异常
症状:持仓数据不更新或显示错误
排查步骤:
- 检查
data/portfolio.json格式是否正确 JSON - 确认文件权限可写
- 查看日志中的状态变更记录
5. 回测结果不准确
症状:回测收益率与实际不符
排查步骤:
- 确认使用的是 T-1 快照数据(不能用当日数据)
- 检查是否开启了未来函数(look-ahead bias)
- 确认滑点设置合理
- 查看回测日志中的具体交易记录
6. 上下文过长导致截断
症状:对话中途被截断,分析不完整
排查步骤:
- 在
llm.local.toml中增大compactionThreshold - 使用
session_compaction手动压缩上下文 - 缩短回测时间窗口
- 考虑切换到更长上下文的模型
扩展阅读 / 进阶方向
1. OpenClaw 官方文档
深入理解 OpenClaw 的架构设计和技能系统:
2. MCP 协议深入
StockClaw 通过 MCP(Model Context Protocol)扩展数据能力,可以学习:
- 如何编写自定义 MCP Server
- MCP 生态中的数据提供商
3. 多智能体系统设计
StockClaw 展示了多智能体协作的最佳实践:
- 根智能体负责决策和协调
- 专业智能体提供领域知识
- 隔离的临时会话避免污染主上下文
4. 量化交易策略回测
深入学习回测方法论:
- 避免过拟合
- 考虑交易成本和滑点
- 多时间周期验证
现在你已经掌握了 StockClaw 的核心用法。这个基于 OpenClaw 构建的 AI 股票管家能够帮你完成选股分析、组合管理、模拟交易和历史回测。快去试试让它帮你发现一些投资机会吧!