财务分析(营运能力) (cn_stock_financial_operating)

数据描述: 该表记录了中国股票市场上各上市公司的营运能力相关的财务指标。它详细列出了与公司资产管理和使用效率相关的各种周转率和周转天数,如存货周转率、应收账款周转率、应付账款周转天数、营业周期等,覆盖了最新一期、单季度以及滚动十二期的数据。数据非日频,按照财报的发布进行更新。

文档
数据简介

## 一、数据简介 **请注意:该表不是日频数据,不能直接作为因子使用。该表适合对财务数据有深入研究的用户,日频财务数据的加工方法见文末“通用文档”。** 营运能力财务指标是用来衡量企业在日常经营活动中管理资源的效率和效果的指标。它们能够反映企业的资产使用效率和流动性,帮助投资者、管理层和分析师评估企业的运营状况。 - 数据起始时间:2010-01-04 - 数据结束时间:2026-10-30 - 数据更新频率:不定期,上市公司发布相关公告时更新 ## 二、主键说明 | 关键字 | 释意 | | --- | --- | | date | 公告日,表示站在这一天能看到的财务数据(`shift = 0` 为当时最新一期),不是报告期(报告期见 report_date),可能不是交易日;与 cn_stock_financial_changedate 中的 changedate 对应,详见文末“通用文档” | | instrument | 股票代码 | | report_date | 财务报告期,规则见文末“通用文档” | | shift | 偏移期,站在 date 这一天,向前偏移 n 期的财务数据,0 为当时最新一期,单位为季度 | ## 三、字段说明 字段名由下表的英文字段加后缀组成,后缀表示取数口径:_lf 最新一期,_mrq 单季度,_ttm 滚动十二期。不是每个指标都有三种后缀,具体字段以表结构为准。 | 中文名 | 英文字段 | 中文公式 | 英文公式 | | --- | --- | --- | --- | | 存货周转率 | `inventory_turnover` | `营业成本 / 平均存货` | `operating_costs / avg_inventory` | | 应收账款周转率 | `accounts_receivable_turnover` | `营业收入 / 平均应收账款` | `operating_revenue / avg_accounts_receivable` | | 应收票据及应收账款周转率 | `notes_and_accounts_receivable_turnover` | `营业收入 / 平均应收账款及应收票据` | `operating_revenue / avg_notes_and_accounts_receivable` | | 应收账款及合同资产周转率 | `accounts_receivable_contract_assets_turnover` | `营业收入 / 平均应收账款及合同资产` | `operating_revenue / avg_accounts_receivable_and_contract_assets` | | 应付账款周转率 | `accounts_payable_turnover` | `营业成本 / 平均应付账款` | `operating_costs / avg_accounts_payable` | | 应付票据及应付账款周转率 | `notes_and_accounts_payable_turnover` | `营业成本 / 平均应付票据及应付账款` | `operating_costs / avg_notes_and_accounts_payable` | | 预收款项及合同负债周转率 | `advances_and_contract_liab_turnover` | `营业成本 / 平均预收款项及合同负债` | `operating_costs / avg_advances_and_contract_liabilities` | | 流动资产周转率 | `current_assets_turnover` | `营业总收入 / 平均流动资产` | `total_operating_revenue / avg_current_assets` | | 非流动资产周转率 | `noncurr_assets_turnover` | `营业总收入 / 平均非流动资产` | `total_operating_revenue / avg_noncurrent_assets` | | 营运资本周转率 | `working_capital_turnover` | `营业总收入 / 平均营运资本` | `total_operating_revenue / avg_working_capital` | | 固定资产周转率 | `fix_assets_turnover` | `营业总收入 / 平均固定资产` | `total_operating_revenue / avg_fixed_assets` | | 无形资产周转率 | `intangible_assets_turnover` | `营业总收入 / 平均无形资产` | `total_operating_revenue / avg_intangible_assets` | | 总资产周转率 | `total_assets_turnover` | `营业总收入 / 平均总资产` | `total_operating_revenue / avg_total_assets` | | 净资产周转率 | `net_assets_turnover` | `营业总收入 / 平均净资产` | `total_operating_revenue / avg_net_assets` | | 存货周转天数 | `inventory_turnover_days` | `天数 / 存货周转率` | `days / inventory_turnover` | | 应收账款周转天数 | `accounts_receivable_turnover_days` | `天数 / 应收账款周转率` | `days / accounts_receivable_turnover` | | 应收账款及应收票据周转天数 | `notes_and_accounts_receivable_turnover_days` | `天数 / 应收账款及应收票据周转率` | `days / notes_and_accounts_receivable_turnover` | | 应收账款及合同资产周转天数 | `accounts_receivable_contract_assets_turnover_days` | `天数 / 应收账款及合同资产周转率` | `days / accounts_receivable_contract_assets_turnover` | | 应付账款周转天数 | `accounts_payable_turnover_days` | `天数 / 应付账款周转率` | `days / accounts_payable_turnover` | | 应付票据及应付账款周转天数 | `notes_and_accounts_payable_turnover_days` | `天数 / 应付票据及应付账款周转率` | `days / notes_and_accounts_payable_turnover` | | 预收款项及合同负债周转天数 | `advances_and_contract_liab_turnover_days` | `天数 / 预收款项及合同负债周转率` | `days / advances_and_contract_liab_turnover` | | 流动资产周转天数 | `current_assets_turnover_days` | `天数 / 流动资产周转率` | `days / current_assets_turnover` | | 非流动资产周转天数 | `noncurr_assets_turnover_days` | `天数 / 非流动资产周转率` | `days / noncurr_assets_turnover` | | 固定资产周转天数 | `fix_assets_turnover_days` | `天数 / 固定资产周转率` | `days / fix_assets_turnover` | | 无形资产周转天数 | `intangible_assets_turnover_days` | `天数 / 无形资产周转率` | `days / intangible_assets_turnover` | | 总资产周转天数 | `total_assets_turnover_days` | `天数 / 总资产周转率` | `days / total_assets_turnover` | | 营运资本周转天数 | `working_capital_turnover_days` | `天数 / 营运资本周转率` | `days / working_capital_turnover` | | 净资产周转天数 | `net_assets_turnover_days` | `天数 / 净资产周转率` | `days / net_assets_turnover` | | 营业周期 | `operating_cycle` | `存货周转天数 + 应收账款周转天数` | `inventory_turnover_days + accounts_receivable_turnover_days` | | 净营业周期 | `net_operating_cycle` | `应收账款周转天数 + 存货周转天数 - 应付账款周转天数` | `accounts_receivable_turnover_days + inventory_turnover_days - accounts_payable_turnover_days` | ## 四、示例数据 2026-10-23 至 2026-10-30 的数据,字段较多,只展示 7 个字段,按日期、股票代码、报告期排序,展示前 5 行和后 5 行。 | date | instrument | report_date | shift | inventory_turnover_lf | accounts_receivable_turnover_lf | notes_and_accounts_receivable_turnover_lf | accounts_receivable_contract_assets_turnover_lf | accounts_payable_turnover_lf | notes_and_accounts_payable_turnover_lf | advances_and_contract_liab_turnover_lf | current_assets_turnover_lf | noncurr_assets_turnover_lf | working_capital_turnover_lf | fix_assets_turnover_lf | intangible_assets_turnover_lf | total_assets_turnover_lf | net_assets_turnover_lf | inventory_turnover_days_lf | accounts_receivable_turnover_days_lf | notes_and_accounts_receivable_turnover_days_lf | accounts_receivable_contract_assets_turnover_days_lf | accounts_payable_turnover_days_lf | notes_and_accounts_payable_turnover_days_lf | advances_and_contract_liab_turnover_days_lf | current_assets_turnover_days_lf | noncurr_assets_turnover_days_lf | working_capital_turnover_days_lf | fix_assets_turnover_days_lf | intangible_assets_turnover_days_lf | total_assets_turnover_days_lf | net_assets_turnover_days_lf | operating_cycle_lf | net_operating_cycle_lf | inventory_turnover_mrq | accounts_receivable_turnover_mrq | notes_and_accounts_receivable_turnover_mrq | accounts_receivable_contract_assets_turnover_mrq | accounts_payable_turnover_mrq | notes_and_accounts_payable_turnover_mrq | advances_and_contract_liab_turnover_mrq | current_assets_turnover_mrq | noncurr_assets_turnover_mrq | working_capital_turnover_mrq | fix_assets_turnover_mrq | intangible_assets_turnover_mrq | total_assets_turnover_mrq | net_assets_turnover_mrq | inventory_turnover_days_mrq | accounts_receivable_turnover_days_mrq | notes_and_accounts_receivable_turnover_days_mrq | accounts_receivable_contract_assets_turnover_days_mrq | accounts_payable_turnover_days_mrq | notes_and_accounts_payable_turnover_days_mrq | advances_and_contract_liab_turnover_days_mrq | current_assets_turnover_days_mrq | noncurr_assets_turnover_days_mrq | working_capital_turnover_days_mrq | fix_assets_turnover_days_mrq | intangible_assets_turnover_days_mrq | total_assets_turnover_days_mrq | net_assets_turnover_days_mrq | operating_cycle_mrq | net_operating_cycle_mrq | inventory_turnover_ttm | accounts_receivable_turnover_ttm | notes_and_accounts_receivable_turnover_ttm | accounts_receivable_contract_assets_turnover_ttm | accounts_payable_turnover_ttm | notes_and_accounts_payable_turnover_ttm | advances_and_contract_liab_turnover_ttm | current_assets_turnover_ttm | noncurr_assets_turnover_ttm | working_capital_turnover_ttm | fix_assets_turnover_ttm | intangible_assets_turnover_ttm | total_assets_turnover_ttm | net_assets_turnover_ttm | inventory_turnover_days_ttm | accounts_receivable_turnover_days_ttm | notes_and_accounts_receivable_turnover_days_ttm | accounts_receivable_contract_assets_turnover_days_ttm | accounts_payable_turnover_days_ttm | notes_and_accounts_payable_turnover_days_ttm | advances_and_contract_liab_turnover_days_ttm | current_assets_turnover_days_ttm | noncurr_assets_turnover_days_ttm | working_capital_turnover_days_ttm | fix_assets_turnover_days_ttm | intangible_assets_turnover_days_ttm | total_assets_turnover_days_ttm | net_assets_turnover_days_ttm | operating_cycle_ttm | net_operating_cycle_ttm | |:--------------------|:-------------|:--------------------|--------:|------------------------:|----------------------------------:|--------------------------------------------:|--------------------------------------------------:|-------------------------------:|-----------------------------------------:|-----------------------------------------:|-----------------------------:|-----------------------------:|------------------------------:|-------------------------:|--------------------------------:|---------------------------:|-------------------------:|-----------------------------:|---------------------------------------:|-------------------------------------------------:|-------------------------------------------------------:|------------------------------------:|----------------------------------------------:|----------------------------------------------:|----------------------------------:|----------------------------------:|-----------------------------------:|------------------------------:|-------------------------------------:|--------------------------------:|------------------------------:|---------------------:|-------------------------:|-------------------------:|-----------------------------------:|---------------------------------------------:|---------------------------------------------------:|--------------------------------:|------------------------------------------:|------------------------------------------:|------------------------------:|------------------------------:|-------------------------------:|--------------------------:|---------------------------------:|----------------------------:|--------------------------:|------------------------------:|----------------------------------------:|--------------------------------------------------:|--------------------------------------------------------:|-------------------------------------:|-----------------------------------------------:|-----------------------------------------------:|-----------------------------------:|-----------------------------------:|------------------------------------:|-------------------------------:|--------------------------------------:|---------------------------------:|-------------------------------:|----------------------:|--------------------------:|-------------------------:|-----------------------------------:|---------------------------------------------:|---------------------------------------------------:|--------------------------------:|------------------------------------------:|------------------------------------------:|------------------------------:|------------------------------:|-------------------------------:|--------------------------:|---------------------------------:|----------------------------:|--------------------------:|------------------------------:|----------------------------------------:|--------------------------------------------------:|--------------------------------------------------------:|-------------------------------------:|-----------------------------------------------:|-----------------------------------------------:|-----------------------------------:|-----------------------------------:|------------------------------------:|-------------------------------:|--------------------------------------:|---------------------------------:|-------------------------------:|----------------------:|--------------------------:| | 2026-10-23 00:00:00 | 000059.SZ | 2008-12-31 00:00:00 | 71 | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | | 2026-10-23 00:00:00 | 000059.SZ | 2009-03-31 00:00:00 | 70 | nan | nan | nan | nan | nan | nan | 4.96915 | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | 18.1117 | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | 4.96915 | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | 18.1117 | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | | 2026-10-23 00:00:00 | 000059.SZ | 2009-06-30 00:00:00 | 69 | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | | 2026-10-23 00:00:00 | 000059.SZ | 2009-09-30 00:00:00 | 68 | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | | 2026-10-23 00:00:00 | 000059.SZ | 2009-12-31 00:00:00 | 67 | nan | nan | nan | nan | nan | nan | 22.2078 | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | 16.2105 | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | 5.28563 | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | 17.0273 | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | 22.2078 | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | nan | 16.2105 | nan | nan | nan | nan | nan | nan | nan | nan | nan | | 2026-10-30 00:00:00 | 920985.BJ | 2025-09-30 00:00:00 | 4 | 0.784379 | 1.69242 | 1.52593 | 1.67684 | 1.58808 | 1.11671 | 19.1465 | 0.432263 | 0.721712 | 1.89804 | 1.42378 | 7.05326 | 0.270343 | 1.23557 | 267.728 | 124.082 | 137.621 | 125.235 | 132.235 | 188.053 | 10.968 | 485.815 | 290.975 | 110.641 | 147.495 | 29.7735 | 776.79 | 169.962 | 391.81 | 259.575 | 0.158938 | 0.330452 | 0.297944 | 0.32741 | 0.321791 | 0.226277 | 3.87964 | 0.084401 | 0.140917 | 0.370599 | 0.277998 | 1.37717 | 0.0527855 | 0.241249 | 566.259 | 272.354 | 302.07 | 274.885 | 279.684 | 397.742 | 23.198 | 1066.34 | 638.674 | 242.85 | 323.744 | 65.3512 | 1705.01 | 373.058 | 838.614 | 558.929 | 1.36029 | 3.1155 | 2.80902 | 3.08682 | 2.7541 | 1.93663 | 33.2045 | 0.795733 | 1.32857 | 3.49401 | 2.62096 | 12.984 | 0.497662 | 2.2745 | 264.649 | 115.551 | 128.159 | 116.625 | 130.714 | 185.89 | 10.8419 | 452.413 | 270.969 | 103.034 | 137.354 | 27.7264 | 723.382 | 158.277 | 380.2 | 249.486 | | 2026-10-30 00:00:00 | 920985.BJ | 2025-12-31 00:00:00 | 3 | 1.01666 | 1.97413 | 1.74399 | 1.95441 | 2.27613 | 1.68154 | 16.6568 | 0.495588 | 0.849564 | 1.85646 | 1.56974 | 8.90874 | 0.313001 | 1.86605 | 354.101 | 182.359 | 206.424 | 184.199 | 158.163 | 214.09 | 21.6128 | 726.41 | 423.747 | 193.917 | 229.337 | 40.4098 | 1150.16 | 192.921 | 536.46 | 378.296 | 0.157815 | 0.215158 | 0.190075 | 0.213009 | 0.35332 | 0.261022 | 2.58561 | 0.0540135 | 0.092593 | 0.202333 | 0.171084 | 0.970952 | 0.0341136 | 0.203379 | 570.29 | 418.298 | 473.498 | 422.518 | 254.726 | 344.798 | 34.8081 | 1666.25 | 971.996 | 444.811 | 526.056 | 92.6925 | 2638.25 | 442.524 | 988.587 | 733.861 | 1.01666 | 1.97413 | 1.74399 | 1.95441 | 2.27613 | 1.68154 | 16.6568 | 0.495588 | 0.849564 | 1.85646 | 1.56974 | 8.90874 | 0.313001 | 1.86605 | 354.101 | 182.359 | 206.424 | 184.199 | 158.163 | 214.09 | 21.6128 | 726.41 | 423.747 | 193.917 | 229.337 | 40.4098 | 1150.16 | 192.921 | 536.46 | 378.296 | | 2026-10-30 00:00:00 | 920985.BJ | 2026-03-31 00:00:00 | 2 | 0.261819 | 0.452956 | 0.429187 | 0.449759 | 0.528299 | 0.427432 | 3.46438 | 0.135213 | 0.226865 | 0.492053 | 0.385352 | 2.48685 | 0.0847194 | 0.657398 | 343.749 | 198.695 | 209.699 | 200.107 | 170.358 | 210.56 | 25.9787 | 665.618 | 396.712 | 182.907 | 233.553 | 36.1903 | 1062.33 | 136.903 | 542.444 | 372.086 | 0.261819 | 0.452956 | 0.429187 | 0.449759 | 0.528299 | 0.427432 | 3.46438 | 0.135213 | 0.226865 | 0.492053 | 0.385352 | 2.48685 | 0.0847194 | 0.657398 | 343.749 | 198.695 | 209.699 | 200.107 | 170.358 | 210.56 | 25.9787 | 665.618 | 396.712 | 182.907 | 233.553 | 36.1903 | 1062.33 | 136.903 | 542.444 | 372.086 | 1.15679 | 1.71907 | 1.62886 | 1.70693 | 2.33418 | 1.88852 | 15.3067 | 0.513161 | 0.861 | 1.86745 | 1.46249 | 9.43815 | 0.321528 | 2.49497 | 311.205 | 209.416 | 221.014 | 210.905 | 154.229 | 190.625 | 23.5191 | 701.534 | 418.118 | 192.777 | 246.155 | 38.1431 | 1119.65 | 144.29 | 520.621 | 366.391 | | 2026-10-30 00:00:00 | 920985.BJ | 2026-06-30 00:00:00 | 1 | 0.351978 | 0.688483 | 0.67835 | 0.685075 | 0.757431 | 0.627468 | 1.71313 | 0.169233 | 0.313862 | 0.489417 | 0.5302 | 3.24889 | 0.109949 | 1.01105 | 511.396 | 261.444 | 265.35 | 262.745 | 237.645 | 286.867 | 105.071 | 1063.62 | 573.501 | 367.785 | 339.495 | 55.4035 | 1637.13 | 178.033 | 772.84 | 535.194 | 0.106586 | 0.1851 | 0.182376 | 0.184184 | 0.229364 | 0.190009 | 0.518769 | 0.0454985 | 0.0843824 | 0.131581 | 0.142545 | 0.873471 | 0.02956 | 0.271822 | 844.392 | 486.223 | 493.487 | 488.642 | 392.389 | 473.661 | 173.487 | 1978.09 | 1066.57 | 683.991 | 631.378 | 103.037 | 3044.66 | 331.099 | 1330.61 | 938.226 | 0.700655 | 1.23111 | 1.21299 | 1.22502 | 1.50776 | 1.24905 | 3.4102 | 0.302613 | 0.561232 | 0.875151 | 0.948077 | 5.8095 | 0.196605 | 1.8079 | 513.805 | 292.419 | 296.787 | 293.874 | 238.765 | 288.219 | 105.566 | 1189.64 | 641.446 | 411.358 | 379.716 | 61.9674 | 1831.08 | 199.126 | 806.224 | 567.459 | | 2026-10-30 00:00:00 | 920985.BJ | 2026-09-30 00:00:00 | 0 | 0.573964 | 1.21947 | 1.19956 | 1.21507 | 1.21366 | 1.06706 | 1.6369 | 0.271192 | 0.595742 | 0.73924 | 0.990913 | 5.0833 | 0.186359 | 2.22629 | 365.877 | 172.207 | 175.064 | 172.829 | 173.03 | 196.803 | 128.291 | 774.358 | 352.501 | 284.076 | 211.926 | 41.3117 | 1126.86 | 94.3272 | 538.083 | 365.053 | 0.260209 | 0.548786 | 0.539827 | 0.546808 | 0.550218 | 0.483755 | 0.742095 | 0.122042 | 0.268097 | 0.332674 | 0.445932 | 2.2876 | 0.0838653 | 1.00188 | 345.876 | 163.999 | 166.72 | 164.592 | 163.571 | 186.044 | 121.278 | 737.449 | 335.7 | 270.535 | 201.825 | 39.3426 | 1073.15 | 89.8312 | 509.874 | 346.303 | 0.721777 | 1.42307 | 1.39984 | 1.41794 | 1.52622 | 1.34186 | 2.05845 | 0.31647 | 0.695207 | 0.862662 | 1.15635 | 5.932 | 0.217473 | 2.59799 | 498.769 | 252.975 | 257.173 | 253.89 | 235.877 | 268.285 | 174.889 | 1137.55 | 517.832 | 417.313 | 311.323 | 60.6877 | 1655.38 | 138.569 | 751.744 | 515.866 | ## 通用文档 ## 【财务数据通用】一、数据体系 平台的财务数据分四类,从原始披露到加工指标逐层派生: | 类别 | 数据表 | 说明 | | --- | --- | --- | | 原始数据 | 资产负债表、利润表、现金流量表 PIT(`cn_stock_financial_*_pit`),财报变更日期(`cn_stock_financial_changedate`),财务附注(`cn_stock_financial_note_*`) | 公司披露什么就记录什么,只在披露财报时有记录,不是日频 | | 衍生数据 | `cn_stock_financial_lf_shift`、`ly_shift`、`mrq_shift`、`ttm_shift`、`notes_shift` | 把原始数据加工成最新一期(LF)、最新年报(LY)、单季度(MRQ)、滚动十二期(TTM),并用 `shift` 带出历史各期 | | 财务分析 | `cn_stock_financial_profitability`、`growth`、`operating`、`debt_repay`、`capital`、`cash_flow`、`earning_quality`、`xps`、`derivative` | 在衍生数据的基础上做加减乘除得到的财务指标 | | 盈利预期 | `cn_stock_financial_earnings_preview`、`cn_stock_financial_forecast_consensus_rolling` | 业绩快报和机构一致预期,口径独立,见各表文档 | 以上财务表都不是日频数据,不能直接当作每日因子使用,需要先按公告日对齐到交易日,做法见本文五。衍生数据和财务分析适合对财务数据有较深了解、希望构建复杂财务因子的用户。 ## 【财务数据通用】二、date 与 report_date 财务表里有两个时间概念,含义不同,使用时不要混淆: - `date`:公告日,即这条财务数据对外公布(首次披露或更正)的日期,也是这条数据可以被使用的最早日期。`date` 不是报告期。 - `report_date`:报告期,即这条数据属于哪一期财报。 关于 `date` 的几点说明: - `date` 就是公告日,原样记录,公告日不是交易日(周末、节假日)时也不会顺延,所以 `date` 可能不是交易日。按交易日使用时,用 `date <= 交易日` 取最新的记录即可(见本文五的 `ASOF JOIN`)。 - `date` 来自 `cn_stock_financial_changedate` 的 `changedate`,二者约等于同一个日期。数据入库时会去重,所有字段的取值完全相同的记录只保留一条。 - 原始表(三大报表 PIT、财务附注)中,一行是某个公司某个报告期在某个公告日的版本。同一个 `report_date` 首次披露和后来更正,会有不同的 `date`。 - 衍生表和财务分析表中,`date` 同样是公告日,表里只有公司有公告的日期。站在这一天,`shift = 0` 是当时能看到的最新一期,`shift = 1, 2…` 是更早的各期,数值是当时能看到的版本,示例见本文四。 报告期的取值: - xxxx-03-31 表示 xxxx 年一季报,比如 2024-03-31 指 2024 年一季报 - xxxx-06-30 表示 xxxx 年半年报,比如 2024-06-30 指 2024 年半年报 - xxxx-09-30 表示 xxxx 年三季报,比如 2024-09-30 指 2024 年三季报 - xxxx-12-31 表示 xxxx 年年报,比如 2024-12-31 指 2024 年年报 上市公司一年内披露四次财务报告,披露时限如下: - 一季报:应在 4 月 30 日前披露 - 半年报:应在 8 月 31 日前披露 - 三季报:应在 10 月 31 日前披露 - 年报:应在次年 4 月 30 日前披露 判断某一天能看到哪些数据要用 `date`,不能用 `report_date`,否则会用到当时还没有公布的数据。 ## 【财务数据通用】三、PIT (Point in Time) 上市公司除了正常披露财务报表外,后续会时常对历史财务数据进行修正。因此在量化投资领域,加工财务数据时不能只用最新修正后的数据,而要基于历史时间节点获取当时能获取的最新数据。PIT(Point In Time)数据指的是在某个时间点上,基于已公布的财务报表获取的某个财务指标的取值。 以 002473.SZ 的财务数据为例,在平台上调用以下代码: ```python import dai import pandas as pd pd.set_option('display.float_format', '{:.2f}'.format) dai.query(""" SELECT date, instrument, report_date, change_type, total_current_assets FROM cn_stock_financial_balance_general_pit WHERE instrument='002473.SZ' AND report_date='2019-12-31' AND date>'2020-01-01' """).df() ``` 运行上述代码,能得到以下数据: | date | instrument | report_date | change_type | total_current_assets | | --- | --- | --- | --- | --- | | 2020-04-30 | 002473.SZ | 2019-12-31 | 0 | 223449880.95 | | 2020-08-27 | 002473.SZ | 2019-12-31 | 1 | 228470428.90 | | 2020-10-26 | 002473.SZ | 2019-12-31 | 1 | 228470428.90 | | 2021-04-29 | 002473.SZ | 2019-12-31 | 1 | 228470428.90 | 该公司于 2020 年 4 月 30 日首次公布 2019 年年报,披露的流动资产(total_current_assets)为 223449880.95,又于 2020 年 8 月 27 日对 2019 年年报的流动资产进行修正,修正为 228470428.90,因此 2019 年年报在表中有多条记录。 date 为 2020-08-27、2020-10-26、2021-04-29 的 total_current_assets 取值相同,这些重复记录是必要的:公司每披露某一期财报,都会附带上年同期或上年年末的数据作对比,极少部分公司即使不发布修正公告,也会通过这种方式修改历史财务数据,所以每次披露都保留一条记录。 原始数据表里与此相关的字段: | 字段 | 释意 | | --- | --- | | change_type | 0 表示首次披露的财务数据,1 表示非首次披露或有更改的财务数据 | | fs_quarter_index | 对应季度,1 指一季报,2 指半年报,3 指三季报,4 指年报,仅报表 PIT 表有 | ## 【财务数据通用】四、衍生数据:LF、LY、MRQ、TTM 与 shift 原始财务数据只在公司披露财报时才有记录,这类非规整的数据很难直接用于量化投资。衍生数据把原始数据加工成四类,字段名就是原始财务字段加上对应的后缀。要查具体字段,先在原始财报的文档里找到财务字段,再加上后缀,比如利润表的 `net_profit` 对应 `net_profit_lf`、`net_profit_ttm`。 - lf(last file):取自最新一期财务数据,表为 `cn_stock_financial_lf_shift` - ly(last year):取自最新一期年报财务数据,表为 `cn_stock_financial_ly_shift` - mrq(most recent quarter):最新一个单季度的财务数据,表为 `cn_stock_financial_mrq_shift` - ttm(trailing twelve months):最新滚动十二个月的财务数据,表为 `cn_stock_financial_ttm_shift` - shift(偏移期):站在历史节点上向前偏移 n 期,shift=0 为当期,shift=1 为上一期。LF、MRQ、TTM 以季为单位,LY 以年为单位 在平台加工的“衍生数据”和“财务分析”两大类财务数据中,我们同样进行 PIT 处理,以 002473.SZ 这只股票的流动资产(total_current_assets)数据举例: ```python import dai import pandas as pd pd.set_option('display.float_format', '{:.2f}'.format) dai.query(""" SELECT date, instrument, report_date, shift, total_current_assets_lf FROM cn_stock_financial_lf_shift WHERE instrument='002473.SZ' AND shift < 3 AND ((date='2020-04-30') OR (date='2020-08-27')) """).df().sort_values("date") ``` 通过上述代码,我们得到以下数据,可以看出,站在 2020 年 4 月 30 日这一天,我们能获取到的 2019 年年报的流动资产为 223449880.95,但站在 2020-08-27 这一天时,我们能获取到的 2019 年年报的流动资产为 228470428.90。 | date | instrument | report_date | shift | total_current_assets_lf | | --- | --- | --- | --- | --- | | 2020-04-30 | 002473.SZ | 2019-09-30 | 2 | 268546184.69 | | 2020-04-30 | 002473.SZ | 2019-12-31 | 1 | **223449880.95** | | 2020-04-30 | 002473.SZ | 2020-03-31 | 0 | 213964081.16 | | 2020-08-27 | 002473.SZ | 2019-12-31 | 2 | **228470428.90** | | 2020-08-27 | 002473.SZ | 2020-03-31 | 1 | 233220236.75 | | 2020-08-27 | 002473.SZ | 2020-06-30 | 0 | 222315509.19 | ## 【财务数据通用】五、日频财务数据与日频 ROE 因子 衍生数据按公告日存储,不是日频。要得到日频数据,把财务表按公告日对齐到交易日:某一天只使用当天及之前已经公告的最新一期(`shift = 0`),在下一次公告之前沿用上一期的值。DAI SQL 用 `ASOF JOIN` 完成。 下面以日频 ROE 为例,ROE = 滚动十二期归属母公司股东的净利润 / 最新一期归属母公司股东的所有者权益: ```python import dai df = dai.query(""" SELECT b.date, b.instrument, t.net_profit_to_parent_shareholders_ttm / l.total_equity_to_parent_shareholders_lf AS roe_ttm FROM cn_stock_bar1d b ASOF JOIN (SELECT * FROM cn_stock_financial_ttm_shift WHERE shift = 0) t ON b.instrument = t.instrument AND b.date >= t.date ASOF JOIN (SELECT * FROM cn_stock_financial_lf_shift WHERE shift = 0) l ON b.instrument = l.instrument AND b.date >= l.date WHERE b.date >= '2024-01-01' ORDER BY b.date, b.instrument """, filters={"date": ["2023-01-01", "2024-12-31"]}).pl() ``` - `filters` 的起点要早于第一个需要的交易日,这里提前一年,这样起点之前已经公告的财报也能取到。 - 所有者权益为 0 或负数时,ROE 会是无穷值或负值,使用前需要处理。 - 其他财务科目的日频因子写法相同,只需替换字段和后缀。现成的 ROE 指标见 `cn_stock_financial_profitability` 的 `roe_avg_ttm`、`roe_period_ttm` 等字段。 平台还提供过已按日频处理好的财务表 `cn_stock_factors_financial_items`,以 002473.SZ 的流动资产(total_current_assets)数据举例(该表已不建议使用,建议基于衍生数据自行计算): ```python import dai import pandas as pd pd.set_option('display.float_format', '{:.2f}'.format) dai.query(""" SELECT date, instrument, total_current_assets_ly FROM cn_stock_factors_financial_items WHERE instrument='002473.SZ' AND ((date>'2020-04-25' and date<'2020-05-05') OR (date>'2020-08-25' and date<'2020-09-01')) """).df().sort_values("date") ``` 通过上述代码,我们得到以下数据。可以看出,当日期来到 2020 年 4 月 30 日这一天时,我们能获取到最新的流动资产(年报)数据是 223449880.95,这个数值一直保持到 2020 年 8 月 27 日,最新一期年报的流动资产变为了 228470428.90,符合预期。 | date | instrument | total_current_assets_ly | | --- | --- | --- | | 2020-04-27 | 002473.SZ | 330113974.90 | | 2020-04-28 | 002473.SZ | 330113974.90 | | 2020-04-29 | 002473.SZ | 330113974.90 | | 2020-04-30 | 002473.SZ | **223449880.95** | | 2020-08-26 | 002473.SZ | 223449880.95 | | 2020-08-27 | 002473.SZ | **228470428.90** | | 2020-08-28 | 002473.SZ | 228470428.90 | | 2020-08-31 | 002473.SZ | 228470428.90 | ## 【财务数据通用】六、财务分析与财务附注 - 财务分析表在衍生数据(LF、MRQ、TTM)的基础上通过加减乘除计算各类财务指标,所以数据结构、`shift` 的含义都与衍生数据相同,字段名带 `_lf`、`_mrq`、`_ttm` 后缀。各指标的计算公式见各表文档的“字段说明”。 - 财务附注是对资产负债表、利润表和现金流量表有关项目的说明,主要包括非经常性项目、收入明细、费用明细、投资收益等。多数附注科目只在半年报和年报中披露,一季报、三季报对应的记录大部分附注字段为空,使用时建议按 `report_date` 的月份筛选出 06-30 和 12-31 的记录。非经常性损益等少数科目在一季报、三季报中也有数据。 ## 【财务数据通用】七、收录范围 - 目前只收录合并报表的数据,没有母公司报表。 - 报表 PIT 表目前只收录一般企业的财务科目,针对金融类企业的特殊字段后续会逐渐加入。

用例
* 用例1:查询某只股票特定日期内所有首次披露的成长能力指标 ``` import dai df = dai.query(""" SELECT * FROM cn_stock_financial_operating WHERE instrument = '000001.SZ' AND shift = 0 ORDER BY date,instrument,report_date""", filters={"date": ["2023-01-01","2024-04-30"]} ).df() ``` * 用例2:应收账款周转率趋势分析 ``` import dai df = dai.query(""" SELECT date, instrument, report_date, accounts_receivable_turnover_lf, accounts_receivable_turnover_mrq, accounts_receivable_turnover_ttm FROM cn_stock_financial_operating WHERE shift = 0 ORDER BY date,instrument,report_date""", filters={"date": ["2023-01-01","2024-04-30"]} ).df() ``` * 用例3:查询某只股票所有的最新一期、单季度、滚动十二期的应付账款周转天数 ``` import dai df = dai.query(""" SELECT date, instrument, report_date, shift, accounts_payable_turnover_days_lf, accounts_payable_turnover_days_mrq, accounts_payable_turnover_days_ttm FROM cn_stock_financial_operating WHERE instrument = '000001.SZ' ORDER BY date,instrument,report_date """, full_db_scan=True).df() ```
表结构
字段 字段类型 字段描述
fix_assets_turnover_lf DOUBLE 固定资产周转率(最新一期)
inventory_turnover_mrq DOUBLE 存货周转率(单季度)
inventory_turnover_ttm DOUBLE 存货周转率(滚动十二期)
net_assets_turnover_lf DOUBLE 净资产周转率(最新一期)
net_operating_cycle_lf DOUBLE 净营业周期(最新一期)
fix_assets_turnover_mrq DOUBLE 固定资产周转率(单季度)
fix_assets_turnover_ttm DOUBLE 固定资产周转率(滚动十二期)
net_assets_turnover_mrq DOUBLE 净资产周转率(单季度)
net_assets_turnover_ttm DOUBLE 净资产周转率(滚动十二期)
net_operating_cycle_mrq DOUBLE 净营业周期(单季度)
net_operating_cycle_ttm DOUBLE 净营业周期(滚动十二期)
total_assets_turnover_lf DOUBLE 总资产周转率(最新一期)
total_assets_turnover_mrq DOUBLE 总资产周转率(单季度)
total_assets_turnover_ttm DOUBLE 总资产周转率(滚动十二期)
current_assets_turnover_lf DOUBLE 流动资产周转率(最新一期)
inventory_turnover_days_lf DOUBLE 存货周转天数(最新一期)
noncurr_assets_turnover_lf DOUBLE 非流动资产周转率(最新一期)
current_assets_turnover_mrq DOUBLE 流动资产周转率(单季度)
current_assets_turnover_ttm DOUBLE 流动资产周转率(滚动十二期)
fix_assets_turnover_days_lf DOUBLE 固定资产周转天数(最新一期)
inventory_turnover_days_mrq DOUBLE 存货周转天数(单季度)
inventory_turnover_days_ttm DOUBLE 存货周转天数(滚动十二期)
net_assets_turnover_days_lf DOUBLE 净资产周转天数(最新一期)
noncurr_assets_turnover_mrq DOUBLE 非流动资产周转率(单季度)
noncurr_assets_turnover_ttm DOUBLE 非流动资产周转率(滚动十二期)
working_capital_turnover_lf DOUBLE 营运资本周转率(最新一期)
accounts_payable_turnover_lf DOUBLE 应付账款周转率(最新一期)
fix_assets_turnover_days_mrq DOUBLE 固定资产周转天数(单季度)
fix_assets_turnover_days_ttm DOUBLE 固定资产周转天数(滚动十二期)
date TIMESTAMP_NS 日期
net_assets_turnover_days_ttm DOUBLE 净资产周转天数(滚动十二期)
working_capital_turnover_mrq DOUBLE 营运资本周转率(单季度)
working_capital_turnover_ttm DOUBLE 营运资本周转率(滚动十二期)
accounts_payable_turnover_mrq DOUBLE 应付账款周转率(单季度)
accounts_payable_turnover_ttm DOUBLE 应付账款周转率(滚动十二期)
intangible_assets_turnover_lf DOUBLE 无形资产周转率(最新一期)
total_assets_turnover_days_lf DOUBLE 总资产周转天数(最新一期)
intangible_assets_turnover_mrq DOUBLE 无形资产周转率(单季度)
intangible_assets_turnover_ttm DOUBLE 无形资产周转率(滚动十二期)
total_assets_turnover_days_mrq DOUBLE 总资产周转天数(单季度)
total_assets_turnover_days_ttm DOUBLE 总资产周转天数(滚动十二期)
accounts_receivable_turnover_lf DOUBLE 应收账款周转率(最新一期)
current_assets_turnover_days_lf DOUBLE 流动资产周转天数(最新一期)
noncurr_assets_turnover_days_lf DOUBLE 非流动资产周转天数(最新一期)
accounts_receivable_turnover_mrq DOUBLE 应收账款周转率(单季度)
accounts_receivable_turnover_ttm DOUBLE 应收账款周转率(滚动十二期)
current_assets_turnover_days_mrq DOUBLE 流动资产周转天数(单季度)
current_assets_turnover_days_ttm DOUBLE 流动资产周转天数(滚动十二期)
noncurr_assets_turnover_days_mrq DOUBLE 非流动资产周转天数(单季度)
noncurr_assets_turnover_days_ttm DOUBLE 非流动资产周转天数(滚动十二期)
working_capital_turnover_days_lf DOUBLE 营运资本周转天数(最新一期)
accounts_payable_turnover_days_lf DOUBLE 应付账款周转天数(最新一期)
working_capital_turnover_days_mrq DOUBLE 营运资本周转天数(单季度)
working_capital_turnover_days_ttm DOUBLE 营运资本周转天数(滚动十二期)
accounts_payable_turnover_days_mrq DOUBLE 应付账款周转天数(单季度)
accounts_payable_turnover_days_ttm DOUBLE 应付账款周转天数(滚动十二期)
intangible_assets_turnover_days_lf DOUBLE 无形资产周转天数(最新一期)
intangible_assets_turnover_days_mrq DOUBLE 无形资产周转天数(单季度)
intangible_assets_turnover_days_ttm DOUBLE 无形资产周转天数(滚动十二期)
accounts_receivable_turnover_days_lf DOUBLE 应收账款周转天数(最新一期)
accounts_receivable_turnover_days_mrq DOUBLE 应收账款周转天数(单季度)
accounts_receivable_turnover_days_ttm DOUBLE 应收账款周转天数(滚动十二期)
advances_and_contract_liab_turnover_lf DOUBLE 预收款项及合同负债周转率(最新一期)
notes_and_accounts_payable_turnover_lf DOUBLE 应付票据及应付账款周转率(最新一期)
advances_and_contract_liab_turnover_mrq DOUBLE 预收款项及合同负债周转率(单季度)
shift TINYINT 偏移报告期
notes_and_accounts_payable_turnover_mrq DOUBLE 应付票据及应付账款周转率(单季度)
notes_and_accounts_payable_turnover_ttm DOUBLE 应付票据及应付账款周转率(滚动十二期)
notes_and_accounts_receivable_turnover_lf DOUBLE 应收票据及应收账款周转率(最新一期)
notes_and_accounts_receivable_turnover_mrq DOUBLE 应收票据及应收账款周转率(单季度)
notes_and_accounts_receivable_turnover_ttm DOUBLE 应收票据及应收账款周转率(滚动十二期)
advances_and_contract_liab_turnover_days_lf DOUBLE 预收款项及合同负债周转天数(最新一期)
notes_and_accounts_payable_turnover_days_lf DOUBLE 应付票据及应付账款周转天数(最新一期)
report_date TIMESTAMP_NS 报告期
advances_and_contract_liab_turnover_days_ttm DOUBLE 预收款项及合同负债周转天数(滚动十二期)
notes_and_accounts_payable_turnover_days_mrq DOUBLE 应付票据及应付账款周转天数(单季度)
notes_and_accounts_payable_turnover_days_ttm DOUBLE 应付票据及应付账款周转天数(滚动十二期)
notes_and_accounts_receivable_turnover_days_lf DOUBLE 应收票据及应收账款周转天数(最新一期)
accounts_receivable_contract_assets_turnover_lf DOUBLE 应收账款及合同资产周转率(最新一期)
notes_and_accounts_receivable_turnover_days_mrq DOUBLE 应收票据及应收账款周转天数(单季度)
notes_and_accounts_receivable_turnover_days_ttm DOUBLE 应收票据及应收账款周转天数(滚动十二期)
accounts_receivable_contract_assets_turnover_mrq DOUBLE 应收账款及合同资产周转率(单季度)
accounts_receivable_contract_assets_turnover_ttm DOUBLE 应收账款及合同资产周转率(滚动十二期)
accounts_receivable_contract_assets_turnover_days_lf DOUBLE 应收账款及合同资产周转天数(最新一期)
accounts_receivable_contract_assets_turnover_days_mrq DOUBLE 应收账款及合同资产周转天数(单季度)
accounts_receivable_contract_assets_turnover_days_ttm DOUBLE 应收账款及合同资产周转天数(滚动十二期)
instrument VARCHAR 证券代码
advances_and_contract_liab_turnover_days_mrq DOUBLE 预收款项及合同负债周转天数(单季度)
advances_and_contract_liab_turnover_ttm DOUBLE 预收款项及合同负债周转率(滚动十二期)
net_assets_turnover_days_mrq DOUBLE 净资产周转天数(单季度)
operating_cycle_lf DOUBLE 营业周期(最新一期)
operating_cycle_mrq DOUBLE 营业周期(单季度)
operating_cycle_ttm DOUBLE 营业周期(滚动十二期)
inventory_turnover_lf DOUBLE 存货周转率(最新一期)

表名:cn_stock_financial_operating

起始时间:

最近更新时间: