注:Python程序需深证信API的秘钥,注册缴费后得到,目前收费标准是0.1元/次。
1上市公司财务数据提取程序Matlab使用方法
登录上市公司官网或巨潮网(http://www.cninfo.com.cn/new/index)下载工业企业年度财务报表,一般至少需要4个年度的详细财务数据和10年左右的主要财务数据。
使用Adobe Acrobat打开年报,提取财务报表所在页,另存为Excel文件*.xlsx,格式如“财务报表数据提取_实业公司_data2020.xlsx”。
图1 财务报表原始数据格式
将财务报表原始数据Excel文件和“财务报表数据提取_实业公司_结果_template2024.xlsx”放在Matlab工作路径;设置“财务报表数据提取_实业公司合并财务报表的两年数据_template2024.txt”的Matlab工作路径、Excel文件名和数据表名,复制代码到Matlab命令行窗口运行,也可以将其后缀改为.m后直接运行。财务报表数据写入“财务报表数据提取_实业公司_结果_template2024.xlsx”一般同时写入两年数据,读写一次需要90秒左右(取决于硬件配置)。
图2 “财务报表数据提取_实业公司_结果_template2024.xlsx”模板
图3 “财务报表数据提取_实业公司合并财务报表的两年数据_template2024.txt”代码
图4 “财务报表数据提取_实业公司_结果_template2024.xlsx”数据写入结果
将写入“财务报表数据提取_实业公司_结果_template2024.xlsx”的数据复制到“财务分析及估值_实业公司_Template2024.xlsx”(两个表已设置相同文字格式),可以进行基本的财务数据分析,财务分析的计算公式来源信息隐藏在A列,左侧是合并财务数据,右侧是母公司财务数据。股价年均值可以运行Matlab代码“priceaverage solution template2024.txt”得到,运行时调用函数文件“price_average_solution.m”;股价每天收盘数据格式如文件“price_average_solution_data_template2020.xlsx”所示,可以从券商客户端下载。一般企业使用FCFE法估值,数据表“FCFE3”中营业收入和净利润数据模板考虑2010~2023年年度数据,主要估值指标有曲线图显示,不同企业的详细指标如产品产能、销量、单价等可以利用模板改写。
2上市公司财务数据提取程序Python使用方法
使用Matlab读写Excel数据会有个别数据格式错误不能识别,且财务数据整理一般需要超过10分钟时间,使用Python程序访问深证信API接口提取财务数据速度快、无数据格式识别问题,但需付费购买。API接口提供的数据内容和格式可参考“cninfo_webapi深证信数据_沪深北港等交易所上市公司财务数据API接口参数及说明2024.docx”或官方网站“http://webapi.cninfo.com.cn/#/apiDoc”。
上海交易所、深圳交易所和北京交易所上市公司的财务数据提取运行“cninfo_webapi_data_access_hsb_listed_non_financial_writeExcel_template2024.py”,需深证信API接口的客户ID和秘钥,运行结果保存在“data_accessed1.xlsx”,防止失误损坏模板文件“财务分析及估值_实业公司_Template2024.xlsx”的数据或字体格式。数据提取结果包括所有财务报表和现金流量表补充数据,与使用Matlab读写Excel数据的各项一致。最后将“data_accessed1.xlsx”数据复制到“财务分析及估值_实业公司_Template2024.xlsx”进行基本的财务数据分析。
香港联交所上市公司的财务数据提取运行“cninfo_webapi_data_access_hk_listed_non_financial_writeExcel_template2024.py”,目前香港联交所上市公司的财务数据能提取的很少,只有少量主要指标,使用意义不大。
3注意事项
金融公司财务数据格式与工业企业不同,另有模板和程序,但金融公司财务数据Excel处理工作量很大,深证信API接口有时访问失败(计费问题)。
python从api接口获取数据效率非常高,从字典型数据列表中筛选指标,无需使用正则表达式筛选。
从深证信API接口获取的工业企业财务数据须注意写入“其它”的数字是什么数据,可能需要查看财务报表附注。
点上面附件图标,上传附件后可设置现金定价