docs: def get_bars(self, assets, data_frequency, bar_count=500):
          '''
          Interface method.
  
          Return: pd.Dataframe() with columns MultiIndex [asset -> OHLCV]
          '''
          assets_is_scalar = not isinstance(assets, (list, set, tuple))
          is_daily = 'd' in data_frequency  # 'daily' or '1d'
          if assets_is_scalar:
              symbols = [assets.symbol]
          else:
              symbols = [asset.symbol for asset in assets]
  
          symbol_bars = self._symbol_bars(
              symbols, 'day' if is_daily else 'minute', limit=bar_count)
  
          if is_daily:
              intra_bars = {}
              symbol_bars_minute = self._symbol_bars(
                  symbols, 'minute', limit=1000)
              for symbol, df in symbol_bars_minute.items():
                  agged = df.resample('1D').agg(dict(
                      open='first',
                      high='max',
                      low='min',
                      close='last',
                      volume='sum',
                  )).dropna()
                  intra_bars[symbol] = agged
  
          dfs = []
          for asset in assets if not assets_is_scalar else [assets]:
              symbol = asset.symbol
              df = symbol_bars.get(symbol)
              if df is None:
                  dfs.append(pd.DataFrame(
                      [], columns=[
                          'open', 'high', 'low', 'close', 'volume']
                  ))
                  continue
              if is_daily:
                  agged = intra_bars.get(symbol)
                  if agged is not None and len(
                          agged.index) > 0 and agged.index[-1] not in df.index:
                      if not (agged.index[-1] > df.index[-1]):
                          log.warn(
                              ('agged.index[-1] = {}, df.index[-1] = {} '
                               'for {}').format(
                                  agged.index[-1], df.index[-1], symbol))
                      df = df.append(agged.iloc[-1])
              df.columns = pd.MultiIndex.from_product([[asset, ], df.columns])
              dfs.append(df)
  
          return pd.concat(dfs, axis=1)