code: def get_data_portal(exchanges):
      open_calendar = get_calendar("OPEN")
      asset_finder = ExchangeAssetFinder(exchanges)
  
      exchange_names = [exchange.name for exchange in exchanges]
      data_portal = DataPortalExchangeBacktest(
          exchange_names=exchange_names,
          asset_finder=asset_finder,
          trading_calendar=open_calendar,
          first_trading_day=None,  # will set dynamically based on assets
      )
      return data_portal
  
file_path: catalyst/tests/exchange/test_suites/test_suite_bundle.py
imports: import random
  import os
  import pandas
  from datetime import timedelta
  from logbook import TestHandler
  from pandas.util.testing import assert_frame_equal
  from catalyst import get_calendar
  from catalyst.exchange.exchange_asset_finder import ExchangeAssetFinder
  from catalyst.exchange.exchange_data_portal import DataPortalExchangeBacktest
  from catalyst.exchange.utils.exchange_utils import get_candles_df
  from catalyst.exchange.utils.factory import get_exchange
  from catalyst.exchange.utils.test_utils import output_df, select_random_assets
  from catalyst.exchange.utils.stats_utils import set_print_settings
label_desc: Use image node_id 1 for calling the TestSuiteBundle obj's underlying member method code with example usage: obj.get_data_portal(exchanges) and returns: data_portal