From 43e0545856ed02613c5c49a6892683dc5d8a322f Mon Sep 17 00:00:00 2001 From: Andrew Daniels Date: Tue, 2 May 2017 14:21:21 -0400 Subject: [PATCH] BUG: Fix _handle_minute_history_out_of_bounds for future calendar Need to use minute_to_session_label to retrieve the proper session. --- zipline/data/data_portal.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/zipline/data/data_portal.py b/zipline/data/data_portal.py index bd4cb61b..997cee49 100644 --- a/zipline/data/data_portal.py +++ b/zipline/data/data_portal.py @@ -810,23 +810,25 @@ class DataPortal(object): return daily_data def _handle_minute_history_out_of_bounds(self, bar_count): + cal = self.trading_calendar + first_trading_minute_loc = ( - self.trading_calendar.all_minutes.get_loc( + cal.all_minutes.get_loc( self._first_trading_minute ) if self._first_trading_minute is not None else None ) - suggested_start_day = ( - self.trading_calendar.all_minutes[ + suggested_start_day = cal.minute_to_session_label( + cal.all_minutes[ first_trading_minute_loc + bar_count - ] + self.trading_calendar.day - ).date() + ] + cal.day + ) raise HistoryWindowStartsBeforeData( first_trading_day=self._first_trading_day.date(), bar_count=bar_count, - suggested_start_day=suggested_start_day, + suggested_start_day=suggested_start_day.date(), ) def _get_history_minute_window(self, assets, end_dt, bar_count,