尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
一、Python量化交易入门:用Pandas做数据清洗与复权处理
一、这篇解决什么问题做量化研究,最枯燥、最不能省的一步是数据清洗。股票分红、送股、配股会让价格出现向下的跳空,看起来像暴跌,实际只是除权。停牌日数据缺失,直接参与计算会污染因子。异常值不处理,模型会学到错误规律。本文把 A 股数据最常见的四类问题——复权、停牌、缺失值、异常值——的处理方法整理清楚,每条给出代码实现。读完你可以得到:一份清洗干净的日频数据一份数据质量报告一个可复用的清洗脚本二、复权:最重要的一件事2.1 什么是复权股票分红、送股、配股后,股价会向下调整。如果不处理,价格曲线会出现一个向下的跳空,看起来像暴跌,实际只是除权。举个例子:某股票前一日收盘 10 元,每 10 股派 5 元现金。除息日理论开盘价变成 9.5 元。如果你用不复权数据算收益率,会得到 -5% 的假信号。2.2 三种复权方式类型含义适用场景不复权原始成交价看真实成交价格、算手续费前复权以当前价格为基准,调整历史价格回测首选后复权以上市首日为基准,调整后续价格长期收益分析为什么回测用前复权:前复权保持了最新价格和真实价格一致,同时消除了除权跳空,收益率计算连续。2.3 代码示例importakshareasak# 前复权df_qfq=ak.stock_zh_a_hist(symbol="600519",period="daily",start_date="20200101",end_date="20241231",adjust="qfq")# 后复权df_hfq=ak.stock_zh_a_hist(symbol="600519",period="daily",start_date="20200101",end_date="20241231",adjust="hfq")# 不复权df_raw=ak.stock_zh_a_hist(symbol="600519",period="daily",start_date="20200101",end_date="20241231",adjust="")2.4 复权的坑不同数据源的复权算法可能不同,同一只股票在两个平台的前复权价格可能有细微差异。回测时固定用一个数据源。前复权价格会随最新价格变化,今天下载的前复权数据和一个月后下载的,历史价格可能不一样。所以要么每次重新下载全量,要么存原始数据自己算复权。成交量不需要复权,只有价格需要。三、停牌处理3.1 停牌的表现停牌期间,数据源可能:直接没有该日期的记录有记录但成交量为 0有记录且价格等于停牌前价格3.2 处理原则回测时:停牌日不能交易,买入信号遇到停牌应顺延到复牌日停牌日不应参与因子计算(否则 rolling 窗口会被污染)持仓股票停牌期间,仓位保持不变# 标记停牌:成交量为0df['is_suspended']=(df['volume']==0)# 停牌日不生成信号df.loc[df['is_suspended'],'signal']=np.nan df['signal']=df['signal'].ffill()3.3 长期停牌的处理如果一只股票停牌超过一定天数(比如 20 个交易日),建议直接从股票池剔除,因为复牌后往往有大幅补涨或补跌,会干扰策略。四、缺失值处理4.1 缺失值的来源新股上市初期,均线等指标算不出来停牌日数据源本身的问题多数据源合并时的对齐问题4.2 处理方式对比
RELATED

相关推荐

Portabase迁移工具深度解析:跨项目无缝迁移数据库备份的完整流程

Portabase迁移工具深度解析:跨项目无缝迁移数据库备份的完整流程

【免费下载链接】portabase Portabase - Database backup & restore tool for PostgreSQL, MySQL, MsSQL, MariaDB, Firebird SQL, SQLite, MongoDB, Redis and Docker Volume 项目地址: https://gitcode.com/gh_mirrors/por/portabase 点击查看 免费下载 Por…

📅 2026/10/11 16:21:44
风力机叶片缺陷检测数据集:3687张实拍图+VOC/YOLO双格式

风力机叶片缺陷检测数据集:3687张实拍图+VOC/YOLO双格式

简介:本资源是面向计算机视觉初学者与风电智能运维研究者的风力机缺陷检测专用数据集,聚焦于叶片、塔筒等关键部件的表面损伤识别任务,适用于目标检测模型训练与算法验证。压缩包共2000个文件,主体为3687张高质量JPG图像及配套的1…

📅 2026/10/11 16:16:44
ob10实战:从TNS配置到批量巡检的Oracle连接工具指南

ob10实战:从TNS配置到批量巡检的Oracle连接工具指南

简介:这款轻量级Oracle连接与管理工具采用免安装压缩包形式,解压即可运行,适合数据库开发、测试和运维人员在日常工作中快速连接数据库、执行查询以及完成数据导入导出。工具整体界面比较直观,操作逻辑贴近常见数据库客户端&#…

📅 2026/10/11 16:16:44
MORE NEWS

更多资讯

📰

从源码构建HaleHound-CYD:PlatformIO多环境编译、OTA升级与Python版本陷阱完整指南

【免费下载链接】HaleHound-CYD ESP32-DIV HaleHound Edition for Cheap Yellow Display - Multi-protocol offensive security toolkit 项目地址: https://gitcode.com/gh_mirrors/ha/HaleHound-CYD 点击查看 免费下载 HaleHound-CYD 是一款运行在 ESP32 Cheap Ye…

📰

Agent基础——HTTP API

假设现在我们的Agent需要向工厂服务器查询设备的数据,这时候可以通过工厂服务器提供的接口进行查询,大致过程如下图所示:1.了解HTTP API首先,我们要先了解什么是HTTP API?我们可以简单的将其理解为:程序通过…

📰

基于YOLOv5的猪脸目标检测实战:数据采集、模型训练到TensorRT部署

简介:基于YOLOv5的猪脸目标检测项目以PyTorch为框架,面向畜牧智能化管理场景,可服务于猪只健康监测、个体识别与行为分析,适配有一定深度学习基础并希望落地目标检测应用的开发者。压缩包共236个文件,大小约70.75MB&am…

📰

Python利用支持向量机SVM进行时间序列预测:数据+源码实战

简介:这份资源面向希望用Python实现时间序列预测的开发者与数据分析学习者,聚焦支持向量机(SVM)在回归预测场景中的落地应用。包内共2个文件,包含1个py源码与1个xlsx数据文件,压缩包约34KB,源码…

📰

AI Toolbox Skills 技能管理完整教程:从 Git 安装到按工具同步,一键搞定

【免费下载链接】ai-toolbox Personal AI Toolbox 项目地址: https://gitcode.com/gh_mirrors/aitoolbo/ai-toolbox 点击查看 免费下载 AI Toolbox 是一款跨平台个人 AI 工具箱,其中的 Skills 技能管理模块可以帮你把 AI 编程技能从 Git 仓库或本地目录…

📰

Postgres主从流复制+pgpool高可用方案:从WAL原理到Failover实操

简介:一份针对 PostgreSQL 高可用架构的完整方案文档,面向数据库运维与架构设计工程师,重点解决基于 WAL 流复制搭建主从库、实时数据同步,以及结合 pgpool-II 实现连接池管理、读写分离与故障自动切换的问题。文档详细介绍了同步…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬