量化交易系列【4】高频函数:rolling与expanding用法

简介: 量化交易系列【4】高频函数:rolling与expanding用法

示例中使用的‘000001.XSHE.csv’文件,已上传至csdn资源中,可直接下载


import pandas as pd


# 读取CSV文件
df = pd.read_csv('./000001.XSHE.csv')
df = df[:10]  # 取前10行数据
df

image.png

rolling函数:计算移动平均线MA


# 5日均线的计算:即最近5天收盘价的均值
# 使用rolling函数进行计算:rolling(n)即为取最近n行数据的意思,只计算这n行数据。后面可以接各类计算函数,例如max、min、std等
df['MA_5'] = df['close'].rolling(5).mean()
df[['date','close','MA_5']]

image.png


由于前4天不满足5天的条件,因此,前4天的MA_5值为空


# 计算近5天的最大值
df['max_5'] = df['close'].rolling(5).max()
df[['date','close','max_5']]


image.png


同样可以使用df[‘close’].rolling(5).min()计算5日最小值df[‘close’].rolling(5).std()计算标准差


expanding函数


作用:expanding()函数计算从一开始至今的某些数据值,实现累计计算,即不断扩展;类似于cumsum()函数的累加操作。


那如何将MA_5前4天的数据使用前几天的数据均值进行补充呢?


如第二天收盘价 = 前2天收盘价均值, 第三天收盘价 = 前3天收盘价均值…


此时就需要用到expanding函数:可以用于计算每天的从一开始至今的均值。


df['收盘价_至今均值'] = df['close'].expanding().mean()
df[['date','close','MA_5','收盘价_至今均值']]


image.png


# 同样的,expanding函数后面可以接各类计算函数,计算从头至今的各类数据。
df['close'].expanding().max()
df['close'].expanding().min()
df['close'].expanding().std()
相关文章
|
2月前
|
Python
Python量化炒股的获取数据函数—get_security_info()
Python量化炒股的获取数据函数—get_security_info()
|
2月前
|
存储 数据处理 Kotlin
Kotlin Flow背后的神秘力量:背压、缓冲与合并策略的终极揭秘!
【9月更文挑战第13天】Kotlin Flow 是 Kotlin 协程库中处理异步数据流的强大工具,本文通过对比传统方法,深入探讨 Flow 的背压、缓冲及合并策略。背压通过 `buffer` 函数控制生产者和消费者的速率,避免过载;缓冲则允许数据暂存,使消费者按需消费;合并策略如 `merge`、`combine` 和 `zip` 则帮助处理多数据源的整合。通过这些功能,Flow 能更高效地应对复杂数据处理场景。
92 2
|
4月前
|
API 运维
开发与运维函数问题之mapConcurrent实现与Pekko-Stream的mapAsync相似之处如何解决
开发与运维函数问题之mapConcurrent实现与Pekko-Stream的mapAsync相似之处如何解决
26 0
|
4月前
|
运维 中间件 数据库
浅析JAVA日志中的性能实践与原理解释问题之元信息打印会导致性能急剧下降问题如何解决
浅析JAVA日志中的性能实践与原理解释问题之元信息打印会导致性能急剧下降问题如何解决
|
6月前
|
机器学习/深度学习 人工智能 PyTorch
人工智能平台PAI 操作报错合集之机器学习PAI把SequenceFeature直接送入BST模块,但发现未配置sequence_combiner会报错,如何解决
阿里云人工智能平台PAI (Platform for Artificial Intelligence) 是阿里云推出的一套全面、易用的机器学习和深度学习平台,旨在帮助企业、开发者和数据科学家快速构建、训练、部署和管理人工智能模型。在使用阿里云人工智能平台PAI进行操作时,可能会遇到各种类型的错误。以下列举了一些常见的报错情况及其可能的原因和解决方法。
|
6月前
|
机器学习/深度学习 SQL 存储
人工智能平台PAI 操作报错合集之机器学习PAI训练的时候logging.info('Train and evaluate finish')后, 总会报出来一个错如何解决
阿里云人工智能平台PAI (Platform for Artificial Intelligence) 是阿里云推出的一套全面、易用的机器学习和深度学习平台,旨在帮助企业、开发者和数据科学家快速构建、训练、部署和管理人工智能模型。在使用阿里云人工智能平台PAI进行操作时,可能会遇到各种类型的错误。以下列举了一些常见的报错情况及其可能的原因和解决方法。
|
Linux 测试技术 数据处理
R语言丨根据VCF文件设计引物,自动识别两样本差异SNP位点,调用samtools获取上下游参考序列,快速得到引物序列
R语言丨根据VCF文件设计引物,自动识别两样本差异SNP位点,调用samtools获取上下游参考序列,快速得到引物序列
|
开发者
【解决方案 二十九】如何高效优雅的在word写公式
【解决方案 二十九】如何高效优雅的在word写公式
83 0
|
人工智能 数据挖掘 API
马丁策略量化交易系统开发(逻辑特性)| 马丁策略量化交易源码参考
马丁策略,全名马丁格尔策略,倍投原理,是在亏损之后进行加倍下注,直到连本带利赚回本金为止。随着下注的连续失败,追加的筹码也在成倍增加,只要赢一次,就可以赢回所有的本金和利润,简单来说马丁策略就是输掉后加倍投资的交易策略。量化是在用户授权交易所账户API的前提下,选择交易策略和主流货币,启用AI智能数据分析引擎帮助用户自动匹配“大概率”交易策略,根据数据模型自动分析市场关键点,通过毫秒级闪电交易,向交易所发出买入卖出指令,大幅提高账户交易速率与频率。
python编程作业--盐度对流方程的差分格式设计与讨论
python编程作业--盐度对流方程的差分格式设计与讨论
python编程作业--盐度对流方程的差分格式设计与讨论