original_docstring: 
      Create a DataFrame representing lifetimes of assets that are constantly
      rotating in and out of existence.
  
      Parameters
      ----------
      num_assets : int
          How many assets to create.
      first_start : pd.Timestamp
          The start date for the first asset.
      frequency : str or pd.tseries.offsets.Offset (e.g. trading_day)
          Frequency used to interpret next two arguments.
      periods_between_starts : int
          Create a new asset every `frequency` * `periods_between_new`
      asset_lifetime : int
          Each asset exists for `frequency` * `asset_lifetime` days.
  
      Returns
      -------
      info : pd.DataFrame
          DataFrame representing newly-created assets.
      
docstring: Create a DataFrame representing lifetimes of assets that are constantly
  rotating in and out of existence.
  
  Parameters
  
  num_assets : int
  How many assets to create.
  first_start : pd.Timestamp
  The start date for the first asset.
  frequency : str or pd.tseries.offsets.Offset
  Frequency used to interpret next two arguments.
  
  Returns
  
  info : pd.DataFrame
  DataFrame representing newly-created assets.
docstring_tokens: Create a DataFrame representing lifetimes of assets that are constantly rotating in and out of existence . Parameters num_assets : int How many assets to create . first_start : pd . Timestamp The start date for the first asset . frequency : str or pd . tseries . offsets . Offset Frequency used to interpret next two arguments . Returns info : pd . DataFrame DataFrame representing newly - created assets .
code: def make_rotating_asset_info(num_assets,
                               first_start,
                               frequency,
                               periods_between_starts,
                               asset_lifetime):
      """
      Create a DataFrame representing lifetimes of assets that are constantly
      rotating in and out of existence.
  
      Parameters
      ----------
      num_assets : int
          How many assets to create.
      first_start : pd.Timestamp
          The start date for the first asset.
      frequency : str or pd.tseries.offsets.Offset (e.g. trading_day)
          Frequency used to interpret next two arguments.
      periods_between_starts : int
          Create a new asset every `frequency` * `periods_between_new`
      asset_lifetime : int
          Each asset exists for `frequency` * `asset_lifetime` days.
  
      Returns
      -------
      info : pd.DataFrame
          DataFrame representing newly-created assets.
      """
      return pd.DataFrame(
          {
              'sid': range(num_assets),
              'symbol': [chr(ord('A') + i) for i in range(num_assets)],
              # Start a new asset every `periods_between_starts` days.
              'start_date': pd.date_range(
                  first_start,
                  freq=(periods_between_starts * frequency),
                  periods=num_assets,
              ),
              # Each asset lasts for `asset_lifetime` days.
              'end_date': pd.date_range(
                  first_start + (asset_lifetime * frequency),
                  freq=(periods_between_starts * frequency),
                  periods=num_assets,
              ),
              'exchange': 'TEST',
          }
      )
code_tokens: def make_rotating_asset_info ( num_assets , first_start , frequency , periods_between_starts , asset_lifetime ) : return pd . DataFrame ( { 'sid' : range ( num_assets ) , 'symbol' : [ chr ( ord ( 'A' ) + i ) for i in range ( num_assets ) ] , 'start_date' : pd . date_range ( first_start , freq = ( periods_between_starts * frequency ) , periods = num_assets , ) , 'end_date' : pd . date_range ( first_start + ( asset_lifetime * frequency ) , freq = ( periods_between_starts * frequency ) , periods = num_assets , ) , 'exchange' : 'TEST' , } )
short_docstring: Create a DataFrame representing lifetimes of assets that are constantly
  rotating in and out of existence.
short_docstring_tokens: Create a DataFrame representing lifetimes of assets that are constantly rotating in and out of existence .
comment: """
      Create a DataFrame representing lifetimes of assets that are constantly
      rotating in and out of existence.
  
      Parameters
      ----------
      num_assets : int
          How many assets to create.
      first_start : pd.Timestamp
          The start date for the first asset.
      frequency : str or pd.tseries.offsets.Offset (e.g. trading_day)
          Frequency used to interpret next two arguments.
      periods_between_starts : int
          Create a new asset every `frequency` * `periods_between_new`
      asset_lifetime : int
          Each asset exists for `frequency` * `asset_lifetime` days.
  
      Returns
      -------
      info : pd.DataFrame
          DataFrame representing newly-created assets.
      """$SEP$# Start a new asset every `periods_between_starts` days.$SEP$# Each asset lasts for `asset_lifetime` days.