Futures position sizing is one division: risk per trade over risk per contract. The hard part is not the math, it is doing it before every entry and accepting the answer when it says zero. Here is the formula, the same risk applied to eight CME contracts, commissions inside the calculation and how to turn it into targets.

The three numbers you decide

Every position size comes from three numbers, and only three:

  • Risk per trade, in dollars: what you accept to lose if the stop is hit. You decide it before looking at the chart.
  • Stop distance, in ticks: from the entry price to the stop. Market structure decides it, not your account.
  • Tick value of the contract: set by the exchange. ES $12.50, MES $1.25, NQ $5, MNQ $0.50, CL $10, MCL $1, GC $10, MGC $1.

The number of contracts is not a decision: it is what falls out of combining the three. If you catch yourself "deciding" how many contracts to open, one of the three was not fixed.

Risk comes from the cushion, not the balance

In your own account, risk per trade is usually expressed as a percentage of the balance. In a prop firm account the balance is not your capital: the cushion to the liquidation threshold is. A freshly opened Apex 50K has a $50,000 balance and a $2,500 cushion; "1% of the balance" is $500, which is 20% of the cushion. 5% of the cushion is $125, and that is the figure the examples below use.

If you are not sure how that cushion is computed, the guide to trailing drawdown explains it with numbers, and the risk ladder turns the cushion into a base R that rises in steps.

The formula with a full example

Two lines:

risk per contract = stop ticks × tick value (+ commissions per contract)
contracts = risk per trade ÷ risk per contract, rounded down

Example: $125 risk, long MES with the stop 8 points below the entry. Eight points are 32 ticks of 0.25; at $1.25 per tick, risk per contract is 32 × 1.25 = $40. Contracts: 125 ÷ 40 = 3.125, rounded down to 3 MES, with a real risk of $120. The $5 left over is not "used" with a fourth contract: four contracts would be $160, 28% above what you had decided.

The same risk across eight contracts

With $125 of risk and a reasonable stop for each market, this is what fits in each contract. The stops are examples, not recommendations:

ContractStopTicksTick valueRisk per contractContracts ($125)
MES8 points32$1.25$403
ES8 points32$12.50$4000
MNQ30 points120$0.50$602
NQ30 points120$5$6000
MCL$0.4040$1$403
CL$0.4040$10$4000
MGC4 points40$1$403
GC4 points40$10$4000

The reading is the same in all four mini rows: with a $2,500 cushion and 5% risk, no standard contract fits with those stops. It is not a limitation of the trader, it is the scale of the instrument. Micros exist precisely for this; in the risk plan you will see at which rung of the cushion the minis start to fit.

Commissions and slippage are part of the risk

Every contract pays a round-turn commission whether it wins or loses, and with micros and tight stops that commission is a visible share of the risk. Assume, purely as an example, $1 round turn per MES contract and a 20-tick stop (5 points): risk per contract goes from $25 to $26, and the contracts that fit in $125 drop from 5 (exactly $125) to 4 ($104). One dollar of commission took away a whole contract, because rounding down does not forgive.

Slippage cannot go into the formula exactly, but it can be measured: if your journal records the difference between the planned stop and the real exit price, you will know how many ticks to add to the stop so that computed risk equals real risk. In fast markets or around news, that margin is the difference between 5% and 7% risk.

The chart sets the stop; the size adapts

The most expensive position-sizing mistake is doing it backwards: deciding how many contracts to open first and putting the stop where it "fits". A stop placed by budget sits at an arbitrary spot on the chart, and the market finds it. The right order is always the same:

  1. Identify the level that invalidates the idea: below the swing low, the close of the breakout candle, the VWAP…
  2. Measure the distance in ticks from your planned entry to that level, with a slippage margin.
  3. Compute the contracts with your fixed risk. If it comes out at zero, that is not a signal to raise the risk: it is a signal that this entry is not for this contract.

When the stop is set from structure, size changes from one trade to the next, and that is fine: what stays constant is the risk in dollars, which is the only thing that lets you compare trades with each other.

Targets in R and scaling out

Once risk, stop and contracts are fixed, the rest of the plan is expressed in R: the stop distance is 1R. With 3 MES and an 8-point stop, each R is $120; a 2R target sits 16 points above the entry and is worth $240 gross, a 3R target 24 points and $360. Thinking in R has two practical advantages:

  • It lets you compare setups with very different stops: a +1.5R trade in CL and a +1.5R trade in MNQ are equally good, even if in dollars they look nothing alike.
  • It makes scaling out explicit: closing one contract at 1R and letting two run to 3R is a measurable decision, not a hunch, and the journal will tell you whether it improves or hurts expectancy.

Frequently asked questions

What do I do if the calculation gives me zero contracts?

Accept that this trade, with this stop and this risk, does not fit in this contract. The ways out are switching to the micro equivalent, waiting for an entry that allows a tighter stop, or raising the risk, which is the worst of the three. Rounding up "because it is only one contract" is the most common way to turn 5% risk into 20%.

Should I measure the stop in points or in ticks?

Either, as long as you convert correctly. One ES point is 4 ticks of 0.25; one CL point is 100 ticks of 0.01; one GC point is 10 ticks of 0.10. Risk per contract always comes from ticks times tick value, so working in ticks avoids mistakes.

Does risk per trade have to be the same every time?

Within one rung of your plan, yes: that is what makes trades comparable in R. What changes between rungs is the base R, not the criterion: when the cushion grows, risk rises in steps defined in advance, not because a trade "looks better".

Next step

Run the numbers for your next trade in the position size calculator and, if the result surprises you, read the comparison between intraday and end-of-day trailing to understand where that small cushion comes from.