Futures and forex trading contains substantial risk and is not for every investor. An investor could potentially lose all or more than the initial investment. Risk capital is money that can be lost without jeopardizing one’s financial security or lifestyle. Only risk capital should be used for trading and only those with sufficient risk capital should consider trading. Past performance is not necessarily indicative of future results.
Hypothetical performance results have many inherent limitations, some of which are described below. No representation is being made that any account will or is likely to achieve profits or losses similar to those shown; in fact, there are frequently sharp differences between hypothetical performance results and the actual results subsequently achieved by any particular trading program. One of the limitations of hypothetical performance results is that they are generally prepared with the benefit of hindsight. In addition, hypothetical trading does not involve financial risk, and no hypothetical trading record can completely account for the impact of financial risk of actual trading. for example, the ability to withstand losses or to adhere to a particular trading program despite trading losses are material points that can also adversely affect actual trading results. There are numerous other factors related to the markets in general or to the implementation of any specific trading program that cannot be fully accounted for in the preparation of hypothetical performance results and all which can adversely affect trading results.
This trade import setup guide shows how to bring broker exports, spreadsheets, supported HTML statements, and older trade journals into Journalit without rebuilding everything by hand.
Want a shorter overview page? See trade import for your Obsidian trading journal.
What Trade Import is really for
The goal is not just to ingest files. The goal is to convert messy trade exports into clean, structured Journalit records that work with Trade Log, reviews, accounts, and dashboards.
Access Trade Import from the Home View quick links, or open the command palette with Ctrl+P and search for the trade import command.
Use broker-specific import logic when Journalit already knows the export format.
Map custom CSV or Excel columns yourself when the broker is not built in.
Get a suggested mapping when the file structure is unfamiliar or inconsistent.
Save working mappings so you do not have to solve the same import problem twice.
If your broker or platform is already supported, use the adapter first. That is usually the fastest and safest path.
Futures imports with adapter logic tailored to Tradovate export structure.
Futures trade-history imports from the TopstepX Trades module.
Trade activity exports mapped for Sierra Chart workflows.
Standard MotiveWave trade exports with entry, exit, and fee handling.
XLSX journal exports from ATAS Statistics, including the Journal sheet workflow.
Execution-level pairing with support for scale-in and scale-out flows.
Completed-order exports with pairing logic for sectioned execution data.
Bybit trade-history imports with the correct Trade History export instead of Closed P&L.
Hyperliquid trade-history imports, including the need for repeated exports on large histories.
Crypto futures imports from Blofin order-centre exports.
Replay-trade imports from FX Replay's standard export format.
Best practice
If a built-in adapter exists for your platform, use that before reaching for manual mapping. The adapter usually handles broker-specific quirks you would otherwise need to rediscover yourself.
Trade Import uses a three-step flow: upload the file, review the parsed data, then confirm the import. The flow is intentionally staged so you can catch file, mapping, and duplicate issues before anything is written to your vault.
Create the CSV, XLSX, XLS, or supported HTML export from the source platform. If you are unsure where to find the correct export, check the Broker Export Guides.
Choose the account, broker adapter, and asset type, then upload the original export file. Use the broker guide link in the upload panel when you need the exact export settings for a supported platform.

Choose the matching broker adapter, manual mapping, or AI mapping path.

Before confirming the import, verify trade count, dates, prices, P&L, validation warnings, and any broker-specific edge cases.
The preview reports one of three outcomes:
A completed preview can still contain only duplicates or blocked items. That is a matching result rather than a parsing failure.


The import step shows the trades that are ready to write, their status, and any message from matching or duplicate detection. Confirm the import only after the preview set matches what you expect.
After completion, Journalit shows the account, broker, and recently imported trades. You can open the account view or start another import from the same screen.
Quick Import is for traders who use the same account, broker adapter, and asset type repeatedly. Instead of walking through the full three-step flow every time, save a favourite Trade Import setup and drop the next broker export straight into the modal.
Quick Import reuses your chosen account, broker adapter, and asset type so routine imports start from the right configuration.
Open it from the Quick Import button in the Tools section of the Journalit sidebar.
Open it from Obsidian's command palette when you prefer keyboard-driven workflows.
Assign an Obsidian hotkey to the Quick Import command when importing is part of your daily routine.
Journalit supports direct Excel imports and selected HTML statement workflows because many brokers and tools do not produce a clean CSV.
Useful when the source exporter is Excel-native or when the CSV output is unreliable.
Map source columns directly into your own custom trade fields during import.
Extract images from supported workbooks and review them before confirming the import.
Import final realised P&L and additional fee columns when price reconstruction is incomplete or unnecessary.
Direct P&L note
Manual direct P&L imports work without a quantity mapping. If your file has trustworthy final P&L but no quantity column, you can still import it.
If a workbook contains embedded images, Journalit can extract them during the review flow. Always confirm the image-to-trade alignment before importing.
The mapping options sit together in the manual import flow. Use Direct P&L mode when your export already contains authoritative final P&L or when broker fee breakdowns matter more than reconstructing every fill manually. From the same area, you can load a local mapping template or request AI mapping suggestions.
Manual mapping is the fallback when a built-in adapter does not exist or the file format has drifted too far from the expected broker export.
Start with the CSV, XLSX, or XLS file you want to import.
Select Manual Mapping instead of a broker adapter.
Connect each source column to the corresponding Journalit field, including any custom trade fields or additional fee columns you want to preserve.
Adjust date, time, and number-format assumptions if the export uses something non-standard.
Review the parsed trades, then save the mapping if you expect to reuse the same format later.
Minimum data needed
Manual mapping needs enough information to build a valid trade. At minimum, you need symbol, entry timing, direction, and either full price/size data or a trustworthy direct P&L field.
Symbol or ticker, entry date and time, and direction.
Either entry price + exit price + quantity, or a direct P&L field that you trust.
Journalit remembers your recent broker and account selections to reduce repetitive setup.
AI mapping exists to reduce the pain of unfamiliar exports, not to replace your review judgement. It is available from the same mapping options area as local templates and Direct P&L mode, so you can combine saved mappings, AI suggestions, and the right calculation mode for the file in front of you.
Start the import and select AI Mapping.
Journalit analyses the column names and sample rows to infer likely field assignments.
Confirm that dates, prices, quantities, direction, fees, and P&L are mapped correctly before importing.
If the mapping is correct, save it as a reusable template for later imports.
Privacy note
AI mapping sends column headers and small samples for mapping help, not your full trade history. You should still review the result like any other import.
Journalit Trade Templates let you reuse and share import configurations.
Turn a successful manual or AI mapping into a reusable import template.
Generate a shareable template code after the mapping is working correctly.
Paste a shared template code and use it like another adapter in your list.
Journalit previews imports through the Journalit backend before writing local markdown notes. The preview classifies each row or trade group, identifies matches where possible, and shows which items can be imported, skipped, updated, or require manual review.
The preview uses canonical import IDs and classifications before anything is written to your vault.
Selected items are committed through the backend, then Journalit projects the committed trades into local markdown notes.
Duplicate or blocked items are not offered as normal writes, which keeps repeated imports from creating extra notes.
The result shows what was created, updated, skipped, or blocked for review.
Imported trades are treated as backend records with local Obsidian notes as the vault projection. That lets Journalit restore missing local notes without re-importing the source file or creating duplicate backend trades.
Use the restore panel in Trade Import settings when imported trade notes are missing from the current vault, were deleted locally, or need to be projected into another vault that uses the same Journalit account.
The panel shows the active vault identity and the imported trades that can be projected into that vault.
Selected trades are written back as local markdown notes while the backend trade record remains the source of truth.
Restoring a projection does not run the import as a fresh commit, so the same imported trade is not duplicated.
Import parsing is designed to avoid quiet time shifts between the source file and the final note data.
Imported trades are classified in line with your Journalit break-even settings.
Supported adapters continue to receive fixes for commission handling, symbols, and broker-specific quirks.
Need help?
Join the Discord community if you need import help or if a broker export has changed unexpectedly.
Bottom line
Trade Import is the migration path for getting existing trade history into Journalit without rebuilding it manually. Use built-in adapters when possible, fall back to manual or AI mapping when necessary, and save working templates so the problem only needs to be solved once.