---
title: "How do I import rebalance targets from a CSV file?"
slug: "importing-rebalance-targets-from-a-csv-file"
updated: 2024-11-25T10:47:18Z
published: 2024-11-25T10:47:18Z
canonical: "support.lusid.com/importing-rebalance-targets-from-a-csv-file"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://support.lusid.com/llms.txt
> Use this file to discover all available pages before exploring further.

# How do I import rebalance targets from a CSV file?

The **Rebalance** dashboard in the LUSID web app has an **Import** button that enables you to import rebalance targets directly from a CSV file. Each target is either mapped to an existing holding in your portfolio or, for instruments not currently held, added as a new row so you can subsequently generate orders to [rebalance your portfolio as usual](/v1/docs/what-is-rebalancing-in-lusid).

To import your rebalance targets, follow these steps:

## Step 1: Prepare your CSV file

LUSID imports your rebalance targets from a CSV file, one target per row. You must ensure your CSV file contains the following columns for each row:

- Optionally, the `PortfolioScope` for the instrument. If not specified, the `PortfolioCode` is used to match against existing data.
- The `PortfolioCode` for the instrument.
- Optionally, the `InstrumentScope`. If not specified, the value is set to `default`.
- A [unique](/v1/docs/what-are-unique-and-non-unique-identifiers) instrument `IdentifierType` and `Identifier` value to match on, for example `LusidInstrumentId`, `Figi`, or any custom instrument identifier type from your LUSID instance.
- Optionally, any [sub-holding keys (SHK)](/v1/docs/what-is-a-sub-holding-key-shk) and values to apply to the row. The column names must be of the form `Shk_1` and `ShkValue_1` , `Shk_2` and `ShkValue_2`, and so on. The SHK must be in the format `&lt;domain&gt;/&lt;scope&gt;/&lt;code&gt;`.
- One `Instruction` out of the following:
  - `targetEndWeight`
  - `weightChange`
  - `targetEndExposure`
  - `exposureChange`
  - `targetQuantity`
  - `orderQuantity`
- A number `Value` for the chosen instruction.

For example:

```plaintext
PortfolioScope,PortfolioCode,InstrumentScope,IdentifierType,Identifier,Instruction,Value
Finbourne-Examples,EU,Finbourne-Examples,Figi,BBG000HTY3H5,targetEndWeight,5
Finbourne-Examples,EU,Finbourne-Examples,Figi,BBG001DNY7R0,weightChange,3
Finbourne-Examples,EU,Finbourne-Examples,Figi,BBG001S624Z4,targetQuantity,100
Finbourne-Examples,EU,Finbourne-Examples,Figi,BBG000C40HS9,targetEndExposure,100000
```

You can download the CSV file for the example above here:

[](https://cdn.document360.io/d575ad81-c0ed-4980-bbd1-d59ac5c3de82/Images/Documentation/targets(1).csv)targets407 Byte[](https://cdn.document360.io/d575ad81-c0ed-4980-bbd1-d59ac5c3de82/Images/Documentation/targets(1).csv)

If you want to include SHKs in your targets, your CSV file might look like this:

```plaintext
PortfolioScope,PortfolioCode,InstrumentScope,IdentifierType,Identifier,Shk_1,ShkValue_1,Instruction,Value
Finbourne-Examples,EU,Finbourne-Examples,Figi,BBG000HTY3H5,Transactions/Finbourne-Examples/InvestmentStrategy,Growth,targetEndWeight,10
Finbourne-Examples,EU,Finbourne-Examples,Figi,BBG001DNY7R0,weightChange,Transactions/Finbourne-Examples/InvestmentStrategy,Income,2
```

[](https://cdn.document360.io/d575ad81-c0ed-4980-bbd1-d59ac5c3de82/Images/Documentation/targets-with-SHKs.csv)targets-with-SHKs377 Byte[](https://cdn.document360.io/d575ad81-c0ed-4980-bbd1-d59ac5c3de82/Images/Documentation/targets-with-SHKs.csv)

## Step 2: Import your targets

Once your is CSV file is prepared, you can select **Import** and upload your targets to the Rebalance dashboard.

![](https://cdn.document360.io/d575ad81-c0ed-4980-bbd1-d59ac5c3de82/Images/Documentation/image(363).png)

You can check the Import Wizard preview of your data before going ahead with the import: ![](https://cdn.document360.io/d575ad81-c0ed-4980-bbd1-d59ac5c3de82/Images/Documentation/image(370).png)

After selecting **Import**, LUSID populates the Rebalance dashboard with your targets:

- For instruments in your CSV file which already exist in the portfolio or portfolio group, the relevant figures are adjusted.
- Any new instruments (that is, instruments with no holdings - instruments must already be [mastered in LUSID](/v1/docs/how-do-i-master-an-instrument)) are added to the dashboard and factored into the figures across the rows.

![](https://cdn.document360.io/d575ad81-c0ed-4980-bbd1-d59ac5c3de82/Images/Documentation/image(367).png)

At this point you can choose to make further adjustments to your targets, such as [setting a rebalance configuration](/v1/docs/configuring-rebalancing-use-cases-in-the-rebalance-dashboard) across multiple rows, or manually inputting figures to particular cells.

When you’re ready, you can select **Generate orders** and have LUSID create the [orders](/v1/docs/what-is-an-order-in-lusid) necessary to complete your portfolio or portfolio group rebalance:

![](https://cdn.document360.io/d575ad81-c0ed-4980-bbd1-d59ac5c3de82/Images/Documentation/image(372).png)

Your position in an underlying instrument held in a transaction portfolio. LUSID does not maintain a static record of your holdings in a portfolio but rather generates them on demand from the stored history of transactions, replayed in date order.

## Related

- [Using the Rebalance dashboard control panel](/configuring-rebalancing-use-cases-in-the-rebalance-dashboard.md)
