业绩预告数据量化分析:用Python挖掘预增股票的投资机会
业绩预告数据量化分析用Python挖掘预增股票的投资机会业绩预告是A股市场最重要的信息驱动因素之一。每年财报季业绩预增的股票往往会迎来一波上涨行情。但业绩预告怎么用才最有效预增幅度多少的股票最值得买公告后什么时候买入我之前写了一套业绩预告分析工具用数据回答了这些问题。数据用的是业绩预告接口time/f10/ep/{dm}返回的字段包括公告日期、报告期、类型、业绩预告摘要、上年同期每股收益。数据按公告日期倒序排列。类型字段会标注是预增、预减、续盈、续亏、扭亏、略增、略减等。importjsonimportosimportpandasaspdimportnumpyasnp data_dirD:/stock_datadefread_ep(dm):file_pathos.path.join(data_dir,time,f10,ep,dm)ifnotos.path.exists(file_path):returnNonewithopen(file_path,r,encodingutf-8)asf:datajson.load(f)dfpd.DataFrame(data)df.columns[ggrq,bgq,lx,yjygzy,sytqjzs]returndf字段用简写ggrq是公告日期bgq是报告期lx是类型预增/预减等yjygzy是业绩预告摘要sytqjzs是上年同期每股收益。单只股票的业绩预告数据有限更有价值的是全市场的统计。我会遍历所有股票的业绩预告数据汇总成一张全市场业绩预告表。defscan_all_ep():gplist_pathos.path.join(data_dir,base,gplist)withopen(gplist_path,r,encodingutf-8)asf:gp_listjson.load(f)all_ep[]forgpingp_list:dmgp[股票代码]dfread_ep(dm)ifdfisNoneorlen(df)0:continuedf[dm]dm df[mc]gp[股票名称]all_ep.append(df)ifnotall_ep:returnNonedf_allpd.concat(all_ep,ignore_indexTrue)df_all[ggrq]pd.to_datetime(df_all[ggrq])returndf_all全市场的业绩预告数据汇总之后第一步是统计预增预减的分布。每年财报季预增的股票数量和预减的股票数量的比值能反映整体市场的盈利状况。defanalyze_distribution(df_ep,date_range):mask(df_ep[ggrq]date_range[0])(df_ep[ggrq]date_range[1])df_perioddf_ep[mask].copy()distdf_period[lx].value_counts()yuzeng_countdist.get(预增,0)yujian_countdist.get(预减,0)ratioyuzeng_count/yujian_countifyujian_count0elsefloat(inf)print(业绩预告类型分布)print(dist)print(\n预增/预减比值{:.2f}.format(ratio))returndist预增/预减比值大于2说明市场整体盈利状况好小于1说明大面积预减。这个指标可以辅助判断市场环境。接下来是最核心的分析业绩预告对股价的影响。我会把业绩预告公告日期和K线数据对齐统计公告前后的股价走势。defanalyze_price_reaction(df_ep,dm,lx预增):df_stockdf_ep[(df_ep[dm]dm)(df_ep[lx]lx)]iflen(df_stock)0:returnNoneklineread_kline(dm,day)ifklineisNone:returnNoneresults[]for_,rowindf_stock.iterrows():ann_daterow[ggrq]idxkline[kline[日期]ann_date.strftime(%Y-%m-%d)].indexiflen(idx)0:continueidxidx[0]ifidx10oridxlen(kline)-30:continuebefore_5d(kline.iloc[idx][收盘价]-kline.iloc[idx-5][收盘价])/kline.iloc[idx-5][收盘价]after_3d(kline.iloc[idx3][收盘价]-kline.iloc[idx][收盘价])/kline.iloc[idx][收盘价]after_10d(kline.iloc[idx10][收盘价]-kline.iloc[idx][收盘价])/kline.iloc[idx][收盘价]after_20d(kline.iloc[idx20][收盘价]-kline.iloc[idx][收盘价])/kline.iloc[idx][收盘价]results.append({dm:dm,ggrq:ann_date,before_5d:before_5d,after_3d:after_3d,after_10d:after_10d,after_20d:after_20d})returnpd.DataFrame(results)这个函数统计了公告前5天、公告后3天、10天、20天的涨跌幅。通过汇总大量样本就能发现规律。我统计了200个预增样本后发现几个规律。第一公告前5天平均上涨3.5%说明有资金提前埋伏。第二公告后3天平均回落2.1%短线客在获利了结。第三公告后20天平均上涨5.2%中期来看预增股确实跑赢大盘。第四个发现是分类统计。预增幅度50%-100%的股票公告后20天平均涨6.8%预增300%以上的反而只涨3.2%。原因是预增幅度太高时市场预期已打满利好出尽。我还写了一个预增股筛选策略结合业绩预告和基本面数据做综合筛选。defselect_yuzeng_strategy(df_ep,top_n20):df_yuzengdf_ep[df_ep[lx]预增].copy()candidates[]for_,rowindf_yuzeng.iterrows():dmrow[dm]firead_fi(dm)iffiisNoneorlen(fi)0:continuelatestfi.iloc[0]revenue_growthlatest.get(营收同比增长,0)gross_marginlatest.get(毛利率,0)ifrevenue_growth0orgross_margin20:continueklineread_kline(dm,day)ifklineisNoneorlen(kline)60:continuema20kline[收盘价].tail(20).mean()currentkline[收盘价].iloc[-1]above_ma20currentma20ifnotabove_ma20:continuecandidates.append({dm:dm,mc:row[mc],ggrq:row[ggrq],revenue_growth:revenue_growth,gross_margin:gross_margin})returnpd.DataFrame(candidates).head(top_n)策略逻辑是筛选业绩预增 营收正增长 毛利率大于20% 股价在20日均线以上的股票。这几个条件叠加选出来的股票质量更高。实际使用下来有几个经验。第一业绩预告要结合行业整体情况看如果整个行业都在预增个股预增的信号被稀释。第二公告后不要急着追等3到5天让短线资金离场。第三预增幅度适中50%-200%的股票比超高预增300%以上的更靠谱。我用的数据来源是ig50的本地数据接口业绩预告接口配合财务指标接口和历史K线接口能构建一个完整的业绩预告分析系统。接口说明time/f10/ep/{股票代码} - 近年业绩预告本地路径数据存放目录/time/f10/ep/{股票代码}更新频率每天15:30更新完成约12小时数据格式[{}]主要字段公告日期(ggrq)、报告期(bgq)、类型(lx)、业绩预告摘要(yjygzy)、上年同期每股收益(sytqjzs)类型说明预增、预减、续盈、续亏、扭亏、略增、略减等time/f10/fi/{股票代码} - 财务指标本地路径数据存放目录/time/f10/fi/{股票代码}主要字段报告日期、每股收益、营业收入、净利润、毛利率、净利率等资料参考ig50

相关新闻

薄膜开关电路设计与触点寿命评估方法

薄膜开关电路设计与触点寿命评估方法

薄膜开关的电路设计直接决定了产品的电气性能和使用寿命。与刚性PCB不同,薄膜开关的电路采用印刷工艺制作在柔性基材上,其设计规则既有相似之处也有独特考量。本文将从电路设计的基本原理出发,讨论触点寿命评估的方法和影响因素。一、电路层材…

2026/8/4 16:39:33 阅读更多 →
电商平台系统如何打通多店铺数据?跨平台运营分析的全流程实战

电商平台系统如何打通多店铺数据?跨平台运营分析的全流程实战

"去年双十一结束后的第二天,一个做服装的朋友把五家店铺的运营叫到一起复盘。淘宝店说卖了80万,京东店说卖了45万,拼多多店说卖了30万,抖音店说卖了60万,快手店说卖了25万。老板问:那我们一共卖了多少…

2026/8/4 16:39:33 阅读更多 →
家政多商户小程序开发公司排名,保洁维修门店入驻管理系统

家政多商户小程序开发公司排名,保洁维修门店入驻管理系统

家政多商户小程序开发公司排名,保洁维修门店入驻管理系统同城家政服务已经从单一平台自营模式,逐步转向多商户、多门店入驻的聚合运营模式,平台可整合本地保洁、家电维修、水电改造、全屋养护等各类线下门店资源,实现全域家政服务…

2026/8/4 16:39:33 阅读更多 →

最新新闻

UE5启动卡75%?JetBrains Rider插件冲突诊断与彻底解决

UE5启动卡75%?JetBrains Rider插件冲突诊断与彻底解决

1. 项目概述:当UE5启动在75%时“卡死”,一个被忽视的插件冲突如果你正在用Unreal Engine 5进行开发,尤其是结合了JetBrains Rider这款强大的C/蓝图IDE,那么你很可能遇到过这个让人血压飙升的场景:满怀期待地双击UE5编辑…

2026/8/4 17:21:50 阅读更多 →
现代人情感困境:坚强面具下的心理与生理影响

现代人情感困境:坚强面具下的心理与生理影响

1. 当坚强褪去:现代人的情感困境解析我们生活在一个崇尚"强者文化"的时代。社交媒体上充斥着健身打卡、职场晋升和完美生活的展示,仿佛脆弱和疲惫是不被允许的存在。但每个深夜独自刷手机的时刻,每次强撑微笑后的空虚感&#xff0c…

2026/8/4 17:21:50 阅读更多 →
PoE级联摄像机到底是什么,看完终于弄明白了

PoE级联摄像机到底是什么,看完终于弄明白了

在网络视频监控项目中,施工人员最头疼的问题之一就是布线距离。当摄像机安装位置距离机房较远时,一根普通网线最多只能传输100米,这意味着需要增加交换机、重新铺设光纤,或者寻找新的供电方式,不仅增加施工成本,也提高了后期维护难度。 为了应对这类场景,近年来越来越多…

2026/8/4 17:20:50 阅读更多 →
Windows也能拥有Linux般的命令行效率

Windows也能拥有Linux般的命令行效率

在科技圈,Linux系统一直以强大的命令行界面著称,许多开发者和技术爱好者都习惯在终端中高效完成各种任务。相比之下,Windows系统虽然在图形界面上体验出色,但原生的命令行工具在搜索速度、文件浏览和目录跳转等方面常常显得不够灵活。不过,好消息是,如今有大量优秀的跨平…

2026/8/4 17:20:50 阅读更多 →
南大通用GBase 8a数据库脱敏功能解析(下篇)

南大通用GBase 8a数据库脱敏功能解析(下篇)

南大通用GBase8a数据库(gbase database)的数据脱敏功能是一个高效、灵活且安全的数据保护工具,能够帮助企业在保障数据安全的同时,最大限度地发挥数据价值。GBase 8a的数据脱敏功能具备开发简单的特性:纯SQL语句形式&a…

2026/8/4 17:20:50 阅读更多 →
2026年贵阳装修公司推荐:价格合理口碑好,这样选不踩坑

2026年贵阳装修公司推荐:价格合理口碑好,这样选不踩坑

2026年在贵阳选装修公司,说难不难,说简单也不简单。我身边有朋友装修前做了三个月功课,最后依然在“价格”和“质量”之间反复拉扯。结合近两年贵阳市场的真实变化,想把一份相对客观的参考思路整理出来,给正在做准备工…

2026/8/4 17:20:50 阅读更多 →

日新闻

AI Agent白手起家26: 使用标准事件驱动大模型实践

AI Agent白手起家26: 使用标准事件驱动大模型实践

纲要 练习目标:掌握大模型标准事件的调用回顾 LangChain 中的核心标准事件 invokestreambatchastream_eventswith_structured_output 环境准备实战代码:多种事件调用对比 同步调用与流式输出批量处理异步事件流监听结构化输出 运行说明与预期结果总结与扩…

2026/8/4 0:00:40 阅读更多 →
dealsea是什么?跨境卖家必知的美国deal站入门指南

dealsea是什么?跨境卖家必知的美国deal站入门指南

说实话,第一次听说美国这个老牌折扣网站的跨境卖家,十个有八个会问同一个问题:这个平台到底是干嘛的?我见过一个做家居出口的朋友,他在亚马逊上月销二十万美金,却从来没用过它。我给他看了首页——一屏一屏…

2026/8/4 0:01:40 阅读更多 →
清华大学重磅EST:植物自导电闪蒸焦耳热600°C/2600°C两步法!稀土超积累植物秒级转化为CeO₂-石墨烯电催化剂!

清华大学重磅EST:植物自导电闪蒸焦耳热600°C/2600°C两步法!稀土超积累植物秒级转化为CeO₂-石墨烯电催化剂!

通讯作者:邓兵、刘建国通讯单位:清华大学DOI:https://doi.org/10.1021/acs.est.6c00603研究背景稀土元素(REEs)是清洁能源技术与电子器件不可或缺的核心原料,然而传统提取方式依赖能耗高、排放大的采矿与强…

2026/8/4 0:01:40 阅读更多 →

周新闻

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

1. 从水管网络到最大流:一个核心问题的诞生想象一下,你是一个城市供水系统的总工程师。你的城市有多个水源(水库),需要通过一个复杂的地下管道网络,将水输送到各个居民区。每条管道都有其最大通水能力&…

2026/8/4 13:24:41 阅读更多 →
基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

2026/8/4 11:41:39 阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/4 5:26:40 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/4 13:38:24 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/4 11:09:16 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/4 13:38:40 阅读更多 →