Custom Import Schemas
If your broker isn't in our supported list, you can create a custom import schema to import trades from any CSV file. This feature lets you map your CSV columns to the fields Tradavity needs.
Custom import schemas require a PRO subscription.
When to Use Custom Schemas
Create a custom schema when:
- Your broker isn't in the supported broker list
- You have a custom trading journal export
- You're migrating from another journaling platform
- Your broker's format has changed and built-in support doesn't work
Before You Start
Before creating a schema, you'll need:
- A sample CSV file - Export a few trades from your broker
- Understanding of your CSV structure - Know what each column contains
- The date format - How dates/times are formatted in your export
- The delimiter - What separates columns (comma, semicolon, tab)
Understanding Your CSV File
Before creating a schema, open your CSV file in a text editor (like Notepad) to understand its structure.
Finding the Delimiter
The delimiter is the character that separates columns. Common delimiters:
| Delimiter | Example Line |
|---|---|
| Comma (,) | ES,Buy,5,5125.50,2025-01-15 09:30:00 |
| Semicolon (;) | ES;Buy;5;5125.50;2025-01-15 09:30:00 |
| Tab | ES Buy 5 5125.50 (wide spacing) |
| Pipe (|) | ES|Buy|5|5125.50|2025-01-15 09:30:00 |
If your broker is European, they often use semicolon (;) as the delimiter because commas are used for decimal numbers (e.g., 1.234,56 instead of 1,234.56).
Finding the Date Format
Look at a date/time in your CSV and identify the format:
| Format | Example | Description |
|---|---|---|
YYYY-MM-DD HH:mm:ss |
2025-01-15 09:30:45 | ISO format (most common) |
MM/DD/YYYY HH:mm:ss |
01/15/2025 09:30:45 | US format |
DD/MM/YYYY HH:mm:ss |
15/01/2025 09:30:45 | European format |
DD.MM.YYYY HH:mm:ss |
15.01.2025 09:30:45 | European with dots |
M/D/YYYY H:mm:ss A |
1/15/2025 9:30:45 AM | US 12-hour format |
Finding the Number Format
Check how numbers are formatted:
- US format: 1,234.56 (comma for thousands, dot for decimal)
- European format: 1.234,56 (dot for thousands, comma for decimal)
Creating a Custom Schema
Step 1: Open Schema Creation
- Go to Settings > Imports
- Click New Schema
Step 2: Basic Information
Fill in the basic settings:
- Schema Name - A descriptive name (e.g., "My Broker Orders")
- Import Type - Choose Orders or Trades (see below)
- Delimiter - Select what separates columns in your CSV
- Number Format - US or European
- Date Format - Select or enter the format matching your CSV
- Export Timezone - The timezone of timestamps in your CSV
Orders vs Trades
| Type | Use When | Required Fields |
|---|---|---|
| Orders | Your CSV has individual buy/sell orders that need to be grouped into trades | Symbol, Side, Quantity, Price, Date/Time |
| Trades | Your CSV has complete trades with entry and exit prices already matched | Symbol, Direction, Quantity, Entry Price, Entry Time |
Not sure? Look at your CSV:
- If each row is a single Buy or Sell order: Choose Orders
- If each row has both Entry Price and Exit Price: Choose Trades
Step 3: Upload Sample CSV
Upload a sample of your CSV file. This lets Tradavity:
- Detect your column headers automatically
- Show you a preview of the data
- Help you map columns correctly
The sample is stored with your schema so you can reference it later.
Step 4: Map Columns
This is the most important step. Match each column in your CSV to a Tradavity field.
Required Fields for Orders
| Field | Description |
|---|---|
| Symbol | The instrument traded (ES, AAPL, EURUSD, etc.) |
| Side (Buy/Sell) | Whether it was a buy or sell order |
| Quantity | Number of contracts or shares |
| Price | The fill/execution price |
| Date & Time | When the order was executed |
Required Fields for Trades
| Field | Description |
|---|---|
| Symbol | The instrument traded |
| Direction (Long/Short) | Whether it was a long or short trade |
| Quantity | Number of contracts or shares |
| Entry Price | The price you entered the trade |
| Entry Time | When you entered the trade |
Optional Fields
Map these if your CSV includes them:
- Exit Price - The price you exited
- Exit Time - When you exited
- Fees / Commission - Trading costs
- Gross P&L - Profit/loss before fees
- Net P&L - Profit/loss after fees
- Order ID - For grouping related orders
- Status - To filter only filled orders
- Stop Loss / Take Profit - SL/TP levels
Skipping Columns
If your CSV has columns you don't need (like Account ID, Notes, etc.), map them to Skip Column to ignore them.
Step 5: Configure Direction Values
Tell Tradavity what values in your CSV mean "buy" and "sell":
- Long / Buy values: Common values: Buy, Long, B, Bid, 1
- Short / Sell values: Common values: Sell, Short, S, Ask, -1
Enter multiple values separated by commas.
Step 6: Configure Status Filter (Optional)
If your CSV includes cancelled or pending orders, you can filter them out:
Enter values that mean "filled" or "executed" (e.g., Filled, Complete, Executed, Done)
Only rows with matching status will be imported.
Step 7: Review and Save
Review your configuration:
- Check all required fields are mapped
- Verify the preview shows correct data
- Click Create Schema to save
Using Your Custom Schema
Once created, your schema appears in the broker list when importing:
- Click Add Trade in the sidebar
- Select your asset type
- Click Import CSV
- Your custom schema appears under "Custom Schemas"
- Select it and upload your CSV
Editing a Schema
- Go to Settings > Imports
- Find your schema in the list
- Click the edit icon
- Make your changes
- Click Save Changes
Troubleshooting
"No trades found" after import
Possible causes:
- Wrong delimiter selected - check your CSV in a text editor
- Status filter is excluding all rows - check status values
- Date format doesn't match - verify dates are parsing correctly
Dates are parsing incorrectly
Solution: Use the "Detect" button to auto-detect the date format from your sample, or manually check your CSV for the exact format.
Common issues:
- MM/DD vs DD/MM confusion - US vs European format
- 12-hour vs 24-hour time - check if your CSV has AM/PM
- Timezone in the date string - select a format with "Z" if your dates include timezone
Numbers have wrong values
Cause: Wrong number format (US vs EU).
Solution:
- If your CSV shows 1.234,56: Select European number format
- If your CSV shows 1,234.56: Select US number format
Direction is always wrong (Long shows as Short)
Cause: The direction values don't match your CSV.
Solution: Check what your CSV actually says for buy/sell and enter those exact values in the direction configuration.
Orders not grouping into trades correctly
Solution:
- Map the Order ID field if your CSV has one
- Check your grouping settings in Settings > Grouping
- Use manual merge in the import preview
Import fails completely
Checklist:
- Open CSV in text editor - is it actually comma-separated?
- Check for special characters in headers
- Verify the file isn't corrupted or incomplete
- Try re-exporting from your broker
Tips for Success
- Start simple - Map only required fields first, add optional fields later
- Test with a small file - Use a few trades to verify before importing large files
- Keep your sample CSV - It helps when troubleshooting
- Document your format - Note down your broker's export settings for future reference
Limits
- Maximum 10 custom schemas per account
- Logo files: Max 500KB, square images recommended
- Sample CSV files: Max 1MB
If you're struggling to set up a custom schema, contact support with a sample of your CSV file (remove any sensitive account numbers) and we'll help you configure it.