返回列表 发布新帖

第六期:《get\_financial\_data:基本面因子的挖掘与清洗全流程》

38 0
发表于 前天 16:06 | 显示全部楼层 阅读模式

第六期:《get_financial_data:基本面因子的挖掘与清洗全流程》

第六期:《get_financial_data:基本面因子的挖掘与清洗全流程》

第六期专栏内容:《get_financial_data:基本面因子的挖掘与清洗全流程》

本期定位:财务数据是基本面量化的"第一性原理",但90%的人因"未来函数"和"字段混乱"导致策略失效。本期将手把手打通从原始财报到可用因子的全链路。


一、开篇:为什么90%的基本面策略回测是假的?

痛点引入:某用户使用"ROE>20%选股"策略,回测年化收益35%,实盘3个月亏损15%。问题出在——回测时用了2025年Q3的ROE数据在2025年Q1交易,这就是典型的未来函数

核心认知:财务数据的价值不在于"数字",而在于 "时间点" 。知道茅台2025年净利润500亿没用,关键要在2025年4月年报披露那一刻才知道。


二、xtquant财务数据体系解剖

数据覆盖范围

  • 三大报表:资产负债表、利润表、现金流量表(2007年至今完整)
  • 关键指标:2600+字段,涵盖工行、建行、招行、中石化等全市场
  • 更新频率:财报披露日当晚22:00自动更新

数据结构

三、核心函数:get_financial_data 5个黄金参数

函数原型

参数含金量解析

  1. field_list:字段必须用表名.字段名格式,这是防错关键。常见映射:
  • 总股本:CAPITALSTRUCTURE.total_capital
  • 净利润:ASHAREINCOME.net_profit_incl_min_int_inc(归母净利润)
  • 经营现金流:ASHARECASHFLOW.net_cash_flows_oper_act
  1. report_type='announce_time'防未来函数的唯一手段
  • 'announce_time':按公告日期取数,确保回测时不会用到未披露数据
  • 'report_time':按报告期取数,回测时若用Q3数据在Q1交易,就是未来函数!

实战对比

四、实战:PEG因子计算全流程(含数据清洗)

策略逻辑:PEG=PE/(盈利增速×100),PEG<1视为低估

步骤1:获取PE和净利润增速

步骤2:数据清洗——处理缺失值与异常值

步骤3:计算PEG因子

五、高级技巧:跨表查询与数据缓存

技巧1:跨表查询ROE ROE = 净利润 / 净资产,需跨利润表和资产负债表:

技巧2:数据缓存(提升回测速度100倍) 财务数据调用一次耗时2-3秒,频繁调用导致回测卡死。需缓存到本地:

六、四大陷阱与解决方案

七、下期预告

下期预告:第七期《策略编写语法与结构:5行代码看懂事件驱动核心框架》,将讲解 on_baron_tick回调函数的生命周期,以及如何管理策略全局变量。

一句话总结:财务数据是价值投资者的"圣经",但在QMT中, "时间点"比"数值"更重要 。掌握 get_financial_dataannounce_time参数,等于掌握了避免未来函数的免死金牌。这是基本面量化与技术分析的分水岭,也是回测与实盘结果一致性的基石

彩蛋及福利:

1.QMT开通流程

(1)开户➕入金10万以上

(2)提供测试账号、安装配置流程、量化会员资料。

2.VIP服务

3.VIP福利

惊喜佣金

添加量化讨论群

量化工具全套资料库

提供服务器托管模式:ptrade策略+ldp极速柜台+vip定向服务器(限50人)

回复

您需要登录后才可以回帖 登录 | 立即注册

主题

19

回帖

5

积分

0

客服专线

400-080-8112

用思考的速度交易,用真诚的态度合作,我们是认真的!
  • 关注公众号
  • 添加微信客服
Copyright © 2001-2025 迅投QMT社区 版权所有 All Rights Reserved. 京ICP备2025122616号-3
关灯 快速发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表