Download: Sample CSV in Common Position Format
This support article specifically covers portfolio & position data. Please reference these other articles when working with different datasets:
Portfolio data (position set)
Custom security exposures / ranked signals
Forecasts as expected returns
Security classifications
Uploading manually
Updated October 2026. To create a portfolio, basket or watchlist and load a file:
Create: choose Portfolio, Basket or Watchlist, then enter a name and an optional description.
Filters to find an existing resource.
The resource you're loading.
Row menu › Upload positions for a resource that already exists.
Portfolio and model the upload applies to.
Rollover setting for days with no new file.
Steps: Select Files → Scan Preview → Upload Complete.
Drop zone for .csv, .xls or .xlsx files.
Learn More links back to this article.
Scan files checks dates, coverage and unmapped identifiers before anything is saved.
Walkthrough of the scan and upload steps: Upload positions to a portfolio.
Accepted Identifiers
Omega Point supports a wide range of equity asset identifiers. When provided with multiple identifiers, we map based on the following priority order:
ModelProviderId
These are model specific id's such as Axioma IDs, Barra IDs, or Wolfe IDs that can be used across the model "family" i.e. AXUS and AXWW models will use the same ModelProviderId
While the most specific, SEDOLs provide the most flexibility across models.
SEDOL (recommended)
CUSIP
ISIN
FIGI
Bloomberg Ticker
ticker+mic
Note: Sedols, Cusips, ISINs require a subscription to access.
For non-equity assets:
Indexes - include the ID of the index in the 'ticker' column and specify the asset class 'Index'.
Swaps / Baskets - include the ID used to create the swap in the 'ticker' column and specify the asset class 'Swap'.
Currencies - use 3-letter ISO code (eg: USD) and specify the asset class 'Currency'.
Portfolio Upload: Common Position Format
Position Date (required)
The date that corresponds to the positions at the end of the trading day. Note that multiple dates can be included in one file, or multiple files can be uploaded at once (with the requirement all files are structured exactly the same across dates).
The following date formats are supported:
YYYY-MM-DD (ISO8601)
MM/DD/YY
MM/DD/YYYY
Asset IDs (required)
The ID of the asset in the position set. As mentioned above a wide range of IDs are accepted, with Sedols being the preferred ID. Multiple IDs can also be referenced to better facilitate ID matching internally. The file column header should reflect the ID type used, as reflected in the 'Sample CSV in Common Position Format' link at the top of this help page.
Economic Exposure (required)
The economic exposure of the position in the portfolio's currency (set on the portfolio, otherwise your account's default). For an equity such as AAPL this is the position's market value, negative for shorts; options should be delta-adjusted.
Omega Point takes the value as is and labels it with the portfolio's currency; it doesn't convert currencies. A EUR portfolio holding a US stock should send that position's exposure in EUR.
Asset Class (optional for Equity only portfolio, required for portfolios containing any multiple asset classes including Indexes, Swaps, etc... )
Portfolio data is required to include an asset class column that lists that security's asset type. Must be one of the following values:
Equity
Swap
Currency
FixedIncome
Commodity
Index
Other
Example:
DATE, SEDOL, Ticker, Economic Exposure, Equity, Asset Class
12/31/2018, 1234567, EXMP, 2000000, 4000000, Equity
12/31/2018, 7654321, SMPL, -1000000, 4000000, Equity
12/31/2018, USD, 500000, 4000000, Currency
Optional fields
Tags (optional)
You can tag positions with a proprietary tag to facilitate grouping and segmenting portfolio analytics. In order to take advantage of tag functionality in the common portfolio upload, one must first create the tag categories via the API. Once the tag categories are associated with an account, customers can add this column to the file in common portfolio format by adding the prefix tag: to the column header, ex; tag:strategy would associate this column to the strategy tag category, and then associate tag values with each position. Tags are case insensitive and can range from 5 to 32 characters.
Lot Ids (optional)
You can associate a proprietary Lot Id with their holdings. This information can be used for internal back-office mapping purposes, or to take advantage of additional flexibility in analytics by associating tags with the Lot Ids (see Tags above). Lot Ids should be created as case sensitive alphanumeric symbol ranging from 5 to 32 digits, and should remain constant through time for a given holding lot position.
Example:
DATE, SEDOL, Economic Exposure, tag:analyst, lotId
12/31/2018, 1234567, 2000000, Tennyson, AAPL_1
12/31/2018, 7654321, -1000000, Delavega, MSFT_1
12/31/2018, abc1234, 500000, Perrier, GOOG_1
12/31/2018, abc1234, 2800000, Tennyson, GOOG_2
Attributes (optional)
Similar to tags, attributes is another data structure that facilitates grouping & segmenting of portfolio positions. It is possible to upload and provide attribute values before defining the attribute category, however, to utilize grouping functionality, the attribute category has to be created. Customers can identify an attribute category using the prefix attr: to any column header. Attributes are case insensitive and can range from 5 to 32 characters.
Example:
DATE, SEDOL, Economic Exposure, attr:analyst, lotId
12/31/2018, 1234567, 2000000, Tennyson, AAPL_1
12/31/2018, 7654321, -1000000, Delavega, MSFT_1
12/31/2018, abc1234, 500000, Perrier, GOOG_1
12/31/2018, abc1234, 2800000, Tennyson, GOOG_2
Equity (reference equity, aka NAV or AUM)
Column header Equity (the sample file uses NAV/AUM). Sets the denominator for every % figure in place of the portfolio's gross market value (GMV), for example when the portfolio is leveraged or references an allocation. Repeat the same value on every row for a date, in the portfolio's currency.
Start of Day Equity (cashflow)
Column header StartingEquity or startOfDayEquity; it maps to the position set's start-of-day equity. To mark days with cashflows into or out of the portfolio, the start of day equity value overrides the portfolio's calculated gross market value (GMV), or if provided, reference equity -- which are both taken from the previous day's (EOD) position set. The start of day equity should be the same number, repeated for all positions, on the same date.
Example:
DATE, SEDOL, Ticker, Economic Exposure, Equity, StartingEquity
11/30/2018, 1234567, EXMP, 1500000, 2000000,
11/30/2018, 7654321, SMPL, -800000, 2000000,
12/01/2018, 1234567, EXMP, 2000000, 4000000, 3000000
12/01/2018, 7654321, SMPL, -1000000, 4000000, 3000000
Notice that at EOD 11/30/2018, the GMV of this book is 2300000, and the equity override for the portfolio is 2000000. Position weights on 12/1/2018 would normally use 2000000 as the denominator, but with the cashflow they're calculated relative to 3000000. More on cashflows, including the API: Reflecting cashflows.
P&L (optional)
Total position-level realized and unrealized day-to-day gain/loss, in the portfolio's currency. If not provided, returns are calculated on a mark-to-market basis. See Per-security P&L.
Model Provider ID
The unique security identifier used by the model data provider. This can be a required field for some model providers.
Basket Upload
To load a portfolio that holds a basket, we must first create and upload data for the basket. It is critical that the basket name matches the basket ticker in the position file that you intend to upload.
To backfill historical dates, you simply need to re-upload the historical position files with the matching ticker AFTER the basket has been loaded.
Ideally all names held within a basket are covered by a risk model. Baskets can be leveraged.
Watchlist Upload
Uploading a watchlist takes fewer inputs:
SEDOL (recommended)
For best coverage & matching, it is best to include a list of SEDOLs. No other data is required if uploading with SEDOLs.Ticker (optional)
Bloomberg tickers may be provided. International tickers are input as ticker followed by the two-letter country code, with a space between. E.G.MSFT MXDate (optional)
A date column can help map securities to a date when the security existed within the model, E.G. de-listed securities can be uploaded in the past. To properly process the date column, if one security uses a date then all securities must include a date.
Uploading data via the API
In addition to CSV uploads, it is possible to upload portfolios via the api.


