A journal wants more per trade than the engine's trade log: the time on your own clock next to UTC, the weekday and the FX session the trade was opened in, the move in pips and in R, and room for your own setup name, notes and grade. This exporter writes exactly that, one row per trade, in a file a spreadsheet opens directly.
Columns: trade_id, symbol, side, lots, entry and exit time in UTC and in your time zone, entry_weekday, entry_session (Sydney, Tokyo, London, New York, joined with + where they overlap), entry, exit, stop and target price, price_move, pips, r_multiple, gross_pnl, commission, swap, net_pnl, currency, duration_minutes, bars_held, exit_reason, mae, mfe, and the empty setup, notes and grade.
R is the price move divided by the distance from the entry to the stop the trade was opened with. MAE and MFE are the worst and best open profit on the way, in money, as the engine recorded them. Every figure comes from the result as it is: what the result does not carry stays empty instead of being guessed.
Configuration
Field
Type
Default
Description
fileNameFile name
string
"trade_journal"
The start of the file name; the instrument and the run's seed are added, and the file ends in .csv.
layoutCSV layout
select
"comma"
comma: comma separated with a decimal point, for English spreadsheets and pandas. semicolon: semicolon separated with a decimal comma, which is what a spreadsheet set to German expects.Options: comma, semicolon
timeZoneYour time zone
string
"Europe/Berlin"
Your time zone as an IANA name, like Europe/Berlin, America/New_York or UTC. The local time and weekday columns use it, daylight saving time included.
Use it in a strategy
Not called from a strategy: after a run, choose it in the result's export menu. Exports are part of the plans that include CSV export.
What it provides
trade_journal_<instrument>_<seed>.csvFile
One CSV file, UTF-8 with a byte order mark so umlauts in your notes survive Excel, one row per trade under a header row.
Limits
Pips only for currency pairs and custom symbols that state a pip size; for an index, a metal or a share the pips column stays empty and price_move holds the move.
No R for a trade opened without a stop. MAE and MFE are empty on a result from before the engine recorded them.
Money columns are in the result's currency, the instrument's quote currency; the engine does not convert to the account currency.
The sessions are common conventions on each centre's own clock (London 08:00 to 17:00 and so on), not official hours; the FX market has none.