code: def get_value(self, sid, dt, field):
          
          if self._last_get_value_dt_value == dt.value:
              minute_pos = self._last_get_value_dt_position
          else:
              try:
                  minute_pos = self._find_position_of_minute(dt)
              except ValueError:
                  raise NoDataOnDate()
  
              self._last_get_value_dt_value = dt.value
              self._last_get_value_dt_position = minute_pos
  
          try:
              value = self._open_minute_file(field, sid)[minute_pos]
          except IndexError:
              value = 0
          if value == 0:
              if field == 'volume':
                  return 0
              else:
                  return np.nan
  
          if field != 'volume':
              value *= self._ohlc_ratio_inverse_for_sid(sid)
          return value
docs: Retrieve the pricing info for the given sid, dt, and field.
  
          Parameters
          ----------
          sid : int
              Asset identifier.
          dt : datetime-like
              The datetime at which the trade occurred.
          field : string
              The type of pricing data to retrieve.
              ('open', 'high', 'low', 'close', 'volume')
  
          Returns
          -------
          out : float|int
  
          The market data for the given sid, dt, and field coordinates.
  
          For OHLC:
              Returns a float if a trade occurred at the given dt.
              If no trade occurred, a np.nan is returned.
  
          For volume:
              Returns the integer value of the volume.
              (A volume of 0 signifies no trades for the given dt.)