在处理行情数据和回测的时候,变频操作用得非常多。我这里用的比较多的是1分钟数据变频为高级别周期,比如5分钟、半小时、1小时等。这里以5分钟举例,并记录变频操作时遇到的问题:
import pandas as pd
df=pd.read_csv("D:\\Quant\Min1_close.csv")
df_close=df.resample('5min').last()
print(df.head(30))
print(df_close.head())
resample里老的写法是
df_close=df.resample('5min',how='last')
how里可以选的方式有很多:sum, first, max等等
——想像一下,如果1分钟的数据降频到5分钟,那么5分钟的开盘价应该是第一个1分钟的开盘价,5分钟的收盘价应该是第5个1分钟的收盘价,最高价是5个1分钟里的最高价,最低价是5个1分钟里的最低价。
在这里遇到的小小问题是wind输出的1分钟数据里额外有个15:00和20:59的数据,并且是有成交量的
合成5分钟以后同样会多出来15:00和20:55分的数据——相当于多出了两根BAR