code: def test_benchmarkrange(self):
      start_session = self.trading_calendar.minute_to_session_label(
          pd.Timestamp("2008-01-01", tz="UTC")
      )
  
      end_session = self.trading_calendar.minute_to_session_label(
          pd.Timestamp("2010-01-01", tz="UTC"), direction="previous"
      )
  
      sim_params = SimulationParameters(
          start_session=start_session,
          end_session=end_session,
          trading_calendar=self.trading_calendar,
      )
  
      returns = factory.create_returns_from_range(sim_params)
      metrics = ClassicRiskMetrics.risk_report(
          algorithm_returns=returns,
          # use returns from the fixture to ensure that we have enough data.
          benchmark_returns=self.BENCHMARK_RETURNS,
          algorithm_leverages=pd.Series(0.0, index=returns.index),
      )
  
      self.check_metrics(metrics, 24, start_session)
  
imports: import datetime
  import pandas
  import numpy
  from zipline.utils import factory
  from zipline.finance.trading import SimulationParameters
  import zipline.testing.fixtures
  from zipline.finance.metrics import _ClassicRiskMetrics
label_desc: Use image node_id 14 for calling the TestRisk obj's underlying member method code with example usage: obj.test_benchmarkrange() without return types