Logo

Properties for Data Adapter: Position Limits


Overview and Important Info

Data Adapter


FundApps Data Adapter makes onboarding simple. It speeds up your onboarding to FundApps by taking a subset of required data from the Position Limits property list in a CSV format and retrieving any remaining required data from your chosen market data data vendor.

How it works

  1. The client transmits (or Data Adapter picks up via SFTP) a CSV file containing the clients holdings, often a combination of External and manually enriched instruments
  2. It scans the input, producing a batched set of requests to your chosen data provider using the identifiers provided (ISIN, Sedol, Cusip, DataProviderId)
  3. Once the provider has returned the relevant instrument information, any child instruments referenced by the provider or the client are checked for and sourced if needed
  4. Data Adapter combines the externally sourced market data, with any manual enrichments provided by the client and generates a compliance engine ready XML file used to power your compliance checks

Essentials
Useful links

Asset class support

Instruments can be processed in one of two flows in Data Adapter - External and Client Provided.

External instruments are those available for retrieval from your chosen market data provider and Client Provided instruments are those that are not available. Client Provided instruments therefore require you to provide as many properties in the CSV file as you can. Where no Instrument Identifiers are provided, Data Adapter assumes this is a Client Provided instrument.

The table below shows the asset classes supported by Data Adapter for external instruments. If you have a position in an asset class that is not supported for external instruments, you can still onboard this position via the Client Provided flow by providing all necessary properties in the CSV file.

Asset Type LSEG Bloomberg
Futures โœ” โœ”
Options โœ”ยณ โœ”ยฒ
Commodity Futures & Options โœ”ยณ โœ”ยฒ
Interest Rate Futures & Options - โœ”ยน

*1 May require ULAssetClass set to generate a matching underlying instrument
*2 US & Canadian Options may have missing Market/MarketsListedIn information from Bloomberg.
*3 Delta values for XEUR and OPRA are not available in Data Scope Select via LSEG at this time.

Holdings property list (External enrichment)

Below are the properties you can send to Data Adapter in the CSV file for instruments available at your chosen data provider

Tip: As data from providers cannot be guarenteed, the only way to be sure you are getting enough data is to check the system for Missing Data and Unknowns.

Where a provider is missing a data point, you can either supply more data up front or use the Data Overrides functionality.


Instrument resolution via Data Providers


Property Name Description Data type Valid values & notes
AssetId โ€ผ๏ธ Unique identifier for the asset String(255) e.g. Use ISIN + LocalTicker or ISIN + ExecutionVenue if possible (these are also provided by the exchange-level FIGI or quote-level PermID).
1. Must be unique for every asset in the portfolio (but may be duplicated across portfolios) or else validation will fail and
2. Consistent across NAV dates or else HasActivity will not work and the UI will mark all assets as new
AssetName โ€ผ๏ธ Name of the asset String(255) Used throughout FundApps as the primary display name for the asset, so ensure this name is meaningful
Quantity โ€ผ๏ธ Number of contracts held Decimal Short sale positions - Insert a negative quantity for positions resulting from short sale transactions.
PortfolioId โ€ผ๏ธ Unique identifier for the portfolio / entity String(255) This Id should NOT change over time (even during implementation).
CommoditySymbol Exchange-specific commodity symbol (e.g. CL for NYMEX Crude Oil). This should be the FIA Tech Commodity Symbol or the value from the Bloomberg field 'ID_EXCH_SYMBOL'. String(255) It is strongly recommended to provide a valid CommoditySymbol
If using a DataProviderId/ComponentDataProviderId to resolve an instrument we will attempt to derive this from the data returned. If you supply a value this will override our logic. For in-scope Equity Swap instruments, you may provide a dummy CommoditySymbol (ex. CommoditySymbol = 'XX') and any DeliveryMonth to exclude such positions in your results or to pass validation as no such limits exist.
DataProviderId ๐Ÿ†” Lookup code for your chosen Market Data provider String(255) Used to query data from your data vendor. Provide either Bloomberg or FIGI codes for Bloomberg, or RIC codes for LSEG. If using a Bloomberg code you can optionally specify a yellowkey for lookups e.g. "S X3 Comdty".
Note this property is not required for any Shareholding Disclosure rules. It is purely for data collection.
ISIN ๐Ÿ†” ISIN of the instrument String(255) Used to query data from your data vendor. Used to look-up Instrument in many lists such as EU Short Selling Exempt, short selling black & white lists, Takeover lists etc.
InstrumentCurrency ๐Ÿ’พ Currency the instrument is denominated in String(255) Valid values: ISO 4217 currency codes.
ULInstrumentCurrency ๐Ÿ’พ Currency the underlying component is denominated in String(255) Valid values: ISO 4217 currency codes.
Note: this property needs to be provided alongside ULPrice or ULPriceForHSR.
Price ๐Ÿ’พ Price of the instrument in instrument currency. For bonds and convertibles, the price must be stated as a percentage of the face value of an individual bond (since this is the way bonds are quoted on the market). Decimal Note: This property needs to be provided alongside InstrumentCurrency.
ULPrice ๐Ÿ’พ Price of the underling instrument in underling instrument currency. Decimal Note: This property needs to be provided alongside ULInstrumentCurrency.
Note: This value along with ULInstrumnetCurrency overrides price information provided by the external data provider.
Market ๐Ÿ’พ Market identification code (MIC) for the primary market that this instrument is traded on. String(255) ISO 10383 code (MIC). This value is usually set by your data provider, if supplied it will be used as a fall back should the data provider not set a value.
Delta ๐Ÿ’พ The Delta measures the degree to which the derivative is exposed to shifts in the price of the underlying asset (price sensitivity with relation to the underlying). Under the European Transparency Directive (TDA) cash settled instruments should be Delta weighted. All cash settled instruments (where IsCashSettled=True) must have a Delta value. Under the Short-Selling Regulation (SSR) all derivatives (including convertibles) should be delta weighted regardless of settlement and therefore a delta must be provided. Decimal Valid Values: -1 to 1. For instruments with negative delta (e.g. put options), the system will accept the absolute value (i.e. positive value) and this will not affect the rule calculations and results. So for a put option with delta -0.5, both 0.5 and -0.5 are accepted by FundApps.
OpenInterestAllMonths ๐Ÿ’พ Total number of open or outstanding (not closed/settled or delivered) contracts that exist on a given trading day across all contract months. The property should represent the all month open interest value for a futures contract if defined on a future, or for all options (call and put) combined if defined on an option. Decimal
OpenInterestSingleMonth ๐Ÿ’พ Total number of open or outstanding (not closed/settled or delivered) contracts that exist on a given trading day for the single contract month. Decimal
MarketWidePositionLimit ๐Ÿ‡ฎ๐Ÿ‡ณ The maximum number of open contracts for a given underlying that can be held collectively by all market participants. Decimal Limit definitions that reference Market Wide Position Limits exist for select contracts on XNSE. This value can be sourced directly from the Exchange.
TotalSharesInFreeFloat ๐Ÿ‡ฎ๐Ÿ‡ณ [Issuer Property] The number of shares that can be publicly traded and are not restricted (i.e., held by insiders) of a company. Decimal This is only used for the XNSE exchange. As these limits reference a % of free float, not providing TotalSharesInFreeFloat will result in missing data.

Holdings property list (Client provided enrichment)

Below are the properties you can send to Data Adapter in the CSV file for instruments not available at your chosen data provider. The list below is in addition to the properties defined above for external enrichment.

As full instrument data isn't available externally, we ask the client to provide more data than what would usually be required for externally fetched data.
Note that manually enriched instruments cannot be related to each other.

Property Name Applies To Description Data type Valid values & notes
AssetClass โ€ผ๏ธ All Asset class (e.g. Bond, CFD etc.) String(255) Used to construct the correct asset class and identify the correct limit to apply to the contract.
Valid values: CFD, Future, Option, Swap, Warrant, CDS, StructuredProduct, Rights, Convertible, Forward.
IsCashSettled โ€ผ๏ธ CFD, Forward, Future, Option, Swap, Warrant If the derivative is cash settled (as opposed to requiring physical delivery) Boolean Most countries capture physically settled derivatives, many (but less) are interested in cash settled derivatives.
CallOrPut โ€ผ๏ธ Option, Warrant If an option is call or put String(255) Only needed for Options. Valid values: Call, Put.
DeliveryMonth Delivery month of exchange-traded derivatives. If a contract month has delivery over two different months, FundApps recommend using the first delivery month unless the regulation states otherwise. String(255) ISO 8601 YYYY-MM format
ComponentDataProviderId ๐Ÿ†” All Component lookup code for your chosen Market Data provider. An alternative to ComponentISIN String(255) Similar to DataProviderId, used to query data from your data vendor for the component. Provide either Bloomberg or FIGI codes for Bloomberg, or RIC codes for LSEG. If using a Bloomberg code you can optionally specify a yellowkey for lookups e.g. "S X3 Comdty".
Note this property is not required for any Shareholding Disclosure rules. It is purely for data collection.
ComponentISIN ๐Ÿ†” All The ISIN of the underlying or component to the instrument String(255) Use this property to tell Data Adapter what the underlying security is. A lookup will be attempted using the provided ISIN.
ComponentSEDOL ๐Ÿ†” The SEDOL of the underlying or component to the instrument String(255) Use this property to tell Data Adapter what the underlying security is. A lookup will be attempted using the provided SEDOL.
ULAssetClass All The asset class of the underling instrument String(255) If populated with one of the following values:
  • Bond, Data Adapter will generate a dummy bond component with IsGovernmentBacked="true" for the instrument.
  • Commodity, Data Adapter will generate a dummy commodity component for the instrument.
  • InterestRate, Data Adapter will generate a dummy interest rate component for the instrument.
  • StructuredProduct, Data Adapter will generate a dummy structured product component for the instrument, which can be used to attach constituents to via the composites service.
This can be used for externally enriched or client provided instruments or by those looked up from a data provider.
Valid values: Bond, Commodity, InterestRate, and StructuredProduct
ULIssuerName All Issuer name to be used on the dummy underlying instrument String(255) Mandatory for ULAssetClass of Bond. The value will be used to populate IssuerName for the dummy bond component based on the ULAssetClass.
Market All Market identification code (MIC) for the primary market that this instrument is traded on. String(255) ISO 10383 code (MIC). Insert the MIC of the primary market that the instrument is traded on. Where a specific market segment is different than the Operating MIC, please use the specific market segment since the Operating MIC is the parent market venue only.
For instruments which are truly over-the-counter (OTC), use the value recommended by the ISO standard: XXXX
For instruments where the market is completely unknown, use the value: XMIC (which is not an ISO code but a suggested default value in such cases).
It is critical that for any market, segment MICs are provided. Please see ISO's official FAQs for the MIC standard under the section 'MIC LEVELS', making note of the definitions for 'market segment MIC' and 'operating MIC' including the point that 'The use of market segment MICs provides more accuracy.'
FundApps is unable to validate whether our clients are providing the MICs at the granularity of segment MIC; we strongly recommend that you re-confirm with your data provider(s) that MICs are provided at segment MICs level.
InstrumentCurrency All Currency the instrument is denominated in String(255) Valid values: ISO 4217 currency codes.
Price All Price of the instrument in instrument currency. For bonds and convertibles, the price must be stated as a percentage of the face value of an individual bond (since this is the way bonds are quoted on the market). Decimal Note: This property needs to be provided alongside InstrumentCurrency.
ContractSize Forward, Future, Option, Warrant Contract size of a derivative (i.e. number of the underlying that a single contract converts into). For Position Limits, please refer to the contract specifications. Decimal e.g. 1000 would mean every option represents 1000 of the underlying. For Shareholding Disclosure, ContractSize is not generally required for derivatives on bonds.

Advanced Properties

Below are advanced properties you can supply Data Adapter to configure instrument/row specific behaviour. These options are generally only required for very specific use cases.

Property Name Description Data type Valid values & notes
AssetClassOverride User-defined asset class.
This property should be used with caution as it overrides any valid asset class informed by the external data providers.
String(255) The valid options are: ADR, Bond, CDS, CFD, Convertible, Equity, Forward, Future, Index, Option, PreferredEquity, Rights, StructuredProduct, Swap, Unit, Warrant
ULAssetClassOverride User-defined underlying component asset class.
This property should be used with caution as it overrides any valid asset class informed by the external data providers.
String(255) The valid options are: ADR, Bond, CDS, CFD, Convertible, Equity, Forward, Future, Index, Option, PreferredEquity, Rights, StructuredProduct, Swap, Unit, Warrant
IgnoreFetchAllCompositeData Used to override the Fetch All Composite Data setting in the client Data Adapter configuration. Boolean When set to true, it ignores the client-level setting. If false or not set, the client configuration is applied as normal.
SkipMarketDataEnrichment Used to skip the request of market data to Bloomberg or LSEG for the instrument. Boolean When enabled the instrument will need to have all necessary market data provided directly
ExemptFromRuleIDs The rules (indicated by RuleID) where the holder has a documented exemption for the asset. The asset will be excluded from the rule IDs listed. List The list must have its IDs separated by commas (`,`) and enclosed in double quotes (`"`). Example: "10,995,1003"

Last generated: 2026-04-20 16:30:30:00 UTC