FAQ > 金融建模 > 建模问题 > 报告期相关

Q:报告期推导函数汇总    

  • A:在天软中,提取与报告期相关的财务数据,一般需要指定报告期,而报告期与选股日之间又存在一个公布日的关系,所以,我们平台公用函数中,主要提供了,与股票、公布日相关的报告期以及向前推导的相关函数,整理如下(当前页面整理的是公用函数,各函数定义及相关说明请查看帮助文档):
    前提说明:
    股票公布日相关,从指定日前已公布的该股票的财务数据中提取报告期。参数一般有指定日。
    股票相关,从该股票的财务数据中提取报告期。参数一般是报告期,而不是指定日,所以不考虑公布日。
    与股票、公布日无关,即表示简单按报告期进行推移,不考虑股票财务数据是否存在。
    按指定日得到最新报告期(股票公布日相关):
    1、股票指定日最新报告期: NewReportDateOfEndT2(EndT)
    2、股票指定日最新年度报告期: NewReportDateOfYear2(EndT)
    3、基金指定日最新报告期:NewQuarterlyReportDateOfEndT_Fund(endt)

    按指定日得到最新报告期(按股票存在的报告期,不考虑公布日):
    注:该类函数的第一个参数是整型日期。另,该函数是向后兼容的,不推荐使用。
    1、指定日最新报告期:NewReportDateOfEndT(RDate,InfoId)
    2、指定日最新年度报告期:NewReportDateOfYear(RDate,InfoId)

    向前推导报告期(与股票、公布日无关):
    同比报告期(前):PreviousReportDate(RDate)
    同比报告期(后):PriorReportDate(RDate)
    前N个会计年度报告期:PreviuosReportDateList(EndT,N)
    按照季报标准的前N个报告期列表:PreviousRDateList_II(RDate,N)
    按照季报标准的前第N(取值:1,2,3,4)个报告期:PreviousReportDateOfQuarter(RDate,N)
    按季报或按年报标准的前第N个报告期:PreviousReportDateEx(RDate,N,type)
    环比报告期(前):HBReportDate(RDate)

    向前推导报告期(与股票相关,取主要财务指标表中的报告期):
    指定报告期前第N个报告期:PreviousReportDate_II(ReportDate,N)

    向后推导报告期:请参考:FAQ:Q:不考虑股票、不考虑公布日,如何得到指定报告期的后一个报告期,指定日最近的报告期等

    报告期列表:
    按指定开始与截止年份取指定类型(年报,中报等)报告期列表(与股票、公布日无关):
    RDateListBetweenYear(FromY,EndY,RDateType)
    通过表字段ID号得到该字段所在表的所有报告期序列(与股票有关):
    ReportHist(infoID)

    其它报告期相关:
    判断指定报告期的类型:
    ReportDateType(RDate):1、一季报;2、中报;3、三季报;4、年报;-1、未知
    用在宏观同比报告期,如:2005.2.28的同比报告期是2004.2.29
    同比报告期(宏观):PreviousReportDateOfHG(RDate)

    范例:

        //取离指定日较新上市的股票作为范例,显示与股票相关与不相关之间推移到报告期的差异
        setsysparam(pn_stock(),'SZ300781');
        Endt:=20190605T;
        //-指定日最新报告期(按股票公布日)
        RDate:=NewReportDateOfEndT2(Endt);
        //-最新报告期类型
        RType:=ReportDateType(RDate);
        //-指定日最新年报(按股票公布日)
        YRdate:=NewReportDateOfYear2(EndT);
        //-同比报告期
        TBRate:=PreviousReportDate(RDate);
        //-财务报表中指定报告期的上个报告期
        _Pre2:=PreviousReportDate_II(RDate,2);
        //-前4个报告期
        Pre4List:=PreviousRDateList_II(RDate,4);
        //-环比报告期
        HBRDate:=HBReportDate(RDate);
        //-向前推2个报告期
        Pre2:=PreviousReportDateOfQuarter(RDate,2);
        //-主要财务指标已公布报告期序列
        RDateList:=ReportHist(42007);
        re:=array();
        re[0,'当前时间']:=datetostr(Endt);
        re[0,'最新报告期(股票公告日相关)']:=RDate;
        re[0,'最新年报(股票公告日相关)']:=YRdate;
        re[0,Rdate$'(报告期类型)']:=RType;
        re[0,YRdate$'(报告期类型)']:=ReportDateType(YRdate);
        re[0,'同比报告期(股票公告日无关)']:=TBRate;
        re[0,'环比报告期(股票公告日无关)']:=HBRDate;
        re[0,'最新四个报告期(股票公告日无关)']:=array2str(Pre4List,';');
        re[0,'上上个报告期@股票相关']:=_Pre2;
        re[0,'上上个报告期@股票公告日无关']:=Pre2;
        re[0,'所有报告期@股票相关']:=array2str(RDateList,';');
        return re;
    //返回