市赚率(PR)

SKILL效率
效率 未标注权限 许可证不明确
安装这个技能

计算A股(及H股)的"市赚率"(PR, Profit Ratio)估值指标——一个基于巴菲特"40美分买1美元"理念的简化估值指标。提供三个公式:PR=PE÷ROE÷100(个股,ROE稳定型企业)、PR=N×PB÷ROE²÷100(个股,ROE不稳定型企业如保险股,N为可选的股利支付率修正系数,PE法/PB法均可叠加N)、PR=PE×PE÷PB÷100(指数基金或查不到ROE数据时的简化公式)。当用户提到"市赚率"、"PR估值"、"巴菲特估值法"、给出某只股票或指数基金的PE/PB/ROE让你判断贵不贵/该不该买或定投、或要求按4折5折6折(个股)/7折8折(指数基金定投)买点筛选低估标的时,必须使用此技能进行计算和判断,不要凭记忆直接估算。

一句话选型结论

按资料字段整理

市赚率(PR)是效率类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类效率 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_b98de26f/shizhuanlv-pr
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

效率
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_b98de26f仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791708997
正文体量19.0 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
整理待办与日程

把零散任务收进清单,排出优先级。

批量处理重复任务

把固定动作做成模板,重复执行。

把流程写成清单

把口头流程整理成可复用的步骤。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在效率场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
市赚率(PR)当前 未标注权限 未标注 未标注 未标注 有
Nano PDF 文档 联网访问 ClawHub 市场 424.9 万 OpenClaw 有
自动更新程序 浏览器控制 ClawHub 市场 296.4 万 OpenClaw 有
Gemini 助手 联网访问 ClawHub 市场 254.7 万 OpenClaw 有
word DOCX 文档 联网访问 ClawHub 市场 239.6 万 OpenClaw 有
Excel XLSX 前端 联网访问 ClawHub 市场 227.0 万 OpenClaw 有

SKILL.md 全文

19.0 KB
模型实际读到的说明书原文,来自技能仓库

市赚率(PR, Profit Ratio)估值技能

发明者: ericwarn丁宁 (雪球和公众号)

一个基于巴菲特"40美分买1美元"投资理念的简化估值指标。由市盈率(PE)与净资产收益率(ROE)的比值构成,衡量"市场价格"与"企业赚钱能力"是否匹配。

⚠️ 第一步:判断标的类型 + 分流(强制)

用户给出标的后,先判断是 指数 / A股个股 / H股个股,再按对应规则文档估值:

  1. 先判是不是指数:标的或其名称含"指数/ETF/联接基金",或代码是指数代码(如 000300 沪深300、932315 中证红利质量、HSI 恒生),或用户说"沪深300""中证红利""恒生指数"→ 按指数估值,读 references/ah-index.md(用公式三,只需 PE+PB)
  2. 否则看个股代码格式:
    - A股个股 = 沪深交易所,6位数字(如 600036 招行、000333 美的、300750 宁德)
    - H股个股 = 港交所,4-5位数字(如 00700 腾讯、00883 中海油、02318 平安)
  3. 两地上市(A+H)的标的(如美的、招行、平安、中海油均有AH股):必须让用户选择按哪个市场估值,因为两地的股息税、分界线、红筹判定完全不同。不要替用户默认。
  4. 按类型加载规则文档:
    - 指数 → 读 references/ah-index.md(公式三,PE+PB)
    - A股个股 → 读 references/a-stock.md
    - H股个股 → 读 references/h-stock.md(含红筹身份判断、税率档等 H股专属步骤)

判断完市场,下面的公式、修正系数、计算方法是 A/H 通用的。

⚠️ 核心易错点:ROE 单位

公式里的 ROE 必须以小数代入(如 31.8% 代入 0.318),而不是直接代入百分数(31.8)。

为了避免出错,本技能统一约定:对外输入 ROE 时用百分数数值(如输入 31.8 表示 31.8%),计算脚本内部会自动 ÷100 转换为小数后再套公式。禁止跳过脚本直接心算,因为漏除/多除100是这个指标最常见的计算错误。

三个公式

公式一:PE法(适用于ROE长期稳定的企业,如消费、白酒、电力等)

PR = PE ÷ ROE(小数) ÷ 100

验证案例:巴菲特1988年买入可口可乐,PE≈15,ROE≈31.8%,代入得 PR≈0.47,与历史记载的0.474PR吻合。

公式二:PB法(适用于ROE波动较大、不稳定的企业,如保险股)

推导依据:PE = PB ÷ ROE,代入公式一可得:

PR = PB ÷ ROE(小数) ÷ ROE(小数) ÷ 100

ROE取值建议:用多年ROE的中位数或平均值代入,可以得到"模糊正确"的估值,避免单年ROE波动失真。周期股(A股约7年一个周期)优先用近7年截尾均值——去掉一个最高和一个最低再平均,比普通均值更能剔除周期极值失真(如中远海控2021年ROE 67%、H股IFRS口径高达101%),取数:cheese_fetch.py --code 601919.SH --years 7,输出中的"截尾均值"字段。上市不足7年的周期股不截尾,直接用普通均值(样本不足时极值也是周期的一部分,截尾反而失真)。

公式三:PE-PB简化法(专用于指数基金 / 查不到ROE的场景)

推导依据:ROE = PB ÷ PE,代入公式一,ROE被约掉:

PR = PE × PE ÷ PB ÷ 100

适用场景:指数基金通常只能查到PE、PB两项数据,查不到ROE(指数没有统一的净资产收益率口径),此时只能用公式三估值。该公式不涉及ROE百分数/小数换算问题,因为推导过程中ROE已被完全约掉,直接代入PE、PB原始数值即可。

验证:用公式三反推可口可乐案例(PE=15,PB=4.77),结果同样是PR≈0.47,与公式一完全一致。

修正系数 N(针对"赚假钱"——利润不分红的企业)

以50%的多年平均股利支付率为标杆:

多年平均股利支付率 修正系数 N 计算方式
≥ 50% 1.0 50% ÷ 50%
25% ~ 50% 之间 50÷支付率 例:支付率40% → N=50÷40=1.25
≤ 25% 2.0 50% ÷ 25%

修正系数 N 同时适用于公式一(PE法)和公式二(PB法),原作者公式为:

公式一 + N:PR = N × PE ÷ ROE(小数) ÷ 100
公式二 + N:PR = N × PB ÷ ROE(小数) ÷ ROE(小数) ÷ 100

何时需要加 N:企业利润含金量存疑(应收账款高、经营现金流与净利润长期背离、利润长期不分红),需按低股利支付率上调 PR。若企业分红正常(支付率≥50%)或用回购替代分红(账面股利支付率偏低但实质把利润返还股东),N=1.0,无需修正。详见下文「回购替代分红」一节。

回购替代分红 → 无需修正系数 N

部分企业长期用股份回购替代现金分红,账面股利支付率偏低,但实质是把利润返还给了股东(缩股提升每股价值)。这类企业不要套用低股利支付率去上调 N,按 N=1.0 处理即可,否则会重复惩罚、高估 PR。

判断信号:公司近三年回购金额 ≈ 或 > 现金分红金额,且利润/现金流健康。典型如港股科技股(腾讯),详见 references/h-stock.md。

估值分级标准(总览)

市场 长期持有股息税 高估分界线
A股 0% 1.0 PR
H股(非红筹) 20% 0.8 PR
H股(红筹) 28% 0.72 PR

> H股分界线 = 1 − 股息税。红筹股一律按28%保守档(先扣10%出境税,剩余90%再扣20%个税)——不再逐只查港交所股息公告的代扣状态,换取实操便利。注:少数红筹(如腾讯)实际因已预缴出境税为20%,本口径统一28%会略保守;需精确到单只的,自行查公告后用 --tax-rate 20 覆盖。完整红筹判断流程(查本地清单)见 references/h-stock.md。

计算方法

始终调用 scripts/calc_pr.py 进行计算,不要手算,以避免ROE单位换算出错。

# PE法(ROE稳定的企业)
python3 scripts/calc_pr.py --method pe --pe 15 --roe 31.8 --market A

# PB法(ROE不稳定的企业,如保险股,用多年ROE均值/中位数)
python3 scripts/calc_pr.py --method pb --pb 9 --roe 30 --market A

# + 修正系数N(针对低分红企业,传入多年平均股利支付率)
python3 scripts/calc_pr.py --method pe --pe 12 --roe 20 --payout 35 --market A

# 指数基金(只有PE/PB,用公式三)
python3 scripts/calc_pr.py --method index --pe 15 --pb 4.77 --market A --asset-type index

# H股估值(红筹=固定28%,详见 references/h-stock.md)
python3 scripts/calc_pr.py --method pe --pe 8 --roe 15 --market H --red-chip yes

# 反推折扣买点价(传入与PE/PB同日同源的现价/指数点位)
python3 scripts/calc_pr.py --method pe --pe 15 --roe 31.8 --market A --price 68.5

参数说明:
- --method:pe(公式一) / pb(公式二) / index(公式三,仅需PE+PB)
- --roe:以百分数数值传入(如 15.5 表示 15.5%),PB法建议传入多年中位数/均值;index法不需要此参数
- --payout:多年平均股利支付率,以百分数数值传入(如 40 表示40%),不传则N默认1.0
- --market:A 或 H,决定高估分界线(A股1PR;H股非红筹0.8PR / 红筹0.72PR)
- --asset-type:stock(个股,默认,折扣档位4折/5折/6折) 或 index(指数基金定投,折扣档位放宽至7折/8折)
- --red-chip / --red-chip-source:仅H股,yes=红筹(28%/0.72PR),no=非红筹(20%/0.8PR),详见 references/h-stock.md
- --price:当前股价(个股)或指数点位(指数基金),必须与PE/PB同日同源、且为前复权口径(芝士取 dayKV2 的前复权收盘价最理想;basePrice 是后复权价勿用)。传入后反推各折扣档位目标价,见下节

反推折扣买点价

三个公式中 PE、PB 均与股价成正比(EPS、净资产不变),所以 PR 也与股价成正比(公式三同理:点位变动k倍时PE、PB同比例缩放,PR变动k倍)。据此可从当前PR反推各档位对应的目标价:

目标价 = 当前股价 × 目标折扣 ÷ 当前PR

传入 --price 后 calc_pr.py 自动输出(个股:4折/5折/6折+分界线价;指数:7折/8折+分界线点位,各档同时给出较现价的涨跌幅)。

注意事项:
- 反推价是静态假设下的参考价——假设EPS/ROE/净资产不变。若基本面变化(业绩增长或下滑),同一折扣对应的合理价格也会变,不能把今天算的目标价当长期固定锚点
- 股价与PE/PB必须同日同源,否则"实时价配昨日PE"会算出失真的PR和目标价
- 除权除息、股本变动(增发/回购)会破坏"PR∝股价"的比例关系,需重取数据重算

输出格式规范(估值卡片)

向用户呈现最终估值结论时,统一使用下面的估值卡片模板(数据取自 calc_pr.py 输出,来源/日期取自取数脚本),不要自行发明格式:

## 📊 {名称} {代码} · 市赚率估值

**¥{现价}**(前复权 · {现价日期})|{A股/H股}|高估分界线 {threshold}PR

### PR = {PR值} {状态emoji} {估值结论}

| 关键指标 | 数值 |
|---|---|
| {按所用公式列出 PE / PB / ROE / 支付率} | {数值} |
| 计算公式 | {计算公式(与calc_pr.py输出一致)} |

### 🎯 买点价反推(假设基本面不变)

| 档位 | 目标价 | 距现价 |
|---|---:|---:|
| 4折 · 深度低估 | ¥{目标价} | {涨跌幅}% |
| 5折 · 理想买点 | ¥{目标价} | {涨跌幅}% |
| 6折 · 可考虑买点 | ¥{目标价} | {涨跌幅}% |
| 分界线 · 合理估值 | ¥{目标价} | {涨跌幅}% |

📅 数据:{实际数据来源},截至 {日期}
⚠️ 市赚率为简化估值参考,不构成投资建议

渲染示例(美的集团 000333.SZ,2026-08-21 真实数据):

> ## 📊 美的集团 000333.SZ · 市赚率估值
>
> ¥84.30(前复权 · 2026-08-21)|A股|高估分界线 1.0PR
>
> ### PR = 0.715 🟢 轻度低估
>
> | 关键指标 | 数值 |
> |---|---|
> | PE-TTM | 14.55 |
> | ROE(近5年均值) | 20.35% |
> | 计算公式 | PR = PE ÷ ROE ÷ 100 |
>
> ### 🎯 买点价反推(假设基本面不变)
>
> | 档位 | 目标价 | 距现价 |
> |---|---:|---:|
> | 4折 · 深度低估 | ¥47.16 | -44.1% |
> | 5折 · 理想买点 | ¥58.95 | -30.1% |
> | 6折 · 可考虑买点 | ¥70.74 | -16.1% |
> | 分界线 · 合理估值 | ¥117.90 | +39.9% |
>
> 📅 数据:芝士财富,截至 2026-08-21
> ⚠️ 市赚率为简化估值参考,不构成投资建议

变体规则:

  1. 状态emoji映射(对应 classify() 结论):低估(4折/5折/6折/轻度)→ 🟢;合理估值 → 🟡;高估 → 🔴
  2. 指数基金:标题尾缀"(定投参考)";档位表换成 7折 · 理想定投点位 / 8折 · 可定投点位 + 分界线;"目标价"列改为"目标点位",¥ 改为点位数值;现价行改为"{点位}({指数名} · {日期})"
  3. H股:首行市场标注补充税率身份,如"H股 · 红筹(28%股息税)"或"H股 · 非红筹(20%股息税)",分界线随之 0.72PR / 0.8PR;货币符号用 HK$(A股用 ¥)
  4. 含修正系数N:关键指标表加一行"多年股利支付率",计算公式行体现 N,如"PR = N(1.25) × PE ÷ ROE ÷ 100(支付率40%)"
  5. 未取到前复权现价(--price 缺失):删除整个 🎯 买点价反推 区块,脚注前加一行"💡 未取到与PE/PB同源的前复权现价,跳过买点价反推"
  6. 多标的对比:每个标的一张完整卡片依次排列,不要合并成宽表;多源数据有差异时在脚注区补充说明(保留"标注来源与截止日期"的强制要求)
  7. 周期股(ROE 剧烈波动、用PB法+近7年截尾均值:--years 7 取数后用"截尾均值",即去掉一个最高一个最低再平均;上市不足7年不截尾,直接用普通均值):关键指标表必须三口径并列,不得只呈现其一——
    - PB法 × 截尾均值ROE(主口径,反推买点价用一个)
    - PB法 × 中位数ROE(保守对照,中位数天然抗极值)
    - PE法(参考,反映按当前盈利的视角)
    若主口径反推目标价距现价涨幅异常(>+100%),必须在该标的脚注加醒目提示——"目标价基于ROE回归历史均值的假设,市场实际定价隐含盈利回落周期,市赚率对周期股适用性有限,谨慎参考"

买点折扣档位(个股 vs 指数基金,A/H通用)

指数基金已分散个股风险,不需要像个股一样追求极致折扣,可放宽标准:

PR 区间 个股(追求极致折扣) 指数基金定投(可放宽标准)
≤ 0.4 4折,巴菲特级别深度低估 —
≤ 0.5 5折,理想买点 —
≤ 0.6 6折,可考虑买点 —
≤ 0.7 轻度低估 7折,理想定投点位
≤ 0.8 轻度低估 8折,可定投点位
< 分界线(A股1.0 / H股0.8或0.72) 轻度低估 轻度低估,可继续定投
= 分界线 合理估值 合理估值,建议观察
> 分界线 高估 高估,不建议继续定投

数据来源参考(三级降级)

scripts/calc_pr.py 只负责计算、不取数。取数按三级降级链执行——上一级失败(脚本报错/返回空)才用下一级,每级都要标注实际数据源:

① 芝士财富 cheese_fetch.py
        │ 失败/不可用
        ▼
② AkShare akshare_fetch.py  ──┐
        │ 失败/不可用            │ 部分字段缺失
        ▼                       │(如港股PE/PB、指数PB)
③ 网站 乐咕/etf.run/富途等  ◄──┘

① 首选:芝士财富 scripts/cheese_fetch.py(A股、H股通用)

一次取全 前复权现价(dayKV2)、PE-TTM、PB、ROE-TTM、多年ROE、股利支付率,A/H股都覆盖(港股 PE/PB 仅芝士可取)。⚠️ 芝士 stockBaseInfo 的 basePrice 是后复权价(=前复权价×复权因子,与行情软件对不上),反推买点价必须用 dayKV2 日K最后一根的前复权收盘价(脚本用 basePrice÷现价≈复权因子 自检口径)。

python3 scripts/cheese_fetch.py --code 0700.HK [--years 5]              # 个股(A/H股)
python3 scripts/cheese_fetch.py --code 000300.SH --action index         # 指数(PE/PB/分位)
  • 个股:PE-TTM/PB/ROE-TTM/多年ROE/股利支付率
  • 指数:PE/PB/估值分位(pepb.newest,所有指数都有,A股港股通用)
  • 依赖 pycryptodome(接口需 AES 签名,算法见 docs/cheesefortune-zstokv1.md)
  • 失败情形:未装 pycryptodome、签名接口改版、code:500/-002、网络错误

② 次选:AkShare scripts/akshare_fetch.py(芝士不可用时降级)

python3 scripts/akshare_fetch.py astock --symbol 600036   # A股:PE/PB/同日收盘价/ROE/股利支付率
python3 scripts/akshare_fetch.py hstock --symbol 00700    # H股:ROE+最近收盘价(PE/PB仍需手动补)
python3 scripts/akshare_fetch.py index --symbol 000300    # 指数:宽基PE-TTM+PB+指数点位;其他指数仅PE+股息率
  • 数据短板:港股 PE/PB 无稳定接口(hstock 只给 ROE+最近收盘价);指数仅宽基有 PB(沪深300/中证500/上证50),策略/行业指数无 PB(芝士有,故指数首选芝士)
  • akshare 失败时可降级为原始接口(见 references/a-stock.md),字段名在 akshare 1.18.81 验证

③ 末选:网站取数(前两级都不可用,或补它们的短板字段)

场景 网站数据源
A股个股 PE/PB/ROE 同花顺、东方财富网(个股-财务指标)、雪球
A股指数 PE/PB(含估值百分位) etf.run、乐咕乐股网、中证指数官网 factsheet
H股个股 PE/PB(akshare 取不到时) 富途牛牛、老虎证券、AAStocks
H股指数(恒生系列)PE/PB 恒生指数公司官网、乐咕乐股网
H股科技股 Non-IFRS 净利润 公司业绩公告 PDF、港交所披露易(需自行算)

> 各市场取数细节、字段边界、akshare 失败备选接口详见 references/a-stock.md / references/ah-index.md / references/h-stock.md。
>
> ⚠️ 三级都可能因目标网站改版失效。脚本失败时如实报错(不编造数据),降级到下一级;最终仍要标注实际来源与截止日期。AkShare/网站数据仅供研究参考,不能替代官方公告/财报核实关键数字。

⚠️ 引用数据时的强制要求(避免误导):

  1. 必须标注数据来源和截止日期,例如"PE=16.68(来源:乐咕乐股网,截至2025-11-26)",不能只给数字
  2. 不同数据源口径可能不同(如TTM口径 vs 静态PE、加权ROE vs 摊薄ROE、是否扣非等),同一标的从不同来源查到的PE/PB可能略有差异,属正常现象,呈现结果时如果手头有多个来源数据有明显差异,应一并说明,而不是隐藏差异只取一个数字
  3. PE/PB是动态变化的,估值结论只对"查询当时那个时间点"有效,呈现最终估值结论时必须把数据截止日期带上(如"截至2025-11-26的估值结论:可定投点位"),不能让用户误以为是长期固定结论
  4. 如果同一指标能查到多个来源,优先使用官方/权威源(如中证指数公司官网、交易所、上市公司财报),其次用聚合数据网站,最后才用第三方估算

重要提示(向用户说明的免责声明)

市赚率是一个经验性的简化估值指标,存在以下局限,回答时如涉及具体买卖建议应提及:
- 对ROE质量依赖较高,若ROE受高杠杆等因素虚高,PR会失真
- 未直接考虑企业未来成长性
- 不适用于银行股(需专门修正),周期股需用多年平均ROE而非单年值
- 指数基金用公式三(仅PE/PB)估值时,本质是把整个指数当作一个"虚拟企业"来近似,精度低于个股的公式一/二,更适合作粗略的定投参考,而非精确买卖时点判断
- 这是估值参考工具,不构成投资建议,最终决策需结合企业基本面、行业格局等综合判断

常见问题

5 问
答案由本站依据条目字段整理
市赚率(PR)怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_b98de26f/shizhuanlv-pr。安装方式为未标注。装完刷新技能列表或重开客户端。

市赚率(PR)支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

市赚率(PR)权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

市赚率(PR)收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

市赚率(PR)用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。