3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在 JoinQuant(聚宽)量化交易平台中,获取财务数据是多因子选股和基本面分析的核心步骤。聚宽提供了多个财务查询函数,其中 get_fundamentals_continuously 与 get_history_fundamentals 都用于获取多期/多日历史财务数据,但两者的设计定位、维度切入点以及参数特性存在显著区别。
| 特性 / API | get_fundamentals_continuously |
get_history_fundamentals |
|---|---|---|
| 核心定位 | 按交易日维度连续获取最新可看财务数据与估值表数据 | 按**财报报告期(季度/年度)**维度获取三大财务报表历史数据 |
估值表 (valuation) |
支持(包含市盈率、市值、换手率等每日更新数据) | 不支持 |
| 时间维度 | 交易日维度(按日向前推 count 个交易日) | 报告期维度(按 1q 季度或 1y 年度推算) |
| 基准设置 | 依赖 end_date 交易日 |
可通过观察日 watch_date 或统计截止期 stat_date 灵活控制 |
| 数据限制 | 标的数量 × count ≤ 5000 条 | 单次查询最多返回 5000 条数据 |
| 典型适用场景 | 计算连续交易日的每日市值、PE动态变化及截面因子 | 计算多季度财报同比/环比增长率(如 TTM 数据、连续4季营收) |
get_fundamentals_continuouslycount=5,返回的是从指定日期倒推 5 个交易日中,每天收盘后能看到的最新财务/估值快照。valuation(市值表)数据,非常适合需要每日更新市值、PE、PB 以及结合截面数据的策略。pandas.Panel(建议设置 panel=False 获取 DataFrame)。get_history_fundamentalsinterval(如 '1q' 或 '1y'),能直接按季度/年度拉取连续多个财报期的数据,完美无未来函数地计算 TTM 或同比环比指标。valuation(市值表)。get_fundamentals_continuously 查询连续 5 个交易日的市值与换手率from jqdata import *
# 查询连续 5 个交易日的估值数据
q = query(
valuation.code,
valuation.market_cap,
valuation.pe_ratio
).filter(
valuation.code.in_(['000001.XSHE', '600000.XSHG'])
)
# 获取截至 2023-01-01 前 5 个交易日的数据
df = get_fundamentals_continuously(q, end_date='2023-01-01', count=5, panel=False)
print(df.head())
get_history_fundamentals 查询连续 4 个季度的营业收入与净利润from jqdata import *
securities = ['000001.XSHE', '600000.XSHG']
# 查询指定财报报告期的连续 4 个单季度数据
df_history = get_history_fundamentals(
security=securities,
fields=[income.total_operating_revenue, income.net_profit],
stat_date='2022q4',
count=4,
interval='1q',
stat_by_year=False
)
print(df_history.head())
get_fundamentals_continuously。get_history_fundamentals。