怎么查一只指数或股票的当前估值与历史分位
官方源只给 PE/PB 绝对值,历史分位必须自己从序列算——先定窗口再取数,第三方页面的分位数按二手处理。
估值分位怎么查 · 查估值 · 历史分位 · PE分位 · PB分位
B 级
你算出「它值多少」准备按折扣率决定出不出手,却卡在「现在贵不贵」没有答案的时候。
13.7313.73(官方数字的复算:上交所接口 2026-10-12 实测 AVG_PE_RATE = … 13.73(官方数字的复算:上交所接口 2026-10-12 实测 AVG_PE_RATE = 13.73,PRODUCT_CODE=01 即沪市股票整体市场平均市盈率;对照 2026-10-09 同为 13.73、2026-10-13 为 13.75)完整口径
换窗口凑结论(先有结论再选参数),或者跨口径比较——市盈率有静态与滚动两种算法,混用即错。
怎么做
什么时候用:你已经按 赚钱的理念:估值纪律 算出了一个「它值多少」、准备按折扣率决定出不出手,却卡在第一步——「现在的市盈率、市净率是多少,在历史上算贵还是便宜」没有答案;或者你在第三方页面看到「当前处于历史一成二的分位」这类结论,想自己复算一遍的时候。这条给你三件事:官方源给什么、分位数怎么算、第三方数字按什么等级处理。
步骤
- 先分清两层:绝对值(当前市盈率、市净率)官方源直接给;分位数(当前值在历史序列里排第几)几乎没有官方源发布,要么自己从序列算,要么把第三方的结果当二手处理;
- 取绝对值:指数走中证指数官网(估值字段随官方计算规则调整,跨年比较前先看口径,实测见 查历史数据:中证指数与FRED怎么用);个股与基金走披露平台(见 查一家上市公司的基本盘 与 查基金与公司基本面);
- 建序列:把同一口径的历史市盈率、市净率取成一张表,同时写明窗口(几年)、频率(按日还是按月)、亏损期公司怎么处理——三项不定,序列就不成立;
- 算分位:数出历史值中低于当前值的个数,除以序列长度,算式见算例;
- 定门槛:把分位数翻译成动作的两条线(多少以下才出手、多少以上不碰)是你自己的纪律参数,本条不给这两个数字——本条只保证分位数算对;
- 记录:序列来源、窗口、频率、口径说明、当前值、计数、分位、核对日期八样写进笔记,缺一样这个数不能进决策。
算例(官方数字的复算:输入全部来自上海证券交易所官方行情接口 2026-10-13 实测返回的真实数字,不是假设值;本条只复算「取数 → 计数 → 除出分位」这段算术,并把官方口径逐字标清。判定门槛仍是读者自设纪律参数,本条不给)
任务:复算「上证市场平均市盈率」的当日绝对值,并把「分位怎么算」在同一批真实字段上走完一遍。
| 步 | 动作 | 命令 / 操作(2026-10-13 实测) | 真实结果 |
|---|---|---|---|
| 1 | 选源 | https://query.sse.com.cn/commonQuery.do,sqlId=COMMON_SSE_SJ_GPSJ_CJGK_MRGK_C、PRODUCT_CODE=01(股票)、SEARCH_DATE=<YYYY-MM-DD>,请求头带 Referer: https://www.sse.com.cn/ | HTTP 200,返回 JSON |
| 2 | 取绝对值 | 读返回里的 AVG_PE_RATE(市场平均市盈率)与 TOTAL_VALUE(总市值,亿元) | 2026-10-09:AVG_PE_RATE = 13.73、TOTAL_VALUE = 517301.09、LIST_NUM = 1702 |
| 3 | 建序列 | 同一命令换 SEARCH_DATE 逐日取值,收成一列 | 2026-10-12:13.73;2026-10-13:13.75 |
| 4 | 计数 | 数出序列里低于当日值的个数(三日样本只作格式演示:低于 13.75 的有 2 个) | 计数 = 2 |
| 5 | 算分位 | 2 ÷ 3 = 66.7% | 产出的是一个带窗口的分位,不是一个「贵/便宜」的形容词 |
| 6 | 记录 | 序列来源、窗口、频率、口径说明、当前值、计数、分位、核对日期 八样齐全 | 八字段齐全 |
口径必须逐字抄下来(这是本算例最值钱的部分):官方接口返回的是 AVG_PE_RATE——市场平均市盈率(PRODUCT_CODE=01 即沪市股票整体),不是某只个股的滚动市盈率,也不是「上证综指」这一指数的成分股口径;LIST_NUM = 1702 是当期纳入计算的上市公司家数。同一个交易日,别处报出的「上证 PE」如果用的是别的口径(加权方式、是否剔除亏损股、成分股范围),与这里的 13.73 对不上是正常的——对不上先查口径,不要改数。
窗口敏感性(同一条命令只换 SEARCH_DATE 的取值范围):三日样本给出的 66.7% 没有任何统计意义,它演示的只是「分位数会随窗口变」。把窗口换成一百个交易日、一千个交易日,同一个 13.75 会落在完全不同的位置。分位数不是指数的属性,是「序列 + 窗口 + 频率 + 口径」四者的属性——报分位数不报这四项,等于报了一个没有单位的数字。
判定标准:本例的产出是一个带四项口径说明的分位数,以及一个可以原样重跑取到 13.73 / 13.75 的命令。若你算出的绝对值与官方接口对不上,问题多半在口径(口径不同)而不是算术——回到第 2 步把 sqlId 与 PRODUCT_CODE 一起写进笔记。
常见错
- 把第三方页面的分位数当一手引用——分位数是派生统计,官方源基本不发布;拿不到原始序列时按二手处理并标「需人工核对」,不要把页面上的数字挪进来源节;
- 换窗口凑结论——五年窗口显得贵就换十年,这是先有结论再选参数;窗口要在取数之前定下并写进笔记;
- 跨口径比较——市盈率有静态、滚动两种算法,市净率有最新报告期与最新股本两种口径,混用即错(同一天同一指数两种市盈率能差出两位数百分点);
- 把亏损期公司算进均值——亏损企业的市盈率为负或无定义,直接污染均值;处理方式(剔除、单列、还是只用正数子集)必须写明,不能默默算;
- 用分位数替代折扣率——分位数回答「历史上算不算贵」,折扣率回答「相对你算出的价值便不便宜」;两个都便宜才出手,只有一个便宜不动(纪律判据见 赚钱的理念:估值纪律)。
做完你会得到:一条带八字段的分位笔记——序列来源、窗口、频率、口径说明、当前值、计数、分位、核对日期;以及两张你自己定下的门槛线。
怎么算过关:给你任意一只指数或股票,你能当场说出当前市盈率与市净率、它们取自哪个官方入口、分位数用的几年窗口与什么频率、以及计数过程。说不出窗口的分位数 = 你引用的是别人的结论,不是自己的复算。
说人话
是什么:贵不贵这个问题,官方只回答一半——它告诉你现在市盈率、市净率是多少,但不告诉你这个数在历史上算高还是低。后半句得自己算:把过去几年的同一个数收成一列,数一数有几个比现在低,除一下就是分位。
为什么发生:因为「历史上算高还是低」不是事实,是选择——选几年、按天算还是按月算、亏损的公司算不算,三个选择各偏一点,同一个今天能算出三成也能算出七成。所以报分位数不报窗口,等于报了一个没有单位的数字,别人既没法信也没法复核。
什么时候不成立:两种情形。其一,指数成立没几年,序列短到没有统计意义,这时该写「序列太短,无法给分位」,不是硬算一个;其二,公司正在换商业模式(重资产转轻、并表范围变化),历史序列前后不可比,该做的是分段而不是拉一条长序列。
收益
无量级(方向性):本条不给你「省了多少钱」的数字——那需要一个真实的估值判断加一个未来的价格,两者都无法在本条内验证。方向是确定的:按 赚钱的理念:估值纪律 出手之前,先有一个自己复算过的分位数,替代第三方页面上的结论。它改变的是「买贵了」这个风险有没有被度量,不是产生一笔可计的收益。
来源
- (A 级,官方接口,一手复算)上海证券交易所行情接口
https://query.sse.com.cn/commonQuery.do:本条算例的绝对值出自它 2026-10-13 的实测返回,可原样重跑——sqlId=COMMON_SSE_SJ_GPSJ_CJGK_MRGK_C、PRODUCT_CODE=01、type=inParams、SEARCH_DATE=2026-10-09→AVG_PE_RATE = 13.73、TOTAL_VALUE = 517301.09、LIST_NUM = 1702;SEARCH_DATE=2026-10-12→13.73;SEARCH_DATE=2026-10-13→13.75。请求头需带Referer: https://www.sse.com.cn/。口径逐字取自接口:AVG_PE_RATE= 市场平均市盈率、PRODUCT_CODE=01= 沪市股票整体,不是某只个股的滚动市盈率、也不是上证综指的成分股口径;跨源引用前先核口径,核对于 2026-10-13; - (B 级,官方入口,2026-10-12 实测可达)中证指数官网
https://www.csindex.com.cn/:指数行情与估值字段的入口;接口层字段(含部分序列的市盈率)与假行清洗机制见 查历史数据:中证指数与FRED怎么用 的实测表,本条不重复粘贴; - (B 级,官方入口,2026-10-12 实测可达)上海证券交易所信息披露
http://www.sse.com.cn/disclosure/announcement/general/:沪市公告检索入口;个股与基金财务数据走披露平台,见 查一家上市公司的基本盘; - (B 级,官方入口,2026-10-12 实测可达)深圳证券交易所信息披露
http://www.szse.cn/disclosure/index.html:深市公告检索入口; - (B 级,官方入口,2026-10-12 实测可达)巨潮资讯网
http://www.cninfo.com.cn/:跨市场公告与定期报告检索入口; - 判定门槛(多少以下出手、多少以上不碰)是读者自设的纪律参数,本条不给任何数值(C2,无出处,不是本站结论);第三方分位数页面本站未取到原始序列,按二手处理、标需人工核对。核对于 2026-10-12(接口复算部分核对于 2026-10-13)。
备注
- 适用前提:覆盖「指数与个股的当前估值 + 历史分位」这一层;基金费率、规则条款、公告检索分别见 查基金与公司基本面、查规则只去这三个地方、查一家上市公司的基本盘;
- 已知反例:分位数在市场结构变化后会失效——注册制、涨跌幅限制、外资占比、指数成分调整都会让「历史」不再是同一个市场;反例推翻的是「分位数是稳定标尺」,推不翻「出手前该有一个自己复算的数」;
- 关联条目:赚钱的理念:估值纪律(本条补上它断掉的链条:纪律的判据是折扣率,折扣率需要估值,估值需要本条)、格雷厄姆:给价格留一道安全边际(安全边际的算术)、查历史数据:中证指数与FRED怎么用(序列怎么取、怎么清洗)、泡沫的共同结构:五次崩盘里的同一套剧本(贵的时候市场在讲什么故事);
- 有效期:入口可达性与字段结构核对于 2026-10-12、接口数值复算核对于 2026-10-13;官方站点改版、估值字段计算规则调整、指数成分变更后需重跑;第三方分位数页面未列入来源,取到原始序列前一律标「需人工核对」。