Settling cash to the portfolio currency at a different FX rate

Prev Next

When you book a transaction in a different currency to that of the portfolio you have the option to specify an exchange rate, either directly on the transaction itself or by asking LUSID to look up a rate for the trade date in the Quote Store.

When you load a settlement instruction for cash holdings generated by that transaction you can choose to override this trade date FX rate. LUSID can then calculate FX gain/loss between trade and settlement dates.

For example, imagine we have a standard Buy transaction for 100 units of BP @ £5 per share in a USD portfolio with the Transaction/default/TradeToPortfolioRate property set to 1.3, yielding a portfolio cost for cash of -£500 × 1.3 = -$650:

To settle the cash holding at a different FX rate:

  1. Enable LUSID to calculate FX gain/loss. See below.

  2. Either:

    1. Specify a FX rate directly on the settlement instruction. See how to do this.

    2. Ask LUSID to look up a rate for the settlement date in the Quote Store. See how to do this.

    Note if you do both, a) prevails.

Enabling LUSID to calculate FX gain/loss

To configure an existing portfolio, call the PatchPortfolioDetails API and re-specify the entire settlementConfiguration object to include calculateTradeDateToSettlementFxPnL set to true, for example:

curl -X POST "https://<your-domain>.lusid.com/api/api/transactionportfolios/Equities/UK-Growth/details"
  -H "Authorization: Bearer <your-API-access-token>"
  -H "Content-Type: application/json-patch+json"
  -d '[
  {
    "path": "/settlementConfiguration",
    "op": "add",
    "value": {
      "stockSettlement": {"method": "Automatic"},
      "cashSettlement": {
        "method": "Instructed",
        "calculateTradeDateToSettlementFxPnL": true
      },
      "deferredCashReceipt": {"method": "Instructed"}
    },
  }
]'

This feature is coming soon.

Specifying a FX rate directly on a settlement instruction

Call the UpsertSettlementInstructions API and, for a SI with a settlementCategory of CashSettlement or DeferredCashReceipt, specifyinstructionToPortfolioRate:

curl -X POST "https://<your-domain>.lusid.com/api/api/transactionportfolios/Equities/UK-Growth/settlementinstructions"
  -H "Authorization: Bearer <your-API-access-token>"
  -H "Content-Type: application/json-patch+json"
  -d '[
  {
    "settlementInstructionId": "Settle-Txn01-10-Sep-2025",
    "transactionId": "Txn01",
    "settlementCategory": "CashSettlement",
    "instrumentIdentifiers": {"Instrument/default/LusidInstrumentId": "CCY_GBP"},
    "actualSettlementDate": "2025-09-10T00:00:00.0000000+00:00",
    "units": -500,
    "instructionToPortfolioRate": 1.4
  }
]'

Follow the instructions for creating a settlement instruction and, in the Create cash settlement dialog, specify a Settlement to portfolio rate:

In our example, overriding the trade date GBP/USD rate of 1.3 with a settlement date rate of 1.4 changes the portfolio cost of the cash holding to -£500 × 1.4 = -$700:

You can audit the FX gain/loss between transation and settlement dates, for example:

Asking LUSID to look up a FX rate for the settlement date

You must first:

  1. Configure the original transaction type to use the Txn:TradeToPortfolioRate calculation.

  2. Create a recipe with a market data rule for the currency pair, for example GBP/USD.

  3. Register this recipe with the portfolio.

  4. Load a FX rate valid for the actual settlement date into the Quote Store.

See how to do this.

You must then configure the portfolio to enable look up for cash, deferred cash, or both. See below.

To configure an existing portfolio, call the PatchPortfolioDetails API and re-specify the entire settlementConfiguration object to include calculateInstructionToPortfolioRate set to true, for example:

curl -X POST "https://<your-domain>.lusid.com/api/api/transactionportfolios/Equities/UK-Growth/details"
  -H "Authorization: Bearer <your-API-access-token>"
  -H "Content-Type: application/json-patch+json"
  -d '[
  {
    "path": "/settlementConfiguration",
    "op": "add",
    "value": {
      "stockSettlement": {"method": "Automatic"},
      "cashSettlement": {
        "method": "Instructed",
        "calculateTradeDateToSettlementFxPnL": true,
        "calculateInstructionToPortfolioRate": true
      },
      "deferredCashReceipt": {"method": "Instructed"}
    },
  }
]'

Navigate to the Data Management > Portfolios dashboard, locate the portfolio to edit and, on the Details tab, enable Settlement to portfolio rate for cash and/or deferred cash: