基于特定时间点从小时级OHLC数据生成日线级OHLC数据
自定义交易日分界的日线OHLC数据生成问题
我拥有EURUSD的小时级OHLC数据DataFrame,交易策略基于日线形态信号、小时级别执行,因此需要日线级OHLC数据。当日线满足条件时,我会切换到小时图寻找入场点。
我尝试了以下代码:
bars = ib.reqHistoricalData(contract, endDateTime='', durationStr='1 Y', barSizeSetting='1 hour', whatToShow='MIDPOINT', useRTH=True, formatDate=2) df = pd.DataFrame(bars)[['date', 'open', 'high', 'low', 'close']] df.set_index('date', inplace=True) df['daily open'] = df['open'].resample('D').first() df['daily close'] = df['close'].resample('D').last() df['daily high'] = df['high'].resample('D').max() df['daily low'] = df['low'].resample('D').min()
该方法能实现基本功能,但生成的日线OHLC数据以UTC午夜(00:00)为分界,而我的交易日从21:15开始。我尝试过整体移位DataFrame,但不确定这是否是最优方案。
我的需求总结:
- 日线收盘价取当日20:00的小时级close价格
- 日线开盘价取前一日21:15的小时级open价格
- 日线最高价取当日小时级high的最大值
- 日线最低价取当日小时级low的最小值
内容的提问来源于stack exchange,提问作者Koen Graveland
相关产品推荐
相关产品推荐

