Size
Size defines how your position quantity is determined when placing an order.
- Contracts / Qty: you manually set the quantity. This sizing mode does not require balance or monetary instrument metadata and can operate without a stop, subject to the enabled risk rules.
- Risk $ / Risk amount: quantity is calculated from a cash risk budget and the risk per contract or unit up to the stop. It requires a valid stop and monetary instrument data, primarily
PointValue, plus the instrument’s quantity rules. Cash sizing itself does not require balance. - Risk %: uses the same stop-based calculation and additionally requires a valid, positive account balance.
budget_cash = balance * (displayed_percentage / 100): entering1means 1%.
Risk-based sizing starts with raw_quantity = budget_cash / risk_per_unit, then normalizes the result according to the instrument’s quantity increment and minimum. The resulting risk need not equal the budget exactly. Quantities are not universally calculated with a whole-contract floor().
The calculation engine supports fractional increments. The current TradeControl form for NinjaTrader separately requires a positive integer quantity when sending. Instrument and provider submission rules still apply.
Enabled Max risk per trade and Risk vs equity rules require a stop even in Qty or manual mode. Missing data required by the selected mode or enabled rules is Pending/Warning and prevents submission, without confirming a violation or latching the circuit breaker.
Monetary budgets and risk must use compatible currencies. If instrument and account currencies differ, explicit conversion data is required; TradeControl does not apply an implicit FX conversion. See Formulas and Calculations.