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 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 as OK = Accepted NF = Not finished DEL = 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) |
Saving a contract import
Saving your contract import works the same way as saving a contract from the Contract window. 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 (i.e. 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 from the Contract window. 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's type ("cr.Strata Trade Type" or "cr.contractType") through importing a new file. Contract import also doesn't 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.