企业微信

股票K线图历史市盈率怎么查看

K线图本身只记录价格的开高低收与成交量,不包含市盈率数据。想看K线图对应时间点的市盈率,需要借助外部数据源或软件功能,将估值数据与价格走势叠加。股票和期货在这一点上完全不同,期货没有市盈率概念,下面分别说明。

股票软件调取历史市盈率

通达信、同花顺、东方财富等主流股票软件都提供市盈率指标。在K线图界面,输入PE市盈率,回车后会在副图显示市盈率曲线。这条曲线与K线时间轴对齐,鼠标移动到任意一根K线,副图对应位置就是该日的市盈率。

通达信默认显示动态市盈率,需要静态或TTM市盈率时,右键指标选择“修改指标公式”,将计算参数改为对应财务数据。同花顺在K线图下方点击“指标”按钮,选择“估值”分类,可以叠加市盈率、市净率、市销率。东方财富PC端在K线图右侧有“估值”标签,点击后展示历史PE band。

股票K线图历史市盈率怎么查看

部分软件支持区间统计。以同花顺为例,在K线图上按住鼠标右键拖拽选择一段区间,松开后弹出区间统计窗口,其中包含该区间的市盈率最高值、最低值、中位数、当前值。这个功能用来观察某段行情启动前的估值水平非常直接。

数据平台查询历史PE

理杏仁、乌龟量化、亿牛网等平台提供个股历史市盈率走势图。输入股票代码,选择市盈率TTM,设置时间范围,即可得到每日PE数值。这些平台通常还提供PE分位数,展示当前估值在历史中的百分位位置。

万得、choice等金融终端数据更完整。以choice为例,进入股票深度资料,选择“估值”模块,可以导出指定日期区间的每日市盈率。导出数据后与K线日期合并,就能在Excel或Python中绘制叠加图。

手动计算历史市盈率

历史市盈率等于历史股价除以历史每股收益。每股收益来自财报,分为静态、动态、TTM三种。静态市盈率用最近年报每股收益,动态市盈率用预测每股收益,TTM用最近四个季度每股收益之和。

手动计算需要对齐日期。股价取每个交易日收盘价,每股收益取最近已披露财报的数值。财报披露有滞后,计算历史某日的TTM市盈率,要用当时已经公布的最新四个季度数据,不能直接用现在的最新数据。

Python中可以用akshare获取历史股价和财务数据,合并计算。代码片段如下:


import akshare as ak

import pandas as pd

# 获取历史日线数据

price_df = ak.stock_zh_a_hist(symbol="600519", period="daily", start_date="20200101", end_date="20231231")

price_df = price_df[["日期", "收盘"]]

price_df.columns = ["date", "close"]

price_df["date"] = pd.to_datetime(price_df["date"])

# 获取财务数据中的每股收益

fin_df = ak.stock_financial_abstract(symbol="600519")

# 筛选每股收益指标,按报告期排序

eps_df = fin_df[fin_df["指标"] == "基本每股收益"].T

eps_df.columns = eps_df.iloc[0]

eps_df = eps_df[1:]

eps_df.index = pd.to_datetime(eps_df.index)

# 计算TTM每股收益

eps_df["eps_ttm"] = eps_df["基本每股收益"].rolling(4).sum()

# 合并股价与TTM每股收益,前向填充财报数据

price_df = price_df.set_index("date")

eps_df = eps_df.reindex(price_df.index, method="ffill")

price_df["eps_ttm"] = eps_df["eps_ttm"]

price_df["pe_ttm"] = price_df["close"] / price_df["eps_ttm"]

print(price_df[["close", "pe_ttm"]].tail())

该代码获取贵州茅台日线收盘价与基本每股收益,按季度滚动求和得到TTM每股收益,再对齐日期计算每日市盈率。实际使用中需处理财报日期与股价日期的匹配,避免未来函数。

期货没有市盈率

期货合约标的为商品或金融指数,不涉及公司盈利,没有每股收益概念,因此不存在市盈率。期货K线图可以叠加基差、持仓量、成交量等指标,估值类指标不适用。

股指期货与股票指数挂钩,指数有市盈率。中金所股指期货对应沪深300、中证500、中证1000指数,这些指数的市盈率可以在中证指数官网或万得终端查询。但这是指数估值,不是期货合约本身的估值。期货价格围绕指数现货波动,基差反映市场情绪,不能直接用市盈率判断期货高估或低估。

市盈率与K线结合的实战用法

将市盈率曲线叠加在K线图下方,观察价格创新低时市盈率是否同步创新低。若价格新低而市盈率未新低,说明盈利增长消化了估值,底部可能更扎实。价格新高而市盈率未新高,说明盈利增速超过股价涨幅,估值反而降低,趋势可能延续。

PE band图更直观。设定市盈率通道,通道上轨对应历史高估区域,下轨对应低估区域。K线价格触及通道下轨且基本面未恶化,往往出现买入机会。价格触及上轨且盈利增速放缓,需要警惕回调。

注意市盈率适用行业有限。银行、保险、地产等重资产行业适用市净率,科技、生物医药等亏损企业适用市销率或市研率。周期股在盈利高点市盈率最低,盈利低点市盈率最高,直接看市盈率容易反向操作。

数据获取与更新频率

历史市盈率数据依赖财报更新。A股财报披露时间为一季报4月底前,半年报8月底前,三季报10月底前,年报次年4月底前。每次财报发布后,历史TTM市盈率会整体重算。数据平台通常会自动回溯更新,手动计算需要重新拉取财务数据。

行情软件中的市盈率曲线会随财报发布跳变,这是正常现象。观察长期趋势时,关注市盈率相对自身历史的百分位,比绝对值更有参考意义。