天软金融分析.NET函数大全 > 金融函数 > 财务分析 > 利润分配表结构

ISStruc2_8    

简述

营业外收入/营业利润(%),与系统股票pn_stock()、当前时间pn_date()相关。
1、支持报告期、TTM、最近会计年度、单季度的提取,用法如下,
在调用模型之前,通过设置系统参数指定对应算法:
1)不设置时,默认提取指定报告期RDate的数据,见【范例1】
2)设置SetSysParam(CT_TTMData(),True),表示获取TTM数据,见【范例2】
3)设置SetSysParam(CT_YearData(),True)与setsysparam(CT_RecentYear(),N)表示获取最近N个会计年度数据,见【范例3】
4)设置SetSysParam(CT_QuarterData(),True),表示获取单季度的数据,见【范例4】
5)当同时设置多个参数时,按优先级从高到低:TTM>单季度>最近N个会计年度
2、支持通过设置当前时间获取调整前与调整后数据,见【范例5】
定义
ISStruc2_8(RDate:RDate):Real;
参数
名称类型说明
RDateinteger报告期类型,报告期
返回real实数,营业外收入/营业利润*100%
  • 算法
    营业外收入/营业利润(%) = 营业外收入 / 营业利润 * 100
    其中,
    营业外收入来源【股票.合并利润分配表】中‘营业外收入’字段,在不同算法中处理如下:
    分类 指标算法
    报告期 指定报告期的营业外收入
    TTM 营业外收入截止报告期最近12个月的数值
    最近会计年度 截止报告期最近年度报告期的营业外收入
    单季度 指定报告期单季度的营业外收入
    营业利润来源【股票.合并利润分配表】中‘营业利润’字段,在不同算法中处理如下:
    分类 指标算法
    报告期 指定报告期的营业利润
    TTM 营业利润截止报告期最近12个月的数值
    最近会计年度 截止报告期最近年度报告期的营业利润
    单季度 指定报告期单季度的营业利润
    范例

    范例01:报告期指标提取
    //2024年年报白云机场的营业外收入/营业利润(%)
    setsysparam(pn_stock(),'SH600004');
    setsysparam(pn_date(),20251022T);
    v:=ISStruc2_8(20241231);
    return v;//结果:0.516

    范例02:TTM指标提取
    //指定2024三季报,取白云机场营业外收入/营业利润(%)的TTM
    setsysparam(pn_stock(),'SH600004');
    setsysparam(pn_date(),20251022T);
    SetSysParam(CT_TTMData(),True);//计算TTM
    v:=ISStruc2_8(20240930);
    return v;//结果:0.6649

    范例03:最近会计年度指标提取
    //指定2024年一季报,取白云机场在报告期时的最近1年的会计年度报告期的营业外收入/营业利润(%)
    setsysparam(pn_stock(),'SH600004');
    setsysparam(pn_date(),20251022T);
    setsysparam(CT_YearData(),true);//计算最近会计年度
    setsysparam(CT_RecentYear(),1);//最近1年
    v:=ISStruc2_8(20240331);
    return v;//结果:1.5515

    范例04:单季度指标提取
    //指定2024三季报,取白云机场第三季度单季度的营业外收入/营业利润(%)
    setsysparam(pn_stock(),'SH600004');
    setsysparam(pn_date(),20251022T);
    SetSysParam(CT_QuarterData(),True);//计算单季度
    v:=ISStruc2_8(20240930);
    return v;//结果:0.3365

    范例05:调整前与调整后
    //取白云机场在2019年年报的营业外收入/营业利润(%)调整前与调整后
    //20210430公布2020年年报对2019年年报中的营业利润数据进行了调整
    setsysparam(pn_stock(),'SH600004');
    RDate:=20191231;
    //调整前:设置指定日早于调整后公布日
    setsysparam(pn_date(),20200630T);
    v1:=ISStruc2_8(RDate);
    //调整后:设置指定日晚于调整后公布日
    setsysparam(pn_date(),20210630T);
    v2:=ISStruc2_8(RDate);
    return array(v1,v2);//结果:array(1.1092,1.1027),由于调整前与调整后参与计算的数据有变动,因此结果有差异
相关