File format for importing contracts
Contracts are imported in FA in colon-separated CSV files, with the file columns described below This article describes the file formats used for importing FX contracts to FA. The file format is a colon-separated text file (CSV). One row in the file represents one contract.
The contract import file format is flexible, and it is based on column headers you can define in the first row of the import file – you can specify the columns in any order, and the system recognizes values in each column based on the text in the header row. After the first row, each row in the file should correspond to one contract. You can mix different types of contracts in the same file, just make sure your file contains columns for all mandatory information for each contract type.
Download the CSV file templates:
The file formats are described below.
Building the import file
File format
All contract import file formats are comma-separated (,) CSV-files (file format .csv) - this is different from other FA Format files which are semicolon-separated! Thus, when saving your contract import file, make sure you save it as a comma-separated CSV file.
Within your file you should use
Date format - recommended to define dates as "yyyy-MM-dd" (e.g. 2019-01-15), but you can also use other supported date formats.
Number format - use dot "." as the decimal separator for numbers (e.g. 1000.00).
Content of the file
The contract import file format is very flexible, and it is based on column headers you can freely define on the first row of the import file - you can specify the columns in any order you'd like, and the system recognizes values in each column based on the text on the header row. Each contract type has a different set of columns you can use (formats are described below), and your import file should contain all the mandatory columns.
After the first row, each row in your import file should equal one contract (i.e. one row = one contract) - you should specify all the required information of one contract on one row. You can mix different types of contracts in the same file, just make sure your file contains columns for all mandatory information for each contract type. You can also leave columns empty if the value is not applicable on the contract on that row. For example, if you include all required columns for FX Swaps, you can leave them empty for FX Spots or FX Forwards in the same file.
Each column name starts with the prefix "cr." - however, if you are importing a contract file manually through the Import window, you can optionally leave the prefix out.
If the file doesn't include all mandatory columns, or the content of the rows that define the contracts don't match the header row, the imported rows are failed and an error is shown under the failed tab within the first column (see Failed imports).
Format for importing FX Spots and FX Forwards
You can import your FX Spots and FX Forwards with the same file format - the information required for these two types is the same.
You can identify your contract as an FX Spot or an FX Forward through the "Contract type" field (cr.contractType) (available fro FA 3.9 onward). If you don't define a contract type, the system interprets your contract's type based on its length: if the contract's settlement date is two days or less after contract date (taking into account the involved currencies' holiday calendars), the contract is an FX Spot, otherwise the contract is an FX Forward.
You can import your FX Spots and FX Forwards using the file format for "FX Single", using either of the two available column sets - by full details and by convention. You can also mix the two column sets in the same file. The format is based on selected columns from Strata's trade loader for FX Single, with a few additional columns.
FX Single by full details
When importing contracts with full details, you should specifically define the values for both cashflows related to your contract, i.e. you need to enter all the contract values to your import file (expect the FX rate which is calculated based on values you have defined in "cr.Leg 1 Notional" and "cr.Leg 2 Notional").
When you save your contract, the values you have defined for "Leg 1" end up in the upper cashflow fields and the values you have defined for "Leg 2" end up in the lower cashflow fields in the Contract window. In addition, an External ID is automatically generated for your contract.
Column name | Required | Description | Value |
---|---|---|---|
cr.Strata Trade Type | Mandatory | Format to use. For FX Spot / FX Forward, define exactly as "FxSingle" (case sensitive). | FxSingle |
cr.contractType | Optional | Contract type, determines whether the import creates an FX Spot or an FX Forward. If you don't define a contract type, the system interprets your contract's type based on its length: if the contract's settlement date is two days or less after contract date (taking into account the involved currencies' holiday calendars), the contract is an FX Spot, otherwise the contract is an FX Forward. Define exactly as "FX SPOT" or "FX FORWARD" (case sensitive). (Available from FA 3.9 onward) | FX SPOT / FX FORWARD |
cr.shortName | Mandatory | Portfolio the contract is created to. Define with the ID of the portfolio. | Portfolio ID |
cr.Trade Date | Mandatory | Contract date. Recommended to use format "yyyy-MM-dd", but you can also use other supported date formats. | yyyy-MM-dd |
cr.Payment Date | Mandatory | Settlement date. Recommended to use format "yyyy-MM-dd", but you can also use other supported date formats | yyyy-MM-dd |
cr.Leg 1 Direction | Mandatory | Direction of the first cashflow. Define as: "Receive"/"Rec"/"R" = Buy "Pay"/"P" = Sell | Receive / Pay |
cr.Leg 1 Currency | Mandatory | Currency of the first cashflow. Define with the currency code. | > Currency code |
cr.Leg 1 Notional | Mandatory | Amount of the first cashflow (i.e. how much of the defined currency (cr.Leg 1 Currency) you are buying/selling). Define as a positive number. | > Number |
cr.Leg 2 Direction | Mandatory | Direction of the second cashflow. This should be opposite to the direction of the first cashflow, i.e. opposite to cr.Leg 1 Direction - if the directions are the same, the import fails. Define as: "Receive"/"Rec"/"R" = Buy "Pay"/"P" = Sell | Receive / Pay |
cr.Leg 2 Currency | Mandatory | Currency of the second cashflow. Define with the currency code. | Currency code |
cr.Leg 2 Notional | Mandatory | Amount of the second cashflow (i.e. how much of the defined currency (cr.Leg 2 Currency) you are buying/selling). Define as a positive number. | Number |
cr.fromAccount | Mandatory | Account for the "Sell" ("Pay") cashflow. Account currency should be the same as your cashflow's currency.You can identify the "Sell" cashflow from the direction (i.e. whether "Pay" is entered in cr.Leg 1 Direction or cr.Leg 2 Direction), and your account should be in the same currency as this cashflow (i.e. the currency given in cr.Leg 1 Currency or cr.Leg 2 Currency, respectively). Defined with the account number of the account. Make sure the account is in the same currency as your "Sell" cashflow - prior to FA 3.4, importer does not validate this, and to ensure correct result before validation, account's currency should match to the cashflow's currency! Define "AUTO" in the account column to automatically use the first available account with the corresponding leg' currency (available from FA 3.4 onward). | Account number |
cr.toAccount | Mandatory | Account for the "Buy" ("Receive") cashflow. Account currency should be the same as your cashflow's currency. You can identify the "Buy" cashflow from the direction (i.e. whether "Receive" is entered in cr.Leg 1 Direction or cr.Leg 2 Direction), and your account should be in the same currency as this cashflow (i.e. the currency given in cr.Leg 1 Currency or cr.Leg 2 Currency, respectively). Defined with the account number of the account. Make sure the account is in the same currency as your "Sell" cashflow - prior to FA 3.4, importer does not validate this, and to ensure correct result before validation, account's currency should match to the cashflow's currency! Define "AUTO" in the account column to automatically use the first available account with the corresponding leg' currency (available from FA 3.4 onward). | Account number |
cr.Id | Optional | Reference of the contract. You can use the cr.id field to update existing contracts: if the system finds a contract with the same reference (cr.id) in the same portfolio (cr.shortName), the existing contract is updated. | Text |
cr.Counterparty | Optional | Counter contact of the contract. Define with the contact ID of the counter contact. | Contact ID |
cr.counterPortfolio | Optional | Porfolio of the counter contract. Define with the Portfolio ID. | Portfolio ID |
cr.description | Optional | Description of the contract, i.e. optional information you can include to your contract. | Text |
cr.intInfo | Optional | Internal info of the contract, i.e. optional information you can include to your contract, which is visible only internally in the Contract window. | Text |
cr.transactionDate | Optional | Transaction date of an FX Forward. Define the transaction date with format "yyyy-MM-dd". If not set (recommended), the system automatically calculates the transaction date by deducting 2 business days from the settlement date (cr.Payment Date). From FA 3.10 onward, transaction date is applied only when forward cashflows are created based on transaction date. With configuration “Create forward cashflow securities based on the Settlement date of the leg”, forward cashflow transaction's transaction date always equals to its settlement date, regardless of the date you provide here. This column has no effect for FX Spots, since the transaction date of an FX Spot always equals to contract date (cr.Trade Date). | yyyy-MM-dd |
cr.status | Optional | Status of the contract, either "Accepted" (default if status has not been defined), "Not finished" or "Deleted". Determines the status of the contract and the status of the transactions generated based on the contract. Define the status as OK = Accepted NF = Not finished DEL = Deleted (Available from FA 3.4 onward) | OKNFDEL |
See also an example file (FXSingle_FullDetails.csv) and a screenshot below how the fields map into the FX Forward fields in the Contract window.
FX Single by convention
When importing contracts by convention, you can define your contract in terms of the involved currency pair, and then defined which of the currencies you are buying or selling, how much, and with what FX rate - the system will determine the other cashflow based on this information.
When you save your contract, the cashflow's values you define in your import file end up in the upper cashflow fields and the calculated values end up in the lower cashflow fields in the Contract window. In addition, an External ID is automatically generated for your contract.
Column name | Required | Description | Value |
---|---|---|---|
cr.Strata Trade Type | Yes | Format to use. For FX Spot / FX Forward, define exactly as “FxSingle” (case sensitive). | FxSingle |
cr.contractType | No | Contract type, determines whether the import creates an FX Spot or an FX Forward. If you don't define a contract type, the system interprets your contract's type based on its length: if the contract's settlement date is two days or less after contract date (taking into account the involved currencies' holiday calendars), the contract is an FX Spot, otherwise the contract is an FX Forward. Define exactly as "FX SPOT" or "FX FORWARD" (case sensitive). (Available from FA 3.9 onward) | FX SPOT / FX FORWARD |
cr.shortName | Yes | Portfolio the contract is created to. Define with the ID of the portfolio. | Portfolio ID |
cr.Trade Date | Yes | Contract date. Recommended to use format "yyyy-MM-dd", but you can also use other supported date formats. | yyyy-MM-dd |
cr.Payment Date | Yes | Settlement date. Recommended to use format "yyyy-MM-dd", but you can also use other supported date formats . | yyyy-MM-dd |
cr.Convention | Yes | Define the convention as the currency pair of the involved currencies, such as "EUR/USD" or "SEK/EUR". Use the currency codes of the currencies. | Currency pair with currency codes. |
cr.Buy Sell | Yes | Direction of the cashflow you are defining with the convention (i.e. which direction the cashflow you are defining should go). The other cashflow determined from the convention (cr.Convention) goes the other way. Define the direction with "Buy" or "Sell". | Buy / Sell |
cr.Currency | Yes | Currency of the cashflow you are defining with the convention. Define with the currency code. | Currency code |
cr.Notional | Yes | Amount of the cashflow you are defining with the convention (i.e. how much of the defined currency (cr.Currency) you are buying/selling). Define as a positive number. | Number |
cr.FX Rate | Yes | FX rate used to convert the amount (cr.Notional) in the defined currency (cr.Currency) to the amount of the other currency defined in the currency pair in the convention (cr.Convention). Define as a number that matches the currency pair you defined in the convention (i.e. convention EUR/USD => FX rate for EUR/USD). | Number |
cr.fromAccount | Yes | Account for the "Sell" cashflow. Account currency should be the same as your cashflow's currency. You can identify the "Sell" cashflow from the cr.Buy Sell selection (i.e. if cr.Buy Sell contains "Sell", then your cr.fromAccount should be in the currency defined in cr.Currency, otherwise in the other currency determined by the cr.Convention). Defined with the account number of the account. Make sure the account is in the same currency as your "Sell" cashflow - prior to FA 3.4, importer does not validate this, and to ensure correct result before validation, account's currency should match to the cashflow's currency! Define "AUTO" in the account column to automatically use the first available account with the corresponding leg' currency (available from FA 3.4 onward). | Account number |
cr.toAccount | Yes | Account for the "Buy" cashflow. Account currency should be the same as your cashflow's currency. You can identify the "Buy" cashflow from the cr.Buy Sell selection (i.e. if cr.Buy Sell contains "Buy", then your cr.toAccount should be in the currency defined in cr.Currency, otherwise in the other currency determined by the cr.Convention). Defined with the account number of the account. Make sure the account is in the same currency as your "Sell" cashflow - prior to FA 3.4, importer does not validate this, and to ensure correct result before validation, account's currency should match to the cashflow's currency! Define "AUTO" in the account column to automatically use the first available account with the corresponding leg' currency (available from FA 3.4 onward). | Account number |
cr.Id | No | Reference of the contract. You can use the cr.id field to update existing contracts: if the system finds a contract with the same reference (cr.id) in the same portfolio (cr.shortName), the existing contract is updated. | Text |
cr.Counterparty | No | Counter contact of the contract. Define with the contact ID of the counter contact. | Contact ID |
cr.counterPortfolio | No | Porfolio of the counter contract. Define with the Portfolio ID. | Portfolio ID |
cr.description | No | Description of the contract, i.e. optional information you can include to your contract. | Text |
cr.intInfo | No | Internal info of the contract, i.e. optional information you can include to your contract, which is visible only internally in the Contract window. | Text |
cr.transactionDate | No | Transaction date of an FX Forward. Define the transaction date with format "yyyy-MM-dd". If not set, the system automatically calculates the transaction date by deducting 2 business days from the settlement date (cr.Payment Date). From FA 3.10 onward, transaction date is applied only when forward cashflows are created based on transaction date. With configuration “Create forward cashflow securities based on the Settlement date of the leg”, forward cashflow transaction's transaction date always equals to its settlement date, regardless of the date you provide here. This column has no effect for FX Spots, since the transaction date of an FX Spot always equals to contract date (cr.Trade Date). | yyyy-MM-dd |
cr.status | No | Status of the contract, either "Accepted" (default if status has not been defined), "Not finished" or "Deleted". Determines the status of the contract and the status of the transactions generated based on the contract. Define the status asOK = AcceptedNF = Not finishedDEL = Deleted (Available from FA 3.4 onward) | OKNFDEL |
Format for importing FX Swaps
You can import your FX Swaps using the file format for "FX Swap", using either of the two available column sets - by full details and by convention. You can also mix the two column sets in the same file. The format is based on selected columns from Strata's trade loader for FX Swap, with a few additional columns.
FX Swap by full details
When importing contracts with full details, you should specifically define the values for both cashflows for the near leg and far leg related to your contract, i.e. you need to enter all the contract values to your import file (expect the FX rates which are calculated based on values you have defined in "cr.Leg 1 Notional" and "cr.Leg 2 Notional", and "cr.Far Leg 1 Notional" and "cr.Far Leg 2 Notional").
When you save your contract, the values you have defined for "Leg 1" end up in the upper cashflow fields and the values you have defined for "Leg 2" end up in the lower cashflow fields in the Contract window. In addition, an External ID is automatically generated for your contract.
Some fields that you can use in the Contract window to automatically calculate and set other values are not available for importing (such as periods and points), and are shown as empty for an imported contract.
Column name | Required | Description | Value |
---|---|---|---|
cr.Strata Trade Type | Yes | Format to use. For FX Swap, define exactly as "FxSwap" (case sensitive). | FxSwap |
cr.shortName | Yes | Portfolio the contract is created to. Define with the ID of the portfolio. | Portfolio ID |
cr.Trade Date | Yes | Contract date. Recommended to use format "yyyy-MM-dd", but you can also use other supported date formats. | yyyy-MM-dd |
cr.nearLegType | No | Contract type for the near leg of your FX Swap. Determines whether the import creates an FX Spot or an FX Forward for the near leg. If you don't define a near leg type, the system interprets your near leg's type based on its length: if the leg's settlement date is two days or less after the contract date (taking into account the involved currencies' holiday calendars), the near leg is an FX Spot, otherwise the near leg is an FX Forward. FX Swap's far leg is always an FX Forward Define exactly as "FX SPOT" or "FX FORWARD" (case sensitive). (Available from FA 3.10 onward) | FX SPOT / FX FORWARD |
cr.Payment Date | Yes | Near leg's settlement date. Recommended to use format "yyyy-MM-dd", but you can also use other supported date formats. | yyyy-MM-dd |
cr.Leg 1 Direction | Yes | Direction of the near leg's first cashflow. Define as:"Receive"/"Rec"/"R" = Buy"Pay"/"P" = Sell (Prior to FA 3.4, use only "Pay" and "Receive", not the abbreviations!) | Receive / Pay |
cr.Leg 1 Currency | Yes | Currency of the near leg's first cashflow. Define with the currency code. | Currency code |
cr.Leg 1 Notional | Yes | Amount of the near leg's first cashflow (i.e. how much of the defined currency (cr.Leg 1 Currency) you are buying/selling). Define as a positive number. | Number |
cr.Leg 2 Direction | Yes | Direction of the near leg's second cashflow. This should be opposite to the direction of the first cashflow, i.e. opposite to cr.Leg 1 Direction - if the directions are the same, the import fails. Define as:"Receive"/"Rec"/"R" = Buy"Pay"/"P" = Sell (Prior to FA 3.4, use only "Pay" and "Receive", not the abbreviations!) | Receive / Pay |
cr.Leg 2 Currency | Yes | Currency of the near leg's second cashflow. Define with the currency code. | Currency code |
cr.Leg 2 Notional | Yes | Amount of the near leg's second cashflow (i.e. how much of the defined currency (cr.Leg 2 Currency) you are buying/selling). Define as a positive number. | Number |
cr.Far Payment Date | Yes | Far leg's settlement date. Recommended to use format "yyyy-MM-dd", but you can also use other supported date formats. | yyyy-MM-dd |
cr.Far Leg 1 Direction | Yes | Direction of the far leg's first cashflow. This should be opposite to the direction of the near leg's first cashflow's direction, i.e. opposite to cr.Leg 1 Direction - if the directions are the same, the import fails. Define as:"Receive"/"Rec"/"R" = Buy"Pay"/"P" = Sell (Prior to FA 3.4, use only "Pay" and "Receive", not the abbreviations!) | Receive / Pay |
cr.Far Leg 1 Currency | Yes | Currency of the far leg's first cashflow. This currency should be the same as the near leg's first cashflow's currency (i.e. the currency set to the cr.Leg 1 Currency) - if not the same, the import fails. Define with the currency code. | Currency code |
cr.Far Leg 1 Notional | Yes | Amount of the far leg's first cashflow (i.e. how much of the defined currency (cr.Leg 2 Currency) you are buying/selling). This amount should be the same as the near leg's first cashflow's amount (i.e. the amount set to the cr.Leg 1 Notional) - if not the same, the import fails. Define as a positive number. | Number |
cr.Far Leg 2 Direction | Yes | Direction of the far leg's second cashflow. This should be opposite to the direction of the far leg's first cashflow and the direction of the near leg's second cashflow, i.e. opposite to cr.Far Leg 1 Direction and cr.Leg 2 Direction - if the directions are the same, the import fails. Define as:"Receive"/"Rec"/"R" = Buy"Pay"/"P" = Sell (Prior to FA 3.4, use only "Pay" and "Receive", not the abbreviations!) | Receive / Pay |
cr.Far Leg 2 Currency | Yes | Currency of the far leg's second cashflow. This currency should be the same as the near leg's second cashflow's currency (i.e. the currency set to the cr.Leg 2 Currency) - if not the same, the import fails. Define with the currency code. | Currency code |
cr.Far Leg 2 Notional | Yes | Amount of the far leg's first cashflow (i.e. how much of the defined currency (cr.Leg 2 Currency) you are buying/selling). Define as a positive number. | Number |
cr.fromAccount | Yes | Account for the near leg's "Sell" ("Pay") cashflow. Account currency should be the same as your cashflow's currency. You can identify the near leg "Sell" cashflow from the direction (i.e. whether "Pay" is entered in cr.Leg 1 Direction or cr.Leg 2 Direction), and your account should be in the same currency as this cashflow (i.e. the currency given in cr.Leg 1 Currency or cr.Leg 2 Currency, respectively). Defined with the account number of the account. Make sure the account is in the same currency as your "Sell" cashflow - prior to FA 3.4, importer does not validate this, and to ensure correct result before validation, account's currency should match to the cashflow's currency! Define "AUTO" in the account column to automatically use the first available account with the corresponding leg' currency (available from FA 3.4 onward). | Account number |
cr.toAccount | Yes | Account for the near leg's "Buy" ("Receive") cashflow. Account currency should be the same as your cashflow's currency. You can identify the near leg "Buy" cashflow from the direction (i.e. whether "Receive" is entered in cr.Leg 1 Direction or cr.Leg 2 Direction), and your account should be in the same currency as this cashflow (i.e. the currency given in cr.Leg 1 Currency or cr.Leg 2 Currency, respectively). Defined with the account number of the account. Make sure the account is in the same currency as your "Sell" cashflow - prior to FA 3.4, importer does not validate this, and to ensure correct result before validation, account's currency should match to the cashflow's currency! Define "AUTO" in the account column to automatically use the first available account with the corresponding leg' currency (available from FA 3.4 onward). | Account number |
cr.Id | No | Reference of the contract. You can use the cr.id field to update existing contracts: if the system finds a contract with the same reference (cr.id) in the same portfolio (cr.shortName), the existing contract is updated. | Text |
cr.Counterparty | No | Counter contact of the contract. Define with the contact ID of the counter contact. | Contact ID |
cr.counterPortfolio | No | Porfolio of the counter contract. Define with the Portfolio ID. | Portfolio ID |
cr.description | No | Description of the contract, i.e. No information you can include to your contract. | Text |
cr.intInfo | No | Internal info of the contract, i.e. optional information you can include to your contract, which is visible only internally in the Contract window. | Text |
cr.nearLegTransactionDate | No | Transaction date of the near leg. Define the transaction date with format "yyyy-MM-dd". If not set, the system automatically calculates the transaction date by deducting 2 business days from the near leg's settlement date (cr.Payment Date). From FA 3.10 onward, transaction date is applied only when forward cashflows are created based on transaction date. With configuration “Create forward cashflow securities based on the Settlement date of the leg”, forward cashflow transaction's transaction date always equals to its settlement date, regardless of the date you provide here. If your near leg is a spot, the transaction date should equal to contract date (cr.Trade Date). | yyyy-MM-dd |
cr.farLegTransactionDate | No | Transaction date of the far leg. Define the transaction date with format "yyyy-MM-dd". If not set, the system automatically calculates the transaction date by deducting 2 business days from the far leg's settlement date (cr.Far Payment Date). From FA 3.10 onward, transaction date is applied only when forward cashflows are created based on transaction date. With configuration “Create forward cashflow securities based on the Settlement date of the leg”, forward cashflow transaction's transaction date always equals to its settlement date, regardless of the date you provide here. | yyyy-MM-dd |
cr.status | No | Status of the contract, either "Accepted" (default if status has not been defined), "Not finished" or "Deleted". Determines the status of the contract and the status of the transactions generated based on the contract. Define the status asOK = AcceptedNF = Not finishedDEL = Deleted (Available from FA 3.4 onward) | OKNFDEL |
cr.contractType | Not used | When importing FX Swaps ("cr.Strata Trade Type" is "FxSwap"), contract type is always set as "FX SWAP" regardless of what you define for it in the import file. If this field contains any value, it is silently ignored. (Available from FA 3.9 onward) | No |
FX Swap by convention
When importing contracts by convention, you can define your contract in terms of the involved currency pair, and then define which of the currencies you are buying or selling, how much, and with what FX rate - the system will determine the other cashflow based on this information.
When you save your contract, the cashflow's values you define in your import file end up in the upper cashflow fields and the calculated values end up in the lower cashflow fields in the Contract window. In addition, an External ID is automatically generated for your contract.
Column name | Required | Description | Example value |
---|---|---|---|
cr.Strata Trade Type | Yes | The type of the contract: “FxSwap” (case sensitive). Other formats are not supported. | FxSwap |
cr.Trade Date | Yes | Contract date of the contract. The recommended format is "yyyy-MM-dd", but you can use other supported formats. | 2019-01-02 |
cr.Convention | Yes | The convention, which is the currency pair, such as “EUR/SEK”. The convention defines the involved currencies of the contract and the way the FX Rate should be entered. Effectively, you can state the convention as you wish, for example "EUR/SEK" or "SEK/EUR" and these are both equally valid – however, the FX rate must match with the specified convention. | EUR/SEK |
cr.Buy Sell | Yes | Define the FX as “Buy"/"Sell". You will Buy/Sell the currency you define in the "cr.Currency" field. The defined cash flow values end up in the upper fields of the near leg. | Buy |
cr.Currency | Yes | The currency of the notional amount. | EUR |
cr.Notional | Yes | The notional amount in the currency you defined in "cr.Currency". If you wish to sell a currency (SEK for instance) instead of buying, you should now enter the notional amount of the Buy currency using your sell currency and the FX Rate. | 10000 |
cr.FX Rate | Yes | The near FX rate, which must be set for the specified currency pair. If the involved currencies are EUR and SEK, you can enter the rate "9" for EUR/SEK or the inverse rate "0.111..." for "SEK/EUR". The FX rate is shown the same way the currency cross is defined in the system. If there is a "EUR/SEK" cross in the system, the rate will be shown accordingly, even if you set your convention as "SEK/EUR". Note that if the system needs to inverse your entered rate, this inversion might slightly affect the precision of your FX Rate and/or Amounts. | 9.0 |
cr.Payment Date | Yes | The payment date = settlement date of the contract's near leg, such as “2017-06-01”. The recommended format is "yyyy-MM-dd", but you can use other supported formats. | 2019-01-02 |
cr.Far FX Rate | Yes | The far FX rate, which must be set for the specified currency pair. If the involved currencies are EUR and SEK, you can enter the rate "9" for EUR/SEK or the inverse rate "0.111..." for "SEK/EUR". You need to enter both rates the same way for the defined convention. The FX rate is shown the same way the currency cross is defined in the system. If there is a "EUR/SEK" cross in the system, the rate will be shown accordingly, even if you set your convention as "SEK/EUR". Note that if the system needs to inverse your entered rate, this inversion might slightly affect the precision of your FX Rate and/or Amounts. | 9.12 |
cr.Far Payment Date | Yes | The payment date = settlement date of the contract's far leg, such as “2017-06-01”. The recommended format is "yyyy-MM-dd", but you can use other supported formats. | 2019-03-01 |
cr.shortName | Yes | Shortname = Portfolio ID | 20 |
cr.fromAccount | Yes | For FX Swaps, the "cr.fromAccount" refers to the near leg's Sell cash flow. Set this account based on what you defined in "cr.Buy Sell" and "cr.Currency". For example, if the FX is "Buy" and the currency "EUR", the account for the outgoing Sell cash flow is the portfolio's SE account number, as the other involved currency is SEK as specified by the convention. Supports "AUTO" and picks the first account (priority order) with an appropriate currency for the leg. | SE 56 7000 7000 |
cr.toAccount | Yes | For FX Swaps, the "cr.toAccount" refers to the near leg's Buy cash flow. What you defined in "cr.Buy Sell" and "cr.Currency" will inform you on how to set this account. In our example, the FX is "Buy" and the currency "EUR". Thus, the account for the incoming EUR cash flow is the portfolio's EUR account number. Supports "AUTO" and picks the first account (priority order) with an appropriate currency for the leg. | FI23 5000 5000 |
cr.Id | Required when updating contract | The identifier, that is stored in the Reference field, updates the contract if the matching ID (and the correct portfolio ID) is found in the system. If you want to update your existing contract, but your file is missing this ID, another contract will be created instead of updating the existing one. | 9 |
cr.Counterparty | No | Countercontact of the contract, enter the contact code, e.g. "JPMORGAN" | JPMORGAN |
cr.description | No | Optional description of the contract. | description |
cr.intInfo | No | Optional information you can include to your contract. | info |
cr.nearLegTransactionDate | No | The transaction date, that you can define only if your near leg is (conceptually) a forward. FX Spots and Forwads are identified based on the logic "If the settlement date is 2 days after the contract date taking involved currencies' holiday calendars into account, the trade is an FX Spot." So, when the contract date and the settlement date are 2 days apart, the near leg is a spot and the optional transaction date can't be set. In other cases, you may set the date if you wish. The supported format is "yyyy-MM-dd". Note that this should not be needed since the system calculates the date automatically for you. When not given, the transaction date is calculated by deducting 2 business days from the leg's settlement date. WARNING! If you decide to use TransactionDate fields, enter the information carefully. An example: If the near leg of your Swap contract is a spot, it is also true that the transaction date of the spot is the same as the contract date of the spot. => You cannot define a transaction date for the spot, so if you enter the near leg transaction date that's between the contract date and the near leg settlement date, the system will interpret the near leg as a forward. | 2019-06-15 |
cr.farLegTransactionDate | No | Set the transaction date of the far leg. The supported format is "yyyy-MM-dd". Note that this should not be needed since the system calculates the date automatically for you. When not given, the transaction date is calculated by deducting 2 business days from the leg's settlement date. | 2019-06-20 |
cr.contractType | Not used | Values in this field are ignored. | |
cr.nearLegType | No | Allows you to explicitly set the near leg type of your FX Swap. Define exactly as: "FX SPOT" / "FX FORWARD" | FX FORWARD |
cr.counterPortfolio | No | Portfolio ID | 123C |
Saving a contract import
Saving your contract import works the same way as saving a contract in the Contract window (see Saving a contract in FA Back reference). Saving a contract through importing saves the contract within your transactions, but also produces a contract security and future cashflow position in your portfolio, and generates relevant cashflows for the end of the contract.
Updating contract data through importing
In addition to importing new contract data to the system, you can use FA format contract files to update existing contracts saved in the system. You can update existing data by importing a new file with corrected data. The system recognizes existing contracts with values in cr.shortName and cr.id columns (the system needs to find a matching contract with the combination of portfolio and reference), and updates the contract according to the changes in the file.
Updating a contract through importing works the same way as modifying a contract in the Contract window (see Modifying a contract in FA Back reference). Updating a contract through importing updates the contract itself, but also updates the contract security and the future cashflows and cashflows.
Note
You cannot change the contract type ("cr.Strata Trade Type" or "cr.contractType") by importing a new file. Contract import also does not support updating only certain data from your contracts, but you always need to provide all contract details you want to save when updating contract data! All existing data is replaced when updating a contract through an import.