| name | stock-analysis |
| description | 该技能用于股票个股技术分析,支持多数据源自动切换获取实时行情数据,计算技术指标(均线、MACD、RSI),识别支撑位压力位和有效缺口,集成消息面分析,生成专业格式分析报告并提供操作建议。当用户需要分析股票走势、预测未来走势、获取技术指标分析、了解支撑压力位、查看缺口情况或获取操作建议时,应调用此技能。 |
| version | 2.1.0 |
| python_dependencies | ["pandas==2.0.3","numpy==1.24.3","requests==2.31.0","lxml==4.9.3","beautifulsoup4==4.12.2"] |
股票个股分析
任务目标
本技能用于对指定股票进行全面的技术分析,包括实时数据获取、技术指标计算、支撑位压力位分析、缺口识别分析、消息面分析。
能力包含:
- 实时行情获取
- 技术指标计算(均线、MACD、RSI)
- 支撑位压力位识别
- 缺口识别(向上/向下缺口及支撑压力作用,已回补缺口自动过滤)
- 趋势判断
- 消息面分析(基于搜索能力)
- 未来走势预测
触发条件:用户提供股票代码并要求分析走势、预测未来、获取操作建议。
前置准备
依赖安装:
pip install pandas==2.0.3 numpy==1.24.3 requests==2.31.0 lxml==4.9.3 beautifulsoup4==4.12.2
可选依赖:
pip install git+https://github.com/Etherdrake/openclaw-china-market-gateway.git
操作步骤
标准流程
1. 获取股票代码并验证
用户提供股票代码,参考股票代码格式文档(见 references/stock_code_format.md),确保代码格式正确。
示例:
- 000001(平安银行)
- sh600000(浦发银行)
- 000001.SZ(深交所格式)
2. 获取实时行情数据
调用 scripts/fetch_stock_data.py 获取实时行情和历史K线数据。
数据格式说明:详见 references/data_format.md
多数据源自动切换机制:
- 主数据源:新浪财经(免费、稳定)
- 备用数据源1:东方财富(免费、稳定)
- 备用数据源2:雪球(免费、稳定)
- 自动切换:主数据源失败时自动尝试备用数据源
参数:
--stock_code:股票代码(必需)
--days:获取历史数据天数(默认60天)
--source:指定数据源(可选,可选值:sina/eastmoney/xueqiu,不指定则自动切换)
返回:当前价格、涨跌幅、成交量、历史K线数据、数据源信息。
数据文件字段:
historical:历史K线数据(推荐使用)
kline_data:历史K线数据(兼容性字段,与 historical 相同)
real_time:实时行情数据
3. 消息面分析
使用搜索能力搜索股票相关资讯(最近7天)。
搜索关键词:"{股票名称} {股票代码}"
执行步骤:
- 使用搜索能力搜索 "{股票名称} {股票代码}" 相关的最新资讯(最近7天)
- 筛选出与该股票直接相关的资讯(公告、新闻、研报等)
- 分析每条资讯的情绪(正面/负面/中性)
- 统计情绪分布
- 预测对明日开盘的影响
- 提供投资建议
情绪判断标准:
- 正面:利好消息、业绩增长、订单增加、政策支持等
- 负面:利空消息、业绩下滑、减持、处罚等
- 中性:客观信息、行业动态、市场数据等
影响等级:
- 高影响:资讯数量多且整体情绪偏多,可能显著影响开盘
- 中高影响:资讯较多且情绪较好,对开盘有积极影响
- 中等影响:资讯适中,对开盘有一定影响
- 低影响:资讯较少或情绪中性,影响有限
- 高负面影响:负面资讯多,可能导致低开或下跌
- 中等负面影响:负面资讯较多,有一定负面影响
4. 计算技术指标和支撑位
调用 scripts/analyze_stock.py 进行技术分析。
参数:
--data_file:股票数据文件路径(必需)
--output:分析结果输出文件路径(可选)
计算结果:
- MA5/MA10/MA20/MA60 均线
- MACD 指标
- RSI 指标
- 支撑位和压力位
- 缺口分析(向上缺口和向下缺口,已回补缺口自动过滤)
- 成交量分析(1手=100股)
- 趋势判断
- 消息面分析(基于搜索能力,智能体补充)
5. 分析当前走势
基于技术指标进行多维度分析:
- 均线排列(多头排列/空头排列/缠绕)
- MACD金叉死叉状态
- RSI超买超卖状态
- 成交量配合情况
- K线形态分析
- 缺口分析:
- 向上缺口:通常构成支撑位(回调时缺口上沿可能成为支撑)
- 向下缺口:通常构成压力位(反弹时缺口下沿可能成为压力)
- 缺口大小和位置对走势的影响
- 消息面分析:
6. 预测未来走势
综合技术指标和趋势分析,对未来走势进行判断。
考虑因素:趋势方向、支撑压力位、缺口支撑压力、成交量变化、消息面影响、市场情绪。
给出概率评估:上涨/下跌/横盘的概率和强度。
7. 生成操作建议
根据分析结果和预测,给出明确的操作建议:
- 买入/持有/卖出/观望
- 建议的买入/卖出价格区间
- 止损位和止盈位设置
- 缺口相关的操作提示(如:向上缺口未回补前可作为支撑参考)
- 消息面相关的操作提示
资源索引
注意事项
- 股票市场存在风险,所有分析仅供参考,不构成投资建议
- 技术分析基于历史数据,不能保证未来表现
- 建议结合基本面分析和市场环境进行综合判断
- 实时数据可能存在延迟,请以实际交易数据为准
- 数据源说明:
- 系统支持多数据源自动切换,提高数据获取稳定性
- 默认使用新浪财经作为主数据源,失败时自动尝试东方财富和雪球
- 可通过
--source 参数指定使用特定数据源
- 数据源状态会在输出中明确显示
- 如遇所有数据源均失败,请检查网络连接或稍后重试
- 消息面分析说明:
- 使用搜索能力获取最新资讯(最近7天)
- 智能体自动分析资讯情绪(正面/负面/中性)
- 为每条资讯提供投资参考提示
- 情绪分析基于关键词匹配,仅供参考
- 建议结合技术分析和基本面分析综合判断
- 手数换算说明:
- 成交量统一换算为"手"
- 1手 = 100股(符合A股交易规则)
- 在报告中明确标注换算关系
- openclaw说明(可选):
- openclaw 是一个开源的中国市场数据网关项目
- 支持更多数据源(SSE/SZSE/东方财富/新浪/雪球等)
- 目前可能未正式发布到 PyPI,建议使用已集成的备用数据源
- 如需使用 openclaw,可从源码安装
- 未安装 openclaw 时,使用
fetch_stock_data.py 即可获得完整功能
- 缺口分析要点:
- 向上缺口(跳空高开):通常在回调时可能构成支撑,关注缺口是否回补
- 向下缺口(跳空低开):通常在反弹时可能构成压力,关注缺口是否回补
- 缺口越大,其支撑或压力作用通常越强
- 成交量配合的缺口更具参考意义
- 近期缺口的参考价值高于远期缺口
- 必须在所有建议中包含风险提示
使用示例
示例1:完整分析流程(技术面 + 消息面)
用户:分析三安光电(600703)的走势和消息面
执行步骤:
- 调用
python scripts/fetch_stock_data.py --stock_code 600703(默认获取60天数据)
- 调用
python scripts/analyze_stock.py --data_file stock_data_600703.json
- 使用搜索能力搜索"三安光电 600703"最近7天的资讯
- 分析资讯情绪、预测对明日开盘的影响
- 基于技术分析和消息面分析生成走势预测和操作建议
输出:包含技术指标分析(含准确的MA60和MACD)、支撑压力位、缺口分析、消息面分析、明日开盘影响预测、操作建议的完整报告。
示例2:纯技术分析(不含消息面)
用户:分析平安银行(000001)
执行步骤:
- 调用
python scripts/fetch_stock_data.py --stock_code 000001(默认获取60天数据)
- 调用
python scripts/analyze_stock.py --data_file stock_data_000001.json
- 生成技术分析报告(均线、MACD、RSI、支撑压力位、缺口分析等)
输出:专业格式的技术分析报告,包含完整的MA60均线、准确的MACD指标、支撑压力位、缺口情况、成交量分析、趋势判断。
示例3:指定数据源分析
用户:使用东方财富数据源分析贵州茅台(600519)
执行步骤:
- 调用
python scripts/fetch_stock_data.py --stock_code 600519 --source eastmoney(默认获取60天数据)
- 调用
python scripts/analyze_stock.py --data_file stock_data_600519.json
- 生成分析报告
输出:基于东方财富数据源的技术分析报告,包含完整的技术指标(MA5/MA10/MA20/MA60、MACD、RSI)和趋势判断。
故障排查
问题:数据获取失败
解决方案:
- 检查网络连接
- 尝试指定其他数据源:
--source eastmoney 或 --source xueqiu
- 检查股票代码是否正确(参考 references/stock_code_format.md)
问题:openclaw 未安装
解决方案:
- 直接使用
fetch_stock_data.py(已实现完整功能)
- 或尝试从源码安装 openclaw:
pip install git+https://github.com/Etherdrake/openclaw-china-market-gateway.git
问题:消息面分析无数据
解决方案:
- 使用搜索能力搜索"{股票名称} {股票代码}"最近7天的资讯
- 筛选与该股票直接相关的资讯
- 建议关注公司公告和行业动态