Install
openclaw skills install @chenxyzcyxpp/aggressive-growth-strategy激进成长选股与交易分析执行框架——将"周期性成长"方法论转化为可操作的选股筛选、个股深度分析和市场季节判断工具。 当用户需要:按七标准筛选小盘成长股、对个股进行八步体系化分析(赛道→市值→成长→位置→指数→排除→建仓→卖出)、 判断当前市场季节(春夏秋冬)与仓位策略、制定"小偷式"建仓与倒金字塔卖出计划时,加载此技能。 与 aggressive-growth-investing 技能的关系:后者是"心法"(理论体系),本技能是"剑法"(执行工具)。 核心数据源:四层降级架构(Tushare MCP > akshare > baostock > 东方财富API),通过共享模块 data_source.py 统一管理。
openclaw skills install @chenxyzcyxpp/aggressive-growth-strategy本技能是 aggressive-growth-investing(激进成长投研体系)的执行层。后者记录了完整的心法与方法论(道、法、术、器四层),本技能将其转化为三套可执行的脚本工具:
scripts/screen_stocks.py):按七标准批量筛选候选标的scripts/analyze_stock.py):对单只标的执行八步深度分析scripts/judge_market.py):判断当前市场处于春夏秋冬哪一季三个工具可独立使用,也可串联:先用季节判断器定大势 → 再用筛选器找出候选池 → 最后用个股分析器逐一深度分析。
当用户需要以下任一操作时,加载此技能:
🔴 数据校验铁律:所有行情、财务、资金数据必须来自实际数据源调用结果。数据获取失败时必须如实标注"数据获取失败",严禁编造任何具体数值。违反此规则视为重大事故。
Tushare MCP(主数据源) → akshare(第一备用) → baostock(第二备用) → 东方财富API(兜底)
所有数据获取通过共享模块 scripts/data_source.py 统一管理,脚本自动降级,无需手动切换。
| 数据需求 | Tushare MCP 接口 | 原 baostock/akshare 接口 |
|---|---|---|
| 日线行情(OHLCV) | mcp_tushareMcp_daily | query_history_k_data_plus |
| 每日指标(PE/PB/换手率/市值) | mcp_tushareMcp_daily_basic | stock_zh_a_spot_em |
| 财务指标(ROE/净利率等) | mcp_tushareMcp_fina_indicator | query_profit_data |
| 利润表 | mcp_tushareMcp_income | stock_financial_abstract_ths |
| 资产负债表 | mcp_tushareMcp_balancesheet | query_balance_data |
| 成长能力 | mcp_tushareMcp_fina_indicator | query_growth_data |
| 指数行情 | mcp_tushareMcp_index_daily | query_history_k_data_plus |
| 指数成分 | mcp_tushareMcp_index_member | query_sz50/hs300/zz500_stocks |
| 行业分类 | mcp_tushareMcp_stock_basic | query_stock_industry |
| 涨跌停价 | mcp_tushareMcp_stk_limit | 无直接对应 |
| 复权因子 | mcp_tushareMcp_adj_factor | baostock adjustflag 参数 |
| 交易日历 | mcp_tushareMcp_trade_cal | tool_trade_date_hist_sina |
注意事项:
mcp_tushareMcp_* 前缀工具是否可用YYYYMMDD(如 20260805),与 akshare(YYYY-MM-DD)和 baostock(YYYY-MM-DD)不同mcp_tushareMcp_* 系列工具获取数据;Python 脚本(data_source.py)作为脚本内降级链路| 数据需求 | 主数据源 | 第一备用 | 第二备用 | 兜底 | 说明 |
|---|---|---|---|---|---|
| K线行情 | Tushare daily | akshare | baostock K线 | 东财Push API | baostock个股K线最稳定,ETF仅近120天 |
| 行业分类 | Tushare stock_basic | baostock | - | - | 一次性获取全市场行业分类 |
| 盈利能力 | Tushare fina_indicator | baostock | akshare | 东财datacenter | ROE、净利率、毛利率 |
| 成长能力 | Tushare fina_indicator | baostock | akshare | 东财datacenter | 营收/利润同比增长率 |
| 指数数据 | Tushare index_daily | akshare指数API | baostock | 东财历史K线API | 上证、沪深300、创业板指 |
| 指数成分 | Tushare index_member | baostock | - | - | 判断个股是否被纳入指数 |
| 资金流向 | Tushare moneyflow | akshare | - | - | 主力资金净流入/流出 |
| 财务验证 | Tushare income | 东财datacenter | baostock | 东财新闻搜索 | 2026-07-31铁律要求交叉验证 |
scripts/data_source.py 是所有脚本统一的数据源入口,封装了四层降级逻辑:
get_kline(code, days):获取个股K线数据(前复权),自动降级get_index_kline(code, days):获取指数K线数据,使用指数专用API(stock_zh_index_daily / baostock指数查询)get_stock_industry(code):获取个股行业分类get_profit_data(code, year, quarter):获取盈利能力数据(ROE、净利率等)get_growth_data(code, year, quarter):获取成长能力数据(营收/利润同比增长率)get_index_stocks(index_code):获取指数成分股列表get_spot(code):获取实时行情快照(PE/PB/换手率/市值)verify_financial_data(code):通过东方财富datacenter API交叉验证财务数据source_label(source):返回数据源中文标签(传入 SOURCE_AKSHARE/SOURCE_BAOSTOCK 等常量)format_data_source_line(field, source):格式化数据来源标注行常量:SOURCE_AKSHARE="akshare", SOURCE_BAOSTOCK="baostock", SOURCE_EASTMONEY="eastmoney_api", SOURCE_FAILED="数据获取失败"
bs.login() 开始,bs.logout() 结束sh.600519,深市 sz.000001adjustflag="2" 前复权(用于价格分析),"3" 不复权(用于原始价格)/home/ubuntu/.hermes/hermes-agent/venv/bin/python3当 Tushare MCP、akshare、baostock 均不可用时,通过 curl 调用东方财富 API:
push2.eastmoney.com/api/qt/stock/get?secid={market}.{code}&fields=f43,f44,f45,f46,f47,f48,f50,f57,f58,f60,f116,f117,f162,f167,f170,f171
1.,深市 0.curl 'https://datacenter-web.eastmoney.com/api/data/v1/get?reportName=RPT_LICO_FN_CPD&filter=(SECUCODE="300769.SZ")&columns=ALL&sortColumns=REPORTDATE&sortTypes=-1&pageSize=10'
push2his.eastmoney.com/api/qt/stock/kline/get?secid={market}.{code}&fields1=f1,f2,f3&fields2=f51,f52,f53,f54,f55,f56&klt=101&fqt=1&beg={YYYYMMDD}&end={YYYYMMDD}用户给出一批股票代码或一个行业方向,需要按"激进成长投研体系"七标准筛选出合格标的。
确定筛选范围:
query_stock_industry 查找该行业所有股票运行筛选脚本:
# 筛选指定股票列表
python3 scripts/screen_stocks.py --codes "sz.300308,sh.688146,sz.300769"
# 筛选指定行业
python3 scripts/screen_stocks.py --industry "半导体"
# 自定义筛选参数
python3 scripts/screen_stocks.py --codes "sz.300308" --max-mcap 50 --min-roe 10 --min-growth 15
| 标准 | 数据源 | 通过条件 | 评分权重 |
|---|---|---|---|
| 1. 赛道 | data_source.get_stock_industry() | 属于科技或消费 | 10分 |
| 2. 市值 | data_source.get_kline() 计算 | 流通市值<50亿 | 20分(<30亿额外+10分) |
| 3. ROE | data_source.get_profit_data() | ROE≥8% | 15分(>15%额外+5分) |
| 4. 成长性 | data_source.get_growth_data() | 净利润同比≥10% | 15分(>30%额外+5分) |
| 5. 位置 | data_source.get_kline() | 价格在近250日50%分位以下 | 20分(<30%额外+10分) |
| 6. 指数路径 | data_source.get_index_stocks() | 未被纳入主要指数 | 5分 |
| 7. 排除项 | data_source.get_kline() isST+get_spot() PE | 非ST、股价>2元、PE>0 | 必要条件(不满足直接淘汰) |
用户指定一只股票,需要按照体系进行全方位分析。
python3 scripts/analyze_stock.py sz.300308
脚本自动完成八步分析:
补充定性分析:
cn-web-search 搜索最新公开信息和行业动态wechat-article-search 搜索公众号深度研报输出报告:
templates/stock_analysis_report.md 模板格式输出用户需要判断当前市场处于春夏秋冬哪一季,以及对应的仓位策略。
python3 scripts/judge_market.py
脚本输出:
Agent 补充判断:
| 季节 | 均线特征 | 成交量 | 位置 | 仓位 |
|---|---|---|---|---|
| 春耕 | MA20开始走平/上翘 | 温和放量 | 低位区(<30%) | 30-50%逐步布局 |
| 夏耘 | MA20>MA60,多头排列 | 持续放量 | 中位区(30-60%) | 50-70%持有+加仓 |
| 秋收 | MA20>MA60>MA250,加速 | 天量频现 | 高位区(>70%) | 70%→倒金字塔止盈 |
| 冬歇 | MA20<MA60,空头排列 | 持续缩量 | 下跌中 | 空仓或逆回购 |
当用户决定建仓某只股票时:
analyze_stock.py 输出或直接查询)当持仓已有盈利,需要制定卖出计划时:
| 季节 | 总仓位 | 单只上限 | 策略 |
|---|---|---|---|
| 春耕 | 30-50% | 10% | 逐步布局,分批试探 |
| 夏耘 | 50-70% | 15% | 持有为主,确认后加仓 |
| 秋收 | 70%→递减 | 20% | 倒金字塔止盈,越涨越卖 |
| 冬歇 | 0-10% | - | 空仓或逆回购,保本为上 |
按 templates/stock_analysis_report.md 模板输出,必须包含:
市值估算精度:baostock不直接提供总市值,通过换手率反推流通市值存在误差(±10-20%)。Tushare daily_basic 可直接获取 total_mv/circ_mv,优先使用。正式决策前应交叉验证(东方财富/同花顺)。
财务数据延迟:baostock/akshare 财务数据按季度更新,报告期后约2个月延迟。当前日期所在季度的数据不可用,需用上一季度。data_source.py 已自动处理季度选择逻辑。Tushare fina_indicator 更新更及时。
ETF K线限制:baostock ETF历史数据仅返回近120天。分析ETF需用东方财富历史K线API或 Tushare fund_daily。
行业分类匹配:各数据源行业分类标准不同(申万/中信/baostock自分类)。data_source.py 使用关键词匹配并自动融合多源结果,仍存在遗漏可能。
数据真实性铁律:严禁编造数据。任何字段获取失败必须如实标注"数据获取失败",不得用估算值填充。违反此规则视为重大事故(详见底部🔒财务数据验证铁律)。
小盘股流动性风险:通过筛选的小市值股票可能流动性极差。建仓前必须检查日成交额,日成交<1000万的标的建仓难度极大。
左侧布局的耐心:体系要求左侧布局,但"左侧"不等于"抄底"。必须确认基本面无重大缺陷后再分批进入,不可因价格低就急于重仓。
季节判断的综合考量:脚本基于均线和成交量做量化判断,但冬季判断需要综合宏观信号(金融危机、政策转向、流动性收紧等)。脚本输出仅作参考,Agent需补充定性分析。
指数数据陷阱:akshare 的 stock_zh_a_hist() 不支持指数代码(如 sh.000001),返回的是个股数据而非指数。data_source.py 中 get_index_data() 已使用指数专用API(stock_zh_index_daily / baostock指数查询)规避此问题。
Tushare MCP 可用性检查:新会话中先检查 mcp_tushareMcp_* 前缀工具是否已注册。若 Gateway 刚重启,MCP工具可能尚未发现,此时 data_source.py 自动降级至 akshare/baostock。Agent 直接调用 Tushare MCP 时也应做可用性判断。
Python环境:脚本需在hermes venv中运行。若 import baostock 或 import akshare 报错,执行:
/home/ubuntu/.hermes/hermes-agent/venv/bin/python3 -m ensurepip
/home/ubuntu/.hermes/hermes-agent/venv/bin/python3 -m pip install baostock akshare pandas numpy requests
/home/ubuntu/.hermes/hermes-agent/venv/bin/python3)tushareMcp 已在 config.yaml 中配置,提供专业金融数据。若 MCP 连接失败则自动降级至 akshare/baostock/东方财富APIaggressive-growth-investing:理论体系(心法),本技能的方法论基础baostock:数据源技能(第二备用),提供API用法参考cn-web-search:个股公开信息搜索wechat-article-search:公众号深度研报搜索market-watch-daily:每日看盘框架(与本技能的季节判断互补)data_source.py:共享数据源模块,封装四层降级(Tushare>akshare>baostock>东财API),所有脚本统一入口screen_stocks.py:选股筛选脚本,按七标准批量筛选(通过 data_source.py 获取数据)analyze_stock.py:个股八步深度分析脚本(通过 data_source.py 获取数据+财务验证)judge_market.py:市场季节判断脚本(通过 data_source.py 获取指数数据)stock_analysis_report.md:个股分析报告模板screening_criteria.md:选股七标准详解与评分规则背景:2026-07-31发现cron持仓分析报告中出现严重幻觉--将德方纳米实际半年亏损3.91亿编造为"半年累亏超10亿元"。根因:防幻觉护栏仅覆盖行情数据,未覆盖财务数据。
curl 'https://datacenter-web.eastmoney.com/api/data/v1/get?reportName=RPT_LICO_FN_CPD&filter=(SECUCODE="代码.SZ")&columns=ALL&sortColumns=REPORTDATE&sortTypes=-1&pageSize=10'bs.query_profit_data(code="sz.300769", year=2025, quarter=2)curl 'https://search-api-web.eastmoney.com/search/jsonp?cb=jQuery¶m=...'mcp_tushareMcp_fina_indicator/mcp_tushareMcp_income 获取财务数据,再与东方财富datacenter交叉验证。两源数据不一致时,以公告日期更近者为准并标注差异。| 日期 | 版本 | 变更摘要 |
|---|---|---|
| 2026-07-31 | v1.0 | 初版创建:三脚本(screen/analyze/judge)+ 模板 + 参考文档 |
| 2026-08-05 | v1.1 | 四层降级数据源架构:新增 data_source.py 共享模块(Tushare MCP > akshare > baostock > 东方财富API);三脚本全部接入降级链路;SKILL.md 加入 Tushare 映射表、覆盖范围表、数据源标注规范;陷阱与注意事项更新为多数据源视角;财务验证铁律新增第6条(Tushare MCP 交叉验证) |