Importing Data
FTJ supports importing trade history from CSV and XLSX files. File import is available from the documented Import action in the Trades / database workflow.
This page covers file-based import. Direct cTrader, MetaTrader 4, and MetaTrader 5 workflows are covered in Broker Sync.
Supported formats
FTJ supports:
.csv.xlsx
Use the cTrader template for supported native cTrader XLSX exports. Use Custom mapping for other CSV/XLSX files.
Custom mapping
Required fields:
Symbol
Direction
EntryDate
EntryPrice
Quantity or Lots
Optional fields include ExitDate, ExitPrice, StopLoss, TakeProfit, Fees, Swap, GrossPL, NetPL, ExternalId, and Currency.
If a direction label is not recognized, FTJ asks you to map it to Long or Short.
Demo Mode import rules
Demo Mode allows real file imports under a count-based rule.
A CSV/XLSX import can start while the journal contains fewer than 20 persisted trades.
The complete selected file is processed. FTJ does not truncate the import at 20 trades.
An import may take the journal from fewer than 20 trades to more than 20 trades.
At 20 or more persisted trades, another file import cannot start.
At exactly 20 trades, existing core trade details remain editable.
Above 20 trades, core trade details and execution mutations become read-only.
Viewing, Dashboard analytics, export, deletion, journal notes, and self-reflections remain available above the limit.
Deleting to exactly 20 unlocks core editing, but import remains blocked.
Deleting below 20 re-enables import and manual trade creation.
The rule is based on the current persisted trade count. It is not a one-time import allowance. A duplicate-only import that leaves the journal below 20 does not prevent another import.
Before a Demo Mode import starts, FTJ explains that the entire file will be imported and may move the journal above the limit.
Account assignment
Select the destination FTJ journal account during import. Confirm the account before continuing.
Date and number parsing
FTJ accepts common date/time formats with and without milliseconds. Custom mapping allows an explicit date format when auto-detection is ambiguous.
Both comma and period decimal separators are supported.
Duplicate detection
FTJ uses external IDs where available and compares key trade details to avoid intentional duplicates. Re-importing the same file should normally skip records that already exist.
Import result
After import, FTJ shows a summary with:
Added
Skipped
Errors
A duplicate-only import may add no new trades. If the persisted count remains below 20, Demo Mode still permits another import.
Common questions
Will Demo Mode import only the first 20 rows?
No. An authorized import processes the complete selected file and is not truncated.
Why is Import disabled at exactly 20 trades?
New imports can start only while the journal contains fewer than 20 persisted trades. Delete to 19 or fewer, or activate a subscription/trial.
What remains available after an import takes the journal above 20?
Viewing, Dashboard analytics, export, deletion, journal notes, and self-reflections remain available. Core trade details and further imports are locked.