How futures contracts are imported
Contract codes, multipliers, why quantity is contracts and not dollars, and the two brokers whose futures exports need extra care.
What this does
Futures are the asset class where a small import mistake produces a very large wrong number, because one point of price is worth a different amount on every contract.
The multiplier is the whole story
A multiplier is the cash value of one point of movement in one contract.
P&L = (exit price - entry price) x contracts x multiplier - commission
ES has a multiplier of 50. MES, the micro version, has 5. Same chart, same price, a tenth of the money. Getting this wrong is the only way a futures import goes badly wrong, and it is why VEXA resolves multipliers from a single maintained list of contract specifications rather than letting each broker parser guess.
Contract codes
A futures symbol is a root, a month code and a year: ESH25 is March 2025 E-mini S&P 500, MGCQ6
is August 2026 Micro Gold. Both one-digit and two-digit years are read, which matters because some
brokers write MGCQ6 and others write MGCQ26 for the same contract.
VEXA reads the root to find the multiplier. Roots on the list import with the correct contract size and need nothing from you.
If a root is not on the list, the trade imports with a multiplier of 1 and a warning, which leaves the P&L understated by whatever the real multiplier is. See The unrecognized futures contract warning for what to do about it.
Quantity is contracts
Enter and read futures quantity in contracts. Ten contracts is 10, not the notional value and not
the margin. VEXA applies the multiplier itself, so entering a pre-multiplied quantity produces a
result that is wrong by the multiplier squared.
Commission
Futures commission is per contract and it matters at scale. Whether it reaches VEXA depends entirely on your export.
Tradovate order exports carry no commission at all. VEXA estimates 0.79 US dollars per contract for micro contracts and 1.29 for standard ones. That is close to typical rates and it is an estimate. If you have access to a round-trip performance report instead, which prop-firm traders usually do, upload that: it carries real fees and real net P&L, so nothing is reconstructed. See Tradovate for which export to take.
Other futures exports generally include commission, and NinjaTrader includes exchange and clearing fees as well.
Timezone
Futures trade nearly around the clock, so the day a fill lands on depends on the timezone the export was written in. NinjaTrader exports in whatever timezone the platform is set to, which for CME futures is usually Central. Set the broker server timezone to match before uploading, or every fill is shifted. See NinjaTrader for the export steps and My trades are on the wrong day for the setting.
Micro against full size
Micros and their full-size parents are separate contracts with separate roots and separate multipliers: MES against ES, MNQ against NQ, MGC against GC, MCL against CL. A position in one does not offset a position in the other, and VEXA treats them as the different instruments they are.
What you should see
On a closed futures trade: quantity in contracts, an entry and exit price matching your fills, and a P&L that agrees with your broker’s statement once commission is accounted for.
On the Portfolio page, an open futures position whose contract size could not be confirmed carries a Multiplier unverified badge. Treat that badge the same way as the import warning.
If it doesn’t work
- P&L is out by a clean factor like 50, 20 or 1000. That is the multiplier. Start with The unrecognized futures contract warning.
- P&L is out by a small amount per contract. That is commission, and on Tradovate exports it is the estimate described above.
- Everything is a day out. That is the timezone.
- You are filling in the manual template. Set the
Multipliercolumn explicitly on every futures row. See Symbol formats for the CSV template.
Related
Related
Still stuck? Email support@vexatrade.ai.