def _find_last_traded_position(self, asset, dt): volumes = self._open_minute_file('volume', asset) start_date_minute = asset.start_date.value / NANOS_IN_MINUTE dt_minute = dt.value / NANOS_IN_MINUTE try: # if we know of a dt before which this asset has no volume, # don't look before that dt earliest_dt_to_search = self._known_zero_volume_dict[asset.sid] except KeyError: earliest_dt_to_search = start_date_minute if dt_minute < earliest_dt_to_search: return -1 pos = find_last_traded_position_internal( self._market_open_values, self._market_close_values, dt_minute, earliest_dt_to_search, volumes, self._minutes_per_day, ) if pos == -1: # if we didn't find any volume before this dt, save it to avoid # work in the future. try: self._known_zero_volume_dict[asset.sid] = max( dt_minute, self._known_zero_volume_dict[asset.sid]) except KeyError: self._known_zero_volume_dict[asset.sid] = dt_minute return pos
def _find_last_traded_position(self, asset, dt): volumes = self._open_minute_file('volume', asset) start_date_minutes = asset.start_date.value / NANOS_IN_MINUTE dt_minutes = dt.value / NANOS_IN_MINUTE if dt_minutes < start_date_minutes: return -1 return find_last_traded_position_internal(self._market_open_values, self._market_close_values, dt_minutes, start_date_minutes, volumes, US_EQUITIES_MINUTES_PER_DAY)
def _find_last_traded_position(self, asset, dt): volumes = self._open_minute_file('volume', asset) start_date_minutes = asset.start_date.value / NANOS_IN_MINUTE dt_minutes = dt.value / NANOS_IN_MINUTE if dt_minutes < start_date_minutes: return -1 return find_last_traded_position_internal( self._market_open_values, self._market_close_values, dt_minutes, start_date_minutes, volumes, US_EQUITIES_MINUTES_PER_DAY )
def _find_last_traded_position(self, asset, dt): volumes = self._open_minute_file('volume', asset) start_date_minute = asset.start_date.value / NANOS_IN_MINUTE dt_minute = dt.value / NANOS_IN_MINUTE try: # if we know of a dt before which this asset has no volume, # don't look before that dt earliest_dt_to_search = self._known_zero_volume_dict[asset.sid] except KeyError: earliest_dt_to_search = start_date_minute if dt_minute < earliest_dt_to_search: return -1 pos = find_last_traded_position_internal( self._market_open_values, self._market_close_values, dt_minute, earliest_dt_to_search, volumes, self._minutes_per_day, ) if pos == -1: # if we didn't find any volume before this dt, save it to avoid # work in the future. try: self._known_zero_volume_dict[asset.sid] = max( dt_minute, self._known_zero_volume_dict[asset.sid] ) except KeyError: self._known_zero_volume_dict[asset.sid] = dt_minute return pos