Skip to main content

How to Use AI (Claude or ChatGPT) to Convert an Unsupported Broker File into TradeZella's Generic CSV Format

Use any AI (Claude/ChatGPT/Gemini/Grok) to convert an unsupported broker file into TradeZella's Generic CSV format, ready to upload.

Written by Marl

If your broker isn't directly supported by TradeZella and its export doesn't fit the Generic template, an AI assistant like Claude or ChatGPT can reformat it for you — you paste in your trades, and it hands back a file that's ready to upload.

💡 Before you go this route, two quick checks can save you the trouble:

Is your broker actually unsupported? Check the List of Supported Brokers and Platforms. If yours is on it, use its direct integration instead.

Does your file just have different column names? If the data is all there and only the headers are different, you may not need AI at all — TradeZella's built-in column mapping can match your columns during upload.

If neither applies — you have a lot of trades, or a file that needs real restructuring like reformatting columns, or cleaning up a messy export — AI conversion is the way to go.

Note: Use an outside assistant like Claude or ChatGPT for this. Zella AI can't convert files yet — it's on our radar, but for now the steps below use one of those tools.

What You'll Need

  • Your trade export from your broker (CSV, Excel, or even a copied table).

  • A free or paid account with Claude or ChatGPT.

⚠️ Protect your account details. Before pasting anything into an AI tool, remove account numbers, login details, and any personal information you don't want to share. You only need the trade data itself. Keep your original file as a backup.

How Do I Convert My File?

  • Open Claude or ChatGPT.

  • Copy and paste the prompt below, then attach your broker export where the prompt asks for it.

  • Let the AI generate the converted data.

  • Copy or download the result and save it as a .csv file.

  • Review it carefully (see the checklist below) before uploading.

Which format you'll get: The prompt detects your file automatically. If each row is a completed trade (common for forex and CFD), it uses the Trade History format and keeps your broker's profit/loss and swap. If each row is a single buy or sell, it uses the Execution-Based format. Either way, the output matches a TradeZella template exactly.

For reference, the Execution-Based and Trade History templates are attached to the end of this article — open them to see the exact columns and a few example rows.

⬇ The Prompt You Can Copy

Copy everything in the box below, then paste/attach your own trade data.

I need you to convert my broker's trade export into TradeZella's Generic CSV format. Follow these rules exactly and do not deviate.

Step 1 — Choose the output format from my file's structure. Map one input row to one output row — never split or merge trades.

If each row is a completed trade with both an open and a close (e.g. an open time and a close time, or an open price and a close price — common for forex, CFD, and many futures or prop-firm exports), use the Trade History format.
If each row is a single execution (one buy or one sell — e.g. Webull), use the Execution-Based format.

State which format you used at the top of your reply.

Execution-Based format — output these 13 columns in this exact order: Date&Time, Date, Time, Symbol, Buy/Sell, Quantity, Price, Spread, Expiration, Strike, Call/Put, Commission, Fees

Leave the Date&Time column blank and fill the separate Date and Time columns.
Buy/Sell: exactly "Buy" or "Sell".

Trade History format — output these 15 columns in this exact order: Open Time, Close Time, Symbol, Direction, Volume, Open Price, Close Price, P&L, Commission, Swap, Spread, Expiration, Strike, Call/Put, Currency

Open Time and Close Time: format as YYYY-MM-DD HH:MM:SS (e.g. 2024-01-15 09:30:00).
Direction: "Buy" for a long trade, "Sell" for a short trade.
Volume: the trade size (keep fractions exactly).
P&L and Swap: copy the values my broker reported; if a value isn't in my file, leave it blank.
Currency: the trade's currency if my file has it (e.g. USD), otherwise blank.

Step 2 — Detect each trade's asset type and map these fields (both formats):

Options (symbol includes an expiry date, a strike, and CALL/PUT — e.g. "TSLA 10 Jun 2026 $380 PUT"): Symbol → ticker only (TSLA); Expiration → D MMM YY, no leading zero on the day (10 JUN 26); Strike → number only, no $ (380); Call/Put → Call or Put; Spread → Single.
Stocks (plain ticker — e.g. AAPL): Symbol → as-is; Expiration, Strike, Call/Put → blank; Spread → Stock.
Futures (root symbol, with or without a contract code — e.g. NQ, ESM25, "MNQ (U26)"): Symbol → root only (NQ, ES, MNQ); Spread → Future; Strike, Call/Put → blank. Expiration → decode the contract code using the CME month codes in Step 3, formatted MMM YY (SEP 26). If the file gives an actual expiry date, use D MMM YY instead (18 SEP 26). If there is no contract code, derive the expiry from the trade date using the CME quarterly schedule (3rd Friday of Mar/Jun/Sep/Dec — the next one on or after the trade date).
Forex: Spread → Forex; Expiration, Strike, Call/Put → blank.
Crypto: Spread → Crypto; Expiration, Strike, Call/Put → blank.
CFD: Spread → use the underlying's type (Stock, Future, Forex, or Crypto); Expiration, Strike, Call/Put → blank unless the CFD is on an option.

Step 3 — CME futures month codes: F=JAN, G=FEB, H=MAR, J=APR, K=MAY, M=JUN, N=JUL, Q=AUG, U=SEP, V=OCT, X=NOV, Z=DEC (e.g. U26 → SEP 26, M26 → JUN 26).

Step 4 — Formatting rules (apply to every row):

Language: output everything in English. If my file uses another language (for example for Buy/Sell labels or column headers), translate the values into English.
Date (Execution-Based): m/d/yy with no leading zeros (e.g. 7/21/26, not 07/21/2026).
Time (Execution-Based): 24-hour HH:MM:SS (e.g. 17:24:54). Convert from 12-hour AM/PM if needed, and strip milliseconds and timezone labels (e.g. CT, UTC, EDT).
Buy/Sell and Direction: exactly "Buy" or "Sell".
Quantity / Volume: keep the value as-is; only drop a meaningless trailing ".0" from whole numbers (e.g. 6.0 → 6). Keep real fractional sizes exactly (e.g. 0.01 for crypto, 0.1 for forex lots).
Prices: number only; strip any currency symbol.
Commission, Fees, Swap: number only; strip currency symbols. Use 0 for a blank Commission or Fees.

Step 5 — Accuracy rules (important):

Do not invent, guess, or fill in any value that isn't in my file and isn't produced by the rules above. If a value is genuinely missing, leave that cell blank.
Keep every trade. Do not drop, merge, or reorder trades.
If a row can't be converted (missing required data or an unrecognizable format), leave it out of the CSV and list those rows below the CSV under "ROWS I COULDN'T CONVERT," with a one-line reason for each.

Step 6 — Before finishing, check every output row: all columns for the format you chose are present and in order; dates and times are formatted correctly; and the required fields are filled — for Execution-Based: Date, Time, Symbol, Buy/Sell, Quantity, Price, Spread; for Trade History: Open Time, Close Time, Symbol, Direction, Volume, Open Price, Close Price. Options rows have Expiration, Strike, and Call/Put; non-options rows leave them blank.

Then output only the finished CSV (including the header row) and nothing else — apart from the "ROWS I COULDN'T CONVERT" list if there are any. Here is my file:

[paste or attach your broker export here]

How Do I Check the File Before Uploading?

AI tools can make mistakes, so review the output before importing:

  • The format matches your file — Trade History (one row per completed trade) or Execution-Based (one row per buy/sell), as noted at the top of the AI's reply.

  • Dates and times are correct and in the right format.

  • Buy/Sell or Direction is right for every row.

  • Sizes and prices match your original export.

  • No trades are missing — each row in your file produced one row in the output.

  • Spread shows the correct asset type, and options rows have the expiration, strike, and call/put.

  • Everything is in English — no leftover non-English labels or values.

  • Check the "ROWS I COULDN'T CONVERT" list (if the AI added one) and fix those trades by hand.

Fix anything that looks off, then save the file as .CSV.

How Do I Upload It to TradeZella?

Import it the same way as any Generic file:

  • Go to the Add Trade page and click Add New Account

  • Search for "Generic" and upload your CSV.

  • Your file should upload without needing to be mapped.

If you have any questions or need assistance, feel free to reach out to our support team — we're here to help!

Did this answer your question?