# 财务基本面 / 最近N个会计年度 ## `MainIncomeGrowRatio_Year(r_date, n)` 最近N年的营业收入增长率(%)(复合增长率)。 (1)取向后兼容的最新年报Q1,然后取N年前同期的年报Q2; (2)分别以Q1、Q2为指定报告期,取营业收入(合并利润分配表)得到v1、v2; (3)如果v1/v2>0,营业收入增长率(%)(复合增长率)=(Power(v1/v2,1/N)-1)\*100,否则返回0。 | 参数 | 类型 | 说明 | | -------- | -------- | -------------- | | `r_date` | datetime | 整数,报告期; | | `n` | any | 整数,最近N年 | 返回:float ## `MainProfitGrowRatio_Year(r_date, n)` 最近N年的主营业务利润增长率(%)(复合增长率)。 (1)取向后兼容的最新年报Q1,然后取N年前同期的年报Q2; (2)分别以Q1、Q2为指定报告期,取主营业务利润(合并利润分配表)得到v1、v2; (3)如果v1/v2>0,主营业务利润增长率(%)(复合增长率)=(Power(v1/v2,1/N)-1)\*100,否则返回0。 | 参数 | 类型 | 说明 | | -------- | -------- | -------------- | | `r_date` | datetime | 整数,报告期; | | `n` | any | 整数,最近N年 | 返回:float ## `NetProfitGrowRatio_Year(r_date, n)` 最近N年的净利润增长率(%)(复合增长率)。 (1)取向后兼容的最新年报Q1,然后取N年前同期的年报Q2; (2)分别以Q1、Q2为指定报告期,取归属于母公司所有者的净利润(合并利润分配表)得到v1、v2; (3)如果v1/v2>0,净利润增长率(%)(复合增长率)=(Power(v1/v2,1/N)-1)\*100,否则返回0。 | 参数 | 类型 | 说明 | | -------- | -------- | -------------- | | `r_date` | datetime | 整数,报告期; | | `n` | any | 整数,最近N年 | 返回:float ## `OperatingProfitGrowRatio_Year(r_date, n)` 最近N年的营业利润增长率(%)(复合增长率)。 (1)取向后兼容的最新年报Q1,然后取N年前同期的年报Q2; (2)分别以Q1、Q2为指定报告期,取营业利润(合并利润分配表)得到v1、v2; (3)如果v1/v2>0,营业利润增长率(%)(复合增长率)=(Power(v1/v2,1/N)-1)\*100,否则返回0。 | 参数 | 类型 | 说明 | | -------- | -------- | -------------- | | `r_date` | datetime | 整数,报告期; | | `n` | any | 整数,最近N年 | 返回:float ## `fiIn12MonthRatio(r_date, info_id1, info_id2)` 最近12个月财务比率。 | 参数 | 类型 | 说明 | | ---------- | ------- | ---------------- | | `r_date` | Integer | 整数,报告期; | | `info_id1` | Integer | 整数,基本面id; | | `info_id2` | Integer | 整数,基本面id。 | 返回:Real ### 示例 ```tsl //指定2011年报,取万科A的最近12个月财务比率 //最近12个月净利润/最近12个月股东权益合计 o_v:=BackUpSystemParameters2(); setSysParam(pn_stock(),'SZ002423'); v:= fiIn12MonthRatio(20111231,46033,44111); return v; //结果:0.05 ``` ## `fiIn12MonthPs(r_date, info_id)` 最近12个月财务数据(每股)。 | 参数 | 类型 | 说明 | | --------- | ------- | ---------------- | | `r_date` | Integer | 整数,报告期; | | `info_id` | Integer | 整数,基本面id。 | 返回:Real ### 示例 ```tsl //指定2011年报,取万科A的最近12个月净利润(每股) o_v:=BackUpSystemParameters2(); setSysParam(pn_stock(),'SZ000002'); v:= fiIn12MonthPs(20111231,46033); return v; //结果:1.05 ``` ## `fiIn12Month(r_date, info_id)` 最近12个月InfoId所对应财务数据。 | 参数 | 类型 | 说明 | | --------- | ------- | ---------------- | | `r_date` | Integer | 整数,报告期; | | `info_id` | Integer | 整数,基本面id。 | 返回:Real ### 示例 ```tsl //指定2011年报,取万科A的最近12个月净利润 o_v:=BackUpSystemParameters2(); setSysParam(pn_stock(),'SZ000002'); v:= fiIn12Month(20111231,46033); return v; //结果:11599606211.77 ``` ## `fiIn12MonthGrowRatio(r_date, info_id)` 最近12个月财务数据同比增长率(%); | 参数 | 类型 | 说明 | | --------- | ------- | ---------------- | | `r_date` | Integer | 整数,报告期; | | `info_id` | Integer | 整数,基本面id。 | 返回:Real ### 示例 ```tsl //指定2011年报,取万科A的最近12个月净利润同比增长率(%) o_v:=BackUpSystemParameters2(); setSysParam(pn_stock(),'SZ000002'); v:= fiIn12MonthGrowRatio(20111231,46033); return v; //结果:31.22 ``` ## `fiIn12MonthPsGrowRatio(r_date, info_id)` 最近12个月财务数据(每股)同比增长率(%)。 | 参数 | 类型 | 说明 | | --------- | ------- | ---------------- | | `r_date` | Integer | 整数,报告期; | | `info_id` | Integer | 整数,基本面id。 | 返回:Real ### 示例 ```tsl //指定2011年报,取万科A的最近12个月净利润(每股)同比增长率(%) o_v:=BackUpSystemParameters2(); setSysParam(pn_stock(),'SZ000002'); v:= fiIn12MonthPsGrowRatio(20111231,46033); return v; //结果:31.22 ``` ## `cagr(v1, v2, n)` 复合增长率(%)。 | 参数 | 类型 | 说明 | | ---- | ------- | ------------ | | `v1` | Real | 实数,终值; | | `v2` | Real | 实数,初值; | | `n` | Integer | 整数,年数。 | 返回:Real ### 示例 ```tsl //已知终值为1,初值为2,年数为3年,求复合增长率 v:= cagr(1,2,3); return v; //结果:-20.63 ``` ## `annualRatio(r_date, n, info_id1, info_id2)` 提取股票的财务比率,与系统股票pn_stock()、当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | ---------- | ------- | ------------------ | | `r_date` | RDate | 报告期类型,报告期 | | `n` | Integer | 整数,最近N年 | | `info_id1` | Integer | 整数,基本面ID | | `info_id2` | Integer | 整数,基本面ID2 | 返回:Real ### 示例 ```tsl //计算SZ000002去年的营业利润/营业收入 setSysParam(pn_stock(),'SZ000002'); return annualRatio(20180630,1,46015,46002); //结果:0.21 ``` ## `annualRatioGrowRatio(r_date, n, info_id1, info_id2)` 提取股票的财务比率复合增长率(%),与系统股票pn_stock()、当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | ---------- | ------- | ------------------ | | `r_date` | RDate | 报告期类型,报告期 | | `n` | Integer | 整数,最近N年 | | `info_id1` | Integer | 整数,基本面ID1 | | `info_id2` | Integer | 整数,基本面ID2 | 返回:Real ### 示例 ```tsl //计算SZ000002去年的净利润/股东权益合计的复合增长率 setSysParam(pn_stock(),'SZ000002'); return annualRatioGrowRatio(20180630,1,46033,44111); //结果:0 ``` ## `annualValue(r_date, n, info_id)` 提取股票的财务数据,与系统股票pn_stock()、当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | --------- | ------- | ------------------ | | `r_date` | RDate | 报告期类型,报告期 | | `n` | Integer | 整数,最近N年 | | `info_id` | | 整数,基本面ID | 返回:Real ### 示例 ```tsl //计算SZ000002前年的营业利润 setSysParam(pn_stock(),'SZ000002'); return annualValue(20180630,2,46015); //结果:39021784520.23 ``` ## `annualValueGrowRatio(r_date, n, info_id)` 提取股票的财务数据复合增长率(%),与系统股票pn_stock()、当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | --------- | ------- | ------------------ | | `r_date` | RDate | 报告期类型,报告期 | | `n` | Integer | 整数,最近N年 | | `info_id` | | 整数,基本面ID | 返回:Real ### 示例 ```tsl //计算SZ000002前年营业收入的复合增长率 setSysParam(pn_stock(),'SZ000002'); return annualValueGrowRatio(20180630,2,46002); //结果:11.45081019 ``` ## `annualValuePs(r_date, n, info_id)` 提取股票的每股财务数据,与系统股票pn_stock()、当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | --------- | ------- | ------------------ | | `r_date` | RDate | 报告期类型,报告期 | | `n` | Integer | 整数,最近N年 | | `info_id` | | 整数,基本面ID | 返回:Real ### 示例 ```tsl //计算SZ000002前年的每股净利润 setSysParam(pn_stock(),'SZ000002'); return annualValuePs(20180630,2,46033); //结果:2.56815519 ``` ## `annualValuePsGrowRatio(r_date, n, info_id)` 提取股票的每股财务数据复合增长率(%),与系统股票pn_stock()、当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | --------- | ------- | ------------------ | | `r_date` | RDate | 报告期类型,报告期 | | `n` | Integer | 整数,最近N年 | | `info_id` | | 整数,基本面ID | 返回:Real ### 示例 ```tsl //计算SZ000002前年每股净利润的复合增长率 setSysParam(pn_stock(),'SZ000002'); return annualValuePsGrowRatio(20180630,2,46033); //结果:19.81 ```