3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在 JoinQuant(聚宽)量化交易平台中,get_valuation API 用于获取股票的每日市值与估值指标。其中,市盈率(PE)是衡量股票估值水平最常用的指标之一。get_valuation 提供了 pe_ratio 和 pe_ratio_lyr 两个市盈率字段,它们代表不同的计算逻辑与应用场景。
| 字段名 | 含义 | 对应英文/概念 | 计算公式与逻辑 | 适用场景 |
|---|---|---|---|---|
pe_ratio |
动态市盈率(滚动市盈率) | PE (TTM, Trailing Twelve Months) | 总市值 ÷ 最近4个季度的归母净利润之和 | 适用于日常量化选股与估值分析,更贴近公司当前实际盈利能力 |
pe_ratio_lyr |
静态市盈率 | PE (LYR, Last Year Ratio) | 总市值 ÷ 上一年度年报归母净利润 | 适用于年报发布后的横向对比,或对季度波动较大的行业进行基准参考 |
pe_ratio (TTM):动态更新。每当上市公司披露新的季报、半年报或年报时,计算分子中的净利润会自动更新为最近连续的4个单季度净利润之和,能够实时反映公司最新的盈利变化。pe_ratio_lyr (LYR):以年报为基准。在新的年报发布前,该指标使用的净利润一直固定为上一个完整财年的年报净利润,存在一定的滞后性。在 JoinQuant 策略或研究环境中,可以使用 jqdata 模块中的 get_valuation 函数查询指定标的的估值数据。
from jqdata import *
# 1. 查询指定标的在特定日期的静态与动态市盈率
stocks = ['000001.XSHE', '600519.XSHG'] # 平安银行、贵州茅台
target_date = '2023-11-20'
# 调用 get_valuation 接口
df_val = get_valuation(
security=stocks,
end_date=target_date,
count=1,
fields=['code', 'day', 'pe_ratio', 'pe_ratio_lyr', 'pb_ratio', 'market_cap']
)
print(df_val)
code day pe_ratio pe_ratio_lyr pb_ratio market_cap
0 000001.XSHE 2023-11-20 4.2150 4.4821 0.5120 2081.2500
1 600519.XSHG 2023-11-20 30.8520 34.1200 10.1500 22310.5000
使用 get_valuation 函数时,可以在 fields 参数中指定以下估值字段:
capitalization: 总股本(万股)circulating_cap: 流通股本(万股)market_cap: 总市值(亿元)circulating_market_cap: 流通市值(亿元)turnover_ratio: 换手率(%)pe_ratio: 滚动市盈率 PE (TTM)pe_ratio_lyr: 静态市盈率 PE (LYR)pb_ratio: 市净率 PBps_ratio: 市销率 PS (TTM)pcf_ratio: 市现率 PCF (现金净流量 TTM)pe_ratio):在选股或因子回测中,建议优先使用 pe_ratio,因为它能及时捕捉公司业绩季报更新带来的估值调整,避免未来函数与数据滞后。set_option('avoid_future_data', True) 开启避免未来数据模式,确保获取的数据符合实际交易历史时间节点。