板块到选股 Skill
这是"组织荐股的逻辑":板块打分排序 → 标的对比排序 → 杠铃配比。用户要的是可以照着去看的一组标的和一个大致比例,不是一篇板块科普。
判断标准本身不在这里定义:稀缺性与差异化按 hari-invest 框架 2,杠铃两端与何时切换按框架 4,板块预算与板块内分配按框架 5,个股结论分档按 references/decision-rubric.md 的四档与置信度。本 skill 只规定怎么把这些框架产出成一份用户能用的清单。
边界
| 情形 | 去哪 |
|---|---|
| 用户点名一家公司要分析 / 估值 / 买点 | stock_research、valuation-audit;本 skill 不接管单票深研 |
| 候选池就是用户的持仓 + 关注列表 | portfolio_management 的组合分析纪律 |
| 只问板块/大盘为什么涨跌、宏观读数,不要标的 | market_analysis |
| 黄金、原油等商品的宏观驱动读数 | 先用 gold-analysis / market_analysis 拿驱动,再回本 skill 出标的与配比 |
| 用户问的是某只 ETF 本身好不好 | stock_research 的 ETF route |
本 skill 的入口特征只有一个:用户还没有候选池,需要你先造一个,再给比例。
工具速查
| 调用 | 用途 |
|---|---|
portfolio(action="view") |
涉及"重新建仓/调整配比/我该怎么配"时的第一步。不知道用户手里有什么就给比例,等于空中楼阁 |
data_fetch(data_type="sector_performance") |
板块当前强弱与涨幅,第二步"板块现在处于什么位置"的起点 |
data_fetch(data_type="gainers_losers") |
用户没指定方向时的候选来源之一 |
data_fetch(data_type="etf_holdings", ticker="板块ETF") |
板块没有现成名单时,用该板块代表性 ETF 的前十持仓成池 |
data_fetch(data_type="search") |
每一只最终入表的候选都要 exact-resolve |
data_fetch(data_type="snapshot"/"quote") |
每只入表标的的现价、市值、报价源时间。只走机构口径的那几只改用 earnings_outlook,同一次调用带回现价与目标价低/中枢/高,不额外多取一次 |
data_fetch(data_type="financials") / valuation |
对比表里的毛利、增速、现金流、倍数 |
data_fetch(data_type="macro") |
黄金、公用事业、地产这类利率敏感板块的实际利率与政策利率 |
web_search |
商品价格、扩产 capex、长协、在手订单、交期——行情工具证不了的产业事实 |
第一步:把宽泛诉求变成一份明确的板块清单
- 用户已给板块名单("存储、太空、光、芯片"):直接用,一个不漏,并说明是否要补一个与它们低相关的方向作为杠铃稳定端。
- 用户给的是单一主题("黄金股票"):先拆层——商品本身 / 实物 ETF / 开采或制造企业 / 上游设备与服务。层级不同,驱动和风险完全不同,不能混在一个清单里排序。
- 用户什么都没给("当前最适合建仓的美股"):由你定池,不要把"不存在绝对最佳标的"当成答案交付。用
sector_performance+gainers_losers+ 用户持仓/关注选出 3–5 个方向,在回答里写明"本轮候选范围是这几个方向,理由是……",然后照常走完第二到第四步。范围是你选的,所以必须给出选它的依据,但不能因为范围是你选的就不给标的。
不得以"不做单一标的推荐"为由跳过给标的。 既有约束禁的是指令式代客决策("梭哈 X"、唯一主攻标的、可照抄的集中仓位模板),不是禁止点名公司做比较。合规形态是:点名标的 + 判断依据 + 触发与证伪条件 + 分散上限。一整篇不出现任何具体标的的"推荐"回答,是没有回答。
第二步:板块打分与排序
每个板块先交代四件事:现在处于产业周期的什么位置、年内涨了多少、这轮上涨背后的逻辑是什么、这个逻辑现在还成不成立。板块的驱动是商品时(黄金、铜、铀、原油),必须先讲商品的供需与价格,再讲股票——矿企和加工企业的利润是商品价格减去刚性成本后的杠杆,跳过商品直接谈股票,等于跳过了这类标的最重要的那个变量。
然后出一张板块打分表,判断依据按框架 2:
| 板块 | 需求侧公式(谁的什么在增长、量级) | 供给侧约束(扩产周期、瓶颈环节) | 稀缺度 1–5 | 差异化 1–5 | 支撑打分的当轮证据 | 排序 |
- 打分锚点:稀缺度 5 = 供给受硬约束(产能、资源、牌照、认证周期),需求增速明显快于供给释放,且有价格上行、交期拉长或 backlog 增长的当轮证据;3 = 需求好但供给能在 12–18 个月内跟上;1 = 产能过剩或同质化,价格战证据明确。差异化 5 = 少数合格供应商 + 客户验证或高切换成本 + 份额或毛利在扩;1 = 产品可替代、靠报价拿单。
- 每个分数都要挂一条当轮证据(价格、订单、backlog、产能利用率、交期、扩产 capex、良率)。只写"稀缺性强""格局较好"这类形容词、没有分数也没有证据,这一步就没做完。
- 分数是相对分,必须排出先后,并写出至少一句板块之间的对比。 例如同为 AI 需求外溢,token 增长对存储和对光的拉动谁更大、两边的产能扩张谁更难跟上——比较句是这一步的产物,不是可选的润色。
- 排在末位的板块也要保留在表里并写清它输在哪一列。用户点名了它,删掉它等于没回答。
第三步:标的对比表与排序
每个入选板块给 2–4 只,全表 6–12 只。太少不构成选择,太多等于没有选择。
| 标的 | 板块 | 基本面(主营收入结构 + 最近一季营收与增速) | 护城河(份额、切换成本、认证周期、技术或数据壁垒中至少两项的当轮数字或事实) | 财务(毛利率及其趋势、FCF 或净现金/净负债) | 估值(本轮取到的倍数 + 口径 + 相对同业或自身历史的位置;再按下面这条折成价) | 公司级稀缺/差异化调整 | 结论分档 | 排序 |
- 每只都要有本轮
quote/financials/valuation支撑。某一列取不到就写"本轮未取到 X",该只降为"证据不足",并且不进入第四步的确定性仓位档——不要用记忆里的数字把表填满。 - 护城河列只写定性描述、没有任何数字或可核验事实,这只标的的护城河列视为未完成,在排序里不能凭它加分。
- 「基本面」「财务」两列的填法按
fundamentals(每格要有带方向和后果的判断,不是把数字抄进单元格),护城河两项数字去哪取按moat的分型表,「机构口径」按analyst-coverage。 - 公司排序以板块分为起点,用公司层的差异化、财务质量和估值做调整。板块排第一但公司列出现证据不足或财务恶化时,这只必须在最终排序里让位,并写明让位原因(框架 5)。
- 表后补两句:为什么第一名是第一名;第 N 名具体差在哪一列。排序要能被读者拿着表里的数字自己重算出来(评分卡的可复现纪律沿用
portfolio_management,此处不重写)。 - 估值这一列不能停在一个静态倍数,每只都要折成价。排序前三名:本轮必须把
valuation-audit一起加载,倍数按它的三问推、算式按它第四步「收尾把倍数乘完」走完,格里在倍数与口径之后补上合理价值区间与现价所处分位,算式写在表后。其余标的:走etf-analysis4.3 里 B 档那套机构口径——targetLow/targetMedian/targetHigh直接当低 / 基准 / 高价,格里标明「机构口径」,再写一句现价相对中枢贵 / 便宜约 X%;机构口径不和自算区间混报成同一件事。机构口径只作外部锚,分档置信度按analyst-coverage第四节降一档。 - 每只给一个结论分档和对应的操作说法(机会区 / 持有区 / 风险区 / 证据不足),并给出各自的触发与证伪条件。用户要的是"不同的操作建议",不是一份齐头并进的名单。
- ETF 可以作为"不想选个股"的替代方案列出,但不能用 ETF 代替选股。用户问的是股票时,只给 GLD/GDX/XLE 这类工具而没有公司层对比,这一步没做完。
第四步:按杠铃给比例
比例按框架 4(动态杠铃)与框架 5(板块优先)产出,先板块预算、再板块内分配:
| 层级 | 板块 / 资产 | 建议区间 | 在杠铃里的位置 | 往区间上限走的条件 | 往区间下限走的条件 |
- 给区间,不给精确数("25%–35%"而不是"30%"),并且每个区间都要挂上下限的触发条件。没有条件的区间是伪装成纪律的猜测。
- 必须含现金或短债这一端,并说明它此刻的作用是留弹药分批还是防守。杠铃缺了稳定端就不是杠铃。
- 各层区间中值加总应接近 100%,用户要能照着分钱。
- 写出单只上限与单板块上限两个数字,并说明它来自分散约束而不是收益预测。用户已给风险偏好或资金约束时按其约束调整。
- 相关性检查:表里若有多只公司依赖同一批下游客户或同一个 capex 来源(例如都靠云厂商资本开支),必须点名这不是真分散,并在板块预算里按合并暴露计算(框架 5 第 3 条)。
- 建仓节奏可以给,但必须挂在可观察触发条件上(财报兑现、订单落地、估值回到某个分位),不要给纯日历式的分批表。
- 用户表达 all-in、满仓、只买一只时,按既有的降温约束处理:不出单票排序和集中仓位模板;但仍然给板块级区间、分散上限和触发条件,不要退回泛泛框架。