1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 应用篇 | 你只有日K线数据 想要周K线?安排。

应用篇 | 你只有日K线数据 想要周K线?安排。

时间:2024-04-15 07:31:08

相关推荐

应用篇 | 你只有日K线数据 想要周K线?安排。

前言

最近小编被学Python的金融学妹问到:我只有股票的日K线数据,如何转成周K线?

……😮这年头,学妹都钻研股票啦?还是个有耐心的玩家,要周K线!

相较日K线,周K线能过滤更多的市场噪音,提高数据的信噪比。能更好地避免被庄家骗线,骗指标。

正文

日K线数据请看下图:图中显示了股票的日线数据,时间是最近两周。

我们要基于以上数据,生成两根周K线。问题清楚了,上代码。

import pandas as pdpath='E:\\' # 文件路径data=pd.read_csv(path)data.set_index('time',inplace=True) # 使用resample时,索引必须时时间类型_resampled=data.resample('1w').agg({'code':'max','open':'first','close':'last','high':'max','low':'min','volume':'sum','money':'sum'})_resampled

resample()是pandas库中一个非常强大的函数,能对时序数据进行重取样,支持平均、求和、取计值等操作。在使用时一定要先将DataFrame对象的索引设置为时间。而上面用到的.agg()操作可以对不同的列,使用不同的聚合方式。其中的参数是以DataFrame的列名为键,以聚合函数为值的字典。

Tips:max和min不仅能聚合数值类型,还能聚合字符串类型。

看结果:

问题解决了,但还有一个地方可以完善:时间索引的日期都是星期天,而我们需要的是每个星期五的日期。因此还需要加上代码:

import datetime_resampled.index=_resampled.index+datetime.timedelta(days=-2)_resampled

结束!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。