Understanding the format
What is an execution-level CSV?
An execution is one filled action on a trade. Broker statements often record the opening fill on one row and the closing fill on another. Adding to a position or closing part of it creates more rows. Trading Vault uses these rows to build or update the trade in your journal.
Choose this format when the source file shows individual buys, sells, entries, or exits rather than a single row that summarizes the whole trade. A stable position or trade ID helps Trading Vault group related fills.
Position ID,Symbol,Time,Side,Action,Price,Quantity
T-42,EURUSD,2026-09-01 09:00,Buy,In,1.1000,1
T-42,EURUSD,2026-09-01 11:00,Sell,Out,1.1050,1These two data rows belong to the same EURUSD trade: one opens it and one closes it. The shared position ID connects them. Your file can use different column names and action words, which you map in the profile.
Setup
How to import an execution-level CSV file
Create and configure a profile
Set up a profile for your fill-by-fill file.
- In Trade Imports, choose New, select Custom CSV Executions, and choose the destination trade account.
- In the profile mapping, set the CSV delimiter, header setting, date and time formats, and report time zone.
Map each fill
Map the information needed to identify each opening or closing fill.
- Map symbol, execution date and time, and execution side (Buy or Sell).
- Map either trade direction (Long or Short) or an entry/exit action (In or Out). Do not map the same Buy/Sell column to both side and direction.
- Map price, quantity, position or trade ID, order ID, fill ID, costs, and protection values when available.
Filter, preview, and confirm
Check which rows will be imported and how they will be grouped.
- If the report mixes fills with balance or order events, set a row filter for the fill rows.
- Upload the CSV and review actions, grouping, duplicates, and invalid rows in the preview.
- Correct the mapping or source file if needed, then confirm the import.
What to know before importing
- A row filter supports one column and one exact, case-insensitive equals value.
- If your broker uses custom action words, enter its entry, exit, or close-by keyword in the mapping. Unrecognized actions appear as invalid rows.
- Position IDs help group related fills; fill IDs help recognize duplicates on later uploads. Files are limited to 4 MB.
- Trade imports require an eligible membership.
If something needs attention
- If actions are invalid, check whether the mapped column says In/Out, Long/Short, or Buy/Sell and set the matching keyword fields.
- If fills split into unexpected trades, check the position or trade ID mapping and review unmatched rows in import history.
- If non-trading events fail validation, add a row filter for the report’s fill event type.
File uploads show a preview before confirmation. After importing, import history can help you review unmatched or invalid rows.