← All articles

How to calculate futures position size (ES, NQ, micros)

Position sizingFuturesRisk

Position sizing in futures does not work like sizing stocks, and the most expensive mistake is not arithmetic: it is using the wrong contract multiplier. An E-mini and its micro are named almost identically, move exactly the same and are worth ten times differently.

How do you calculate futures position size?

With one formula: contracts = risk in cash ÷ (stop distance in points × point value). You choose the cash risk — a percentage of the account, usually between 0.5% and 2%. Your setup chooses the stop distance. You do NOT choose the point value: the contract fixes it.

The multipliers worth keeping in front of you

CME contract specifications. They are stable — they change rarely and with notice — unlike commissions or margins.

ContractPoint valueMinimum tickTick value
ES · E-mini S&P 500$500.25$12.50
MES · Micro E-mini S&P 500$50.25$1.25
NQ · E-mini Nasdaq-100$200.25$5.00
MNQ · Micro E-mini Nasdaq-100$20.25$0.50
GC · Gold (100 oz)$1000.10$10.00
CL · WTI Crude (1,000 bbl)$1,0000.01$10.00

A worked example

A $50,000 account risking 1% per trade = $500. The setup calls for an 8-point stop on the S&P.

  • In ES: 8 points × $50 = $400 per contract. 500 ÷ 400 = 1.25 → 1 contract. Risk left unused, and no way to size finer.
  • In MES: 8 points × $5 = $40 per contract. 500 ÷ 40 = 12.5 → 12 micros. Same risk, ten times the resolution.

That is the real reason micros exist, and why an account under six figures should almost always size in micros: not because you risk less, but because you can hit the size instead of rounding to it.

What changes per platform

The arithmetic is identical across all three. What changes is where the numbers come from and how much manual work is left.

Where the balance comes fromAutomatable from outside
NinjaTraderThe account in the platformVia NinjaScript (C#), inside the platform
TradovateThe account in the cloudYes, via REST/WebSocket API
Interactive BrokersTWS API, Web API or a Flex reportYes, and with no open session if you use Flex

The costliest failure is not the formula: it is mixing currencies. If your account is in euros and the contract settles in dollars, the 1% you think you are risking is not the 1% you are risking. Convert the risk into the contract's currency BEFORE dividing.

What about margin?

Intraday margin is not your risk: it is the collateral the broker demands to open. You can have margin for ten contracts while your risk only justifies two. Always size by risk and treat margin purely as a ceiling — if the risk calculation asks for more contracts than margin allows, the ceiling wins.

Fulcrum Quant

Position sizing, IBKR portfolio sync, risk analytics and tax reporting in one place.

Join the waitlist