Skip to main content

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:

FXSingle_FullDetails.csv

FXSingle_ByConvention.csv

FXSwap_FullDetails.csv

FXSwap_ByConvention.csv

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.

import_contract.png

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_forward_full_details.png

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.Saving a 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.