OpenClaw + Tushare 实战:用 AI 助手打造你的智能股票分析系统
作者: 虾仁 🦐 & 懒羊 🐑 日期: 2026 年 3 月 9 日 适用人群: 对量化投资、AI 助手、自动化分析感兴趣的投资者
📌 目录
背景与动机
为什么需要 AI 助手辅助投资?
传统股票分析的痛点:
- 📊 数据分散 - 行情、财务、公告分散在不同网站
- ⏰ 时效性差 - 人工查询滞后,错过最佳时机
- 🧮 分析耗时 - 筛选股票、计算指标花费大量时间
- 😓 情绪干扰 - 容易受市场情绪影响,做出非理性决策
OpenClaw + Tushare 的组合可以解决这些问题:
- ✅ 一站式数据查询
- ✅ 实时获取最新行情
- ✅ 自动化筛选和分析
- ✅ 客观数据驱动决策
工具介绍
OpenClaw 是什么?
OpenClaw 是一个AI 助手框架,可以连接各种工具和 API,让你用自然语言和 AI 交互来完成复杂任务。
核心特点:
- 🦎 支持多种大模型(Qwen、MiniMax、Gemini 等)
- 🔧 丰富的技能系统(Skills)
- 💬 支持多种聊天平台(微信、Telegram、Discord 等)
- ⏰ 定时任务和提醒功能
- 🧠 长期记忆和上下文管理
Tushare Pro 是什么?
Tushare Pro 是中国领先的金融数据平台,提供:
- 📈 股票、基金、期货、债券行情数据
- 📊 财务报表、业绩预测
- 💰 资金流向、龙虎榜
- 🌍 宏观经济、行业数据
积分系统:
- 注册赠送初始积分
- 每日签到获取积分
- 不同 API 调用消耗不同积分
环境搭建
1. 安装 OpenClaw
# 使用 npm 安装
npm install -g openclaw
# 验证安装
openclaw --version
2. 配置工作空间
# 初始化工作空间
openclaw setup
# 工作空间默认位置:
# Windows: C:\Users<用户名>.openclaw\workspace
# macOS/Linux: ~/.openclaw/workspace
3. 安装 Tushare 技能
方法 A:从 ClawHub 安装(推荐)
npx clawhub@latest install tushare-data
方法 B:从 GitHub 手动安装
# 克隆技能到 workspace 的 skills 目录
git clone https://github.com/DayDreammy/tushare-openclaw-skill.git \
~/.openclaw/workspace/skills/tushare-data
4. 获取 Tushare Token
- 访问 tushare.pro
- 注册账号并登录
- 进入个人中心获取 API Token
- 将 Token 配置到
TOOLS.md或环境变量中
## TOOLS.md 配置示例
## API Tokens
### Tushare Pro
- Token: `your_token_here`
- 官网:https://tushare.pro
5. 验证安装
# 检查技能是否就绪
openclaw skills list
# 应该看到 tushare-data 在列表中
实战案例
案例 1:查询单只股票行情
需求: 查看贵州茅台最近的日线行情
操作步骤:
帮我查询贵州茅台 (600519.SH) 最近 10 天的日线行情
API 调用示例:
import tushare as ts
pro = ts.pro_api('your_token')
df = pro.daily(ts_code='600519.SH', start_date='20260220', end_date='20260306')
print(df)
输出示例:
ts_code trade_date open high low close vol
600519.SH 20260306 1680.0 1720.0 1675.0 1710.0 123456
600519.SH 20260305 1650.0 1690.0 1645.0 1680.0 234567
...
案例 2:筛选低估值高分红股票
需求: 找出 PE<20、PB<3、股息率>3% 的股票
筛选条件:
| 指标 | 条件 | 说明 |
|---|---|---|
| PE | < 20 | 市盈率低于 20 倍 |
| PB | < 3 | 市净率低于 3 倍 |
| 股息率 | > 3% | 年分红率高于 3% |
API 调用:
# 获取每日基本指标
df = pro.daily_basic(trade_date='20260306',
fields='ts_code,pe,pb,dv_ratio,close')
# 筛选符合条件的股票
filtered = df[(df['pe'] > 0) & (df['pe'] < 20) &
(df['pb'] > 0) & (df['pb'] < 3) &
(df['dv_ratio'] > 3)]
实战结果(2026-03-06):
-
共筛选出 421 只 符合条件的股票
-
推荐关注:中国中铁 (601390.SH)
- PE: 5.25, PB: 0.47, 股息率: 4.39%
- 20 日涨幅: +2.92%
案例 3:监控指定股票
需求: 每天自动监控四川黄金 (001337.SZ) 的收盘价
OpenClaw 定时任务配置:
{
"name": "监控四川黄金",
"schedule": {
"kind": "cron",
"expr": "0 15 * * 1-5" // 每周一至周五 15:00(收盘后)
},
"payload": {
"kind": "agentTurn",
"message": "查询四川黄金 (001337.SZ) 今日收盘价和涨跌幅"
},
"delivery": {
"mode": "announce"
}
}
创建命令:
openclaw cron add --name "监控四川黄金" \
--schedule "0 15 * * 1-5" \
--message "查询四川黄金 (001337.SZ) 今日收盘价"
案例 4:财务健康度分析
需求: 分析某只股票的财务状况
查询指标:
- 利润表(收入、净利润)
- 资产负债表(负债率)
- 现金流量表(经营现金流)
API 调用:
# 利润表
income = pro.income(ts_code='601390.SH',
start_date='20250101',
end_date='20251231')
# 资产负债表
balance = pro.balancesheet(ts_code='601390.SH',
start_date='20250101',
end_date='20251231')
# 现金流量表
cashflow = pro.cashflow(ts_code='601390.SH',
start_date='20250101',
end_date='20251231')
分析维度:
- 营收增长率 = (今年营收 - 去年营收) / 去年营收
- 净利润率 = 净利润 / 营收
- 资产负债率 = 总负债 / 总资产
- 经营现金流 / 净利润(质量指标)
进阶玩法
1. 构建股票池监控系统
### 监控股票池
- 中国中铁 (601390.SH) - 基建龙头
- 首创股份 (600008.SH) - 水务公用
- 平安银行 (000001.SZ) - 银行
- 四川黄金 (001337.SZ) - 贵金属
### 监控指标
- 日涨跌幅超过 5% 时提醒
- 成交量放大超过 50% 时提醒
- 发布重大公告时提醒
2. 技术指标计算
import pandas as pd
import numpy as np
# 计算均线
df['MA5'] = df['close'].rolling(5).mean()
df['MA10'] = df['close'].rolling(10).mean()
df['MA20'] = df['close'].rolling(20).mean()
# 计算 MACD
exp1 = df['close'].ewm(span=12, adjust=False).mean()
exp2 = df['close'].ewm(span=26, adjust=False).mean()
df['MACD'] = exp1 - exp2
df['Signal'] = df['MACD'].ewm(span=9, adjust=False).mean()
# 计算 RSI
delta = df['close'].diff()
gain = (delta.where(delta > 0, 0)).rolling(14).mean()
loss = (-delta.where(delta < 0, 0)).rolling(14).mean()
rs = gain / loss
df['RSI'] = 100 - (100 / (1 + rs))
3. 自动化报告生成
每日收盘后自动生成:
# 📊 收盘日报 - 2026-03-09
## 持仓股票表现
| 股票 | 收盘价 | 涨跌幅 | 持仓盈亏 |
|------|--------|--------|----------|
| 中国中铁 | 5.93 | +1.2% | +¥2,340 |
| 首创股份 | 3.19 | -0.5% | -¥560 |
## 市场概况
- 上证指数:3,XXX 点 (+X.X%)
- 深证成指:X,XXX 点 (+X.X%)
- 成交量:X,XXX 亿
## 明日关注
- 中国中铁:接近压力位 6.00 元
- 四川黄金:关注 55 元支撑
4. 结合新闻情感分析
# 伪代码示例
from transformers import pipeline
# 加载情感分析模型
sentiment_analyzer = pipeline("sentiment-analysis")
# 获取新闻标题
news_titles = get_stock_news('601390.SH')
# 分析情感
for title in news_titles:
result = sentiment_analyzer(title)
print(f"{title}: {result[0]['label']} ({result[0]['score']})")
风险与注意事项
⚠️ 投资风险
- 数据延迟 - Tushare 数据可能有 1-2 小时延迟
- 模型幻觉 - AI 可能提供错误信息,需自行核实
- 市场风险 - 历史数据不代表未来表现
- 系统风险 - 技术故障可能导致数据缺失
⚠️ 使用注意事项
-
Token 安全
- 不要公开分享你的 Tushare Token
- 建议存放在环境变量或加密配置中
- 定期更换 Token
-
积分管理
- 免费用户有积分限制
- 高频接口消耗更多积分
- 每日签到赚积分
-
数据安全
- 敏感数据不要上传到云端
- 定期备份本地配置
- 注意隐私保护
⚠️ 合规提醒
- 📌 本系统仅供学习和研究使用
- 📌 不构成投资建议,据此操作风险自担
- 📌 投资决策请咨询持牌专业人士
总结
✅ 我们学会了什么?
- OpenClaw 基础 - AI 助手框架的搭建和配置
- Tushare API - 金融数据获取和使用
- 技能整合 - 将 Tushare 技能集成到 OpenClaw
- 实战应用 - 股票查询、筛选、监控、分析
🎯 核心价值
| 传统方式 | OpenClaw + Tushare |
|---|---|
| 手动查询多个网站 | 一句话获取数据 |
| Excel 手工计算 | 自动化分析 |
| 人工盯盘 | 定时监控 + 提醒 |
| 情绪化决策 | 数据驱动决策 |
🚀 下一步可以做什么?
- 扩展数据源 - 接入更多 API(新闻、公告、宏观数据)
- 策略回测 - 用历史数据验证投资策略
- 组合管理 - 管理多只股票的投资组合
- 机器学习 - 训练预测模型辅助决策
📚 学习资源
附录
OpenClaw 常用命令
# 查看技能列表
openclaw skills list
# 查看技能详情
openclaw skills info <skill-name>
# 管理定时任务
openclaw cron list
openclaw cron add --name "任务名" --schedule "0 15 * * *"
# 查看会话状态
openclaw status
# 搜索文档
openclaw docs search <关键词>
🦐 虾仁结语:
工具再强大,也只是辅助。投资的核心还是认知和纪律。
AI 可以帮你省时间、提供数据,但决策的责任永远在你自己。
祝投资顺利,理性投资,长期主义!📈
最后更新:2026 年 3 月 9 日 如有问题,欢迎交流~ 🐑