Universe Upload

Under Stock Selection in model creation, the Upload List tab allows the user to upload a CSV File for a custom universe. The first row must be a row containing the column headers. The CSV file may contain the following five columns in any order:

ISIN The ISIN code of the security.
From The first date that the user wants that security to be valid from.
To The last date that the user wants that security to be valid to.
Country The country that the user wishes the security to be mapped to.
Currency The currency that the user wishes the security to be mapped to.

These columns represent the constraints for mapping a particular security. For instance, if a row is “US0231351067,2000-01-01,2021-01-01,USA,USD”, then we may only map this row to a security in our database that exists in the given date range, has region USA, and currency USD.

Note that only the “ISIN” column is mandatory for the user to input; the rest can be replaced with default values. Column headers must be spelt exactly as shown, but they are not case or white-space sensitive.


For “Country” and “Currency” columns, the feature supports the magic fields “ANY” and “P_”.

  • Will accept any security that meets other requirements ; i.e. disregard the field’s constraint while mapping the security.
  • For example: an “ANY” under the column “Country” will tell the mapping process to ignore the security’s country.
  • Note that a row with “ANY” will not blindly map to just ANY security. Based on factors (i.e. other securities in the upload, the ISIN code, etc.), the code will select the best match for the security.
  • This stands for “preferred”. It will map to a security that satisfies the preference.
  • For example, the row “US0231351067,2000-01-01,2021-01-01,P_USA,ANY” will map to a USA region security, if possible.
  • If there is no match satisfying the preferred field, it acts the same as ANY.


The upload is region agnostic. Users can input universes with securities from any region.

For setting the benchmark, the server will compute which region is most frequent within the uploaded universe.


"Too many columns were provided." The Universe Upload CSV accepts a maximum of five columns (From, To, ISIN, Country, Currency). If an additional column is provided, this error will appear.
"Duplicate column: X." This error appears in case the headers of the inputted CSV file contains the same column name twice.
"Invalid column: X." The header columns each must either be labelled as “ISIN”, “From”, “To”, “Country”, or “Currency”, in any order, case agnostic. This error is most likely due to the result of a typo in one of the headers. It may also occur if no headers were provided in the CSV.
“Column with header ‘ISIN’ could not be found.” This error occurs when ‘ISIN’ was not found as one of the headers.
“Incorrect number of columns on row:" This error occurs when the number of columns in a given row differs from the number of column headers provided in the input CSV.
“Unable to parse as date: X” This error occurs when an input date could not be parsed in YYYY-MM-DD format.
“No stock data was provided.” This error occurs when the input CSV did not have any records.


When to use the magic field “ANY” versus “P_” (preferred?) For most use cases, using “ANY” will be sufficient. Behind the scenes, rows with “ANY” will try to map to securities with countries and currencies most similar to the other securities in the portfolio, or the country associated with the security’s ISIN code. However, if it is strongly preferred for a security to have a specific attribute (i.e. only want securities that trade in USD), then using the “P_...” keyword is a better choice.