文华财经15分钟K线组装拼接成4小时K线

需要4小时的K线,但是获取到的数据源文华财经下载到的没有,只有用15分钟的K线组装拼成4小时K线。

前提:数据质量很好,中间没有缺失的情况。

#加载数据
import
pandas as pd import datetime ag_15min = pd.read_csv('data\CMX银E指15分钟线.csv', engine='python') ag_15min['datetime']=pd.to_datetime(ag_15min['日期/时间'],format='%Y/%m/%d %H:%M:%S')
# 15分钟K线组装拼接成4小时K线
# 采用遍历df的方法,感觉有点蠢。如果有大神能直接在df里面完成下面操作,欢迎在评论区分享。
def
bar_15min_to_4h(df): # 创建空白DataFrame df_4h = pd.DataFrame(columns=['datetime', 'open', 'high','low','close','volume']) for i in range(len(df)): data = df.loc[i] if i%16 == 0: datetime_4h = data.datetime open_4h = data.开盘价 high_4h = data.最高价 low_4h = data.最低价 volume_4h = data.总手 else: high_4h = max(high_4h,data.最高价) low_4h = min(low_4h,data.最低价) volume_4h += data.总手 if i%16 == 15: close_4h = data.收盘价 df_4h = df_4h.append({'datetime': datetime_4h, 'open': open_4h, 'high': high_4h, 'low':low_4h, 'close':close_4h, 'volume':volume_4h}, ignore_index=True) return df_4h
ag_4h = bar_15min_to_4h(ag_15min)

 

posted @ 2020-04-01 17:18  scujcc_钟LS  阅读(856)  评论(0编辑  收藏  举报