【期货量化】通过日结算率计算日/月收益率以及利用resample进行时间序列处理
今天才发现这个功能啊……太高级了,之前都一直用groupby但是感觉对于处理时间不是很方便
import matplotlib.pyplot as plt
import pandas as pd
from jqdata import *
import talib
from datetime import date, timedeltadaily_revenue = {}
start_time = '2020-01-01'
end_time = '2022-04-30'
# 以下代码在聚宽api下实现
# 获取期货交易的日收益率之后要获取月收益率
for i in ['J','RB','I','SS','SF','SM','CU','AL','NI','AG','SC','RU','FU','MA','BU','PF','EG','TA','SA','EB','SP','UR','CF','P','LH','Y','AP','JD','C']:index = get_future_code(i) # 按照指数计算# 结算价sett_price_i = get_extras('futures_sett_price',index,start_date = start_time ,end_date = end_time)current_price = sett_price_i[index]yesterday_price = sett_price_i[index].shift(1)# 日度收益率sett_price_i['daily_revenue_rate'] = current_price/yesterday_price - 1#print(sett_price_i)daily_revenue[i] = sett_price_i['daily_revenue_rate']#print(f'指数{index}的统计指标')revenue_stat = pd.DataFrame()revenue_stat = sett_price_i['daily_revenue_rate'].describe()#print(revenue_stat)# 月度收益率monthly_revenue = pd.DataFrame()monthly_revenue[f'{index} monthly_revenue'] = sett_price_i['daily_revenue_rate'].resample('M').sum()# print(monthly_revenue)
注意,当我们得到结算价和日度收益率组成的dataframe(sett_price_i)以后,它是一个以日期('YYYY-MM-DD')为index的dataframe
我们只需要对日度收益率那一列进行resample.sum()就可以得到每月度收益率(每一交易日累加,还不确定要不要加权重,待确认~)
resample中参数可以换为'T'(minute),'S'(second),'W'(week)等,前面均可以加数字。
还可以加一列:该日期对应是星期几
sett_price_i['weekday'] = sett_price_i.index.weekday
参考资料
Python量化交易实战之使用Resample函数转换“日K”数据_python_脚本之家 (jb51.net)
【期货量化】通过日结算率计算日/月收益率以及利用resample进行时间序列处理相关推荐
- ACMNO.42 C语言-第几天 定义一个结构体变量(包括年、月、日)。计算该日在本年中是第几天,注意闰年问题。利用结构体的在最下面
题目描述 定义一个结构体变量(包括年.月.日).计算该日在本年中是第几天,注意闰年问题. 输入 年月日 输出 当年第几天 样例输入 2000 12 31 样例输出 366 来源/分类 C语言 题目截图 ...
- 一个月按多少天计算日工资合理
2019独角兽企业重金招聘Python工程师标准>>> 日工资计算: 根据<关于职工全年月平均工作时间和工资折算问题的通知>的规定 一.制度工作时间的计算 年工作日:36 ...
- SQL计算日环比、周同比
计算日环比.周同比 范例表格如下: 这是面试问到的一个问题,回来学习之后了解可以用这个函数: 计算日活的日环比,周同比: 代码如下: select date,dau,(dau-dau_1)/dau_1 ...
- 使用Python对股票数据进行数据分析(一)-计算日线行情、5日均线、10日均线行情并显示
使用Python对股票数据进行数据分析(一)-计算日线行情.5日均线.10日均线行情并显示 各种炒股软件上可以显示各种技术指标,可以帮助投资者进行技术分析.这些股市中的这些指标都是怎么计算出来的呢?这 ...
- R语言计算时间序列数据的移动平均值(滚动平均值、例如5日均线、10日均线等):使用zoo包中的rollmean函数计算k个周期移动平均值
R语言计算时间序列数据的移动平均值(滚动平均值.例如5日均线.10日均线等):使用zoo包中的rollmean函数计算k个周期移动平均值 目录
- C语言获取股票数据,c/c++开发分享获取贵州茅台2010年1月1号至今的股票交易数据,计算该股票历史数据的5日均线和30日均线...
获取贵州茅台2000年1月1号至今的股票交易 1.使用tus 1)首先, 使用前我们在tushare pro上注册一下,获取一个token,用来访问接口. 2)其次,查询到贵州茅台对应的股票代码为60 ...
- 获取贵州茅台2010年1月1号至今的股票交易数据,计算该股票历史数据的5日均线和30日均线
获取贵州茅台2000年1月1号至今的股票交易数据,计算该股票历史数据的5日均线和30日均线 1.使用tushare获取2000至今的股票数据 1)首先, 使用前我们在tushare pro上注册一下, ...
- 如何实时计算日累计逐单资金流
在股票交易市场,资金流是一个重要的量价指标.资金流指标按照是否对交易订单号进行合并计算,可以分为逐笔资金流和逐单资金流:按照统计时间,可以分为分钟资金流和日累计资金流.其中逐笔资金流的处理逻辑比较简单 ...
- C语言/打印日历,用户输入年分和月份两个变量,系统计算该月份的1号是星期几,并计算该月有多少天。最后打印出该日历。已知:1900年1月1日是星期一
打印日历,用户输入年分和月份两个变量,系统计算该月份的1号是星期几,并计算该月有多少天.最后打印出该日历.已知:1900年1月1日是星期一 C语言 #define _CRT_SECURE_NO_WAR ...
最新文章
- 终端证书文件批量导入数据库的Python源码
- python的生成器
- 跨域(三)——JSONP
- opencv 读取CV_16U图像 c++
- maven安装后环境变量配置
- 基于python的入侵检测系统毕设_基于深度学习的射频指纹的物联网设备入侵检测...
- 理解分布式和集群的区别
- 在线mod计算机,计算机系中有关mod的常识(全).doc
- 苹果手机关于推送的查看LOG的一种解决办法
- mapxtreme 更改图元的位置
- 非参数统计——第二章 单样本问题
- kmz转换为dwg_甲方发来PDF图纸,你还得重新CAD绘制?教你30秒PDF转DWG
- DDR3的配置及仿真教程
- @Cacheable使用spring缓存
- 浅谈多重积分及其计算
- 多传感器融合标定方法汇总
- 华为智慧屏鸿蒙系统缺点,华为智慧屏用户评论及华为智慧屏电视真实体验优缺点情况...
- CMMI2.0之我见-配置管理CM
- phpcms实现PC网站接入微信Native支付
- [转]sessionStorage在同一网站多个标签页内共享数据吗?这取决于标签页如何打开
热门文章
- 组件 :normal ordered local Broadcasts
- java 不是封闭类_java – 不是一个封闭的类错误Android Studio
- 数学编织家和他们软软的作品
- 2021年流动式起重机司机报名考试及流动式起重机司机最新解析
- (网页)Http状态码大全(200、404、500等)(转CSDN)
- 什么是docker –rm选项
- 戚风蛋糕,华丽的转身——演绎失败与成功的大转变
- 如何使用m3u8格式下载快手直播回放的视频?自动转换MP4
- 云安全:Cloudstack云平台搭建详解及经验总结
- 2022化工自动化控制仪表特种作业证考试题库及答案