Durable reference map
A three-stage method to reuse whenever conditions change
Keep the sequence of inputs, calculation and exception testing stable instead of relying on a market forecast.
- Align inputs and unitsGo to equations and definitionsRaw quantity・Loss at the minimum
- Reconcile the worked exampleGo to table and calculation stepsA 0.006-lot result against a 0.01-lot minimum
- Test exceptions and next checksGo to rules and counterexampleRead minimum, step and precision from the current instrument specification.
Minimum quantity is a constraint, not a rounding convention
A raw 0.006 lot can be mathematically correct and still be untradeable when the minimum is 0.01. Do not approximate it upward; first price the stop loss at 0.01.
Volume step and minimum can differ. Preserve both properties from the symbol specification in effect when the order is prepared.
- Minimum: the first permitted positive quantity
- Step: permitted increments above the minimum
- Precision: decimals accepted by the order API
If every positive step breaches the budget, output zero
When downward rounding leaves 0.00, lifting it to the minimum reverses the purpose of the limit. Store the no-trade reason, raw size, minimum-lot loss and amount of budget excess.
- Keep raw and executable size in separate fields
- Compare integer numbers of steps to avoid floating-point edge errors
- Add separate commissions before testing the floor
The boundary with contract-specification errors
This article assumes point value and contract size are already correct, then tests the quantity floor. Article 11 checks whether tick size, tick value and contract conventions differ across providers or venues. A correct minimum cannot repair a wrong loss per lot.
Use no-trade records to evaluate design alternatives
Repeated floor rejections do not justify raising the budget. They can motivate a review of products or accounts that formally support finer units, but cost, execution and protection must also be compared.
- Save stop distance and raw size on every rejection
- Monitor specification effective dates
- Recalculate every field for an alternative product
Calculation framework
Raw quantity
Read the role of each equation first, then follow the numerical example to check the decision path.
Raw quantity
Q_raw = B / (D × V)- B: loss budget in account currency
- D: stop distance in points
- V: account-currency value per point for one lot
In plain language: This is a continuous quantity before execution constraints.
When this conclusion does not apply: Calculate only when B is non-negative and D and V are positive. A correct raw result is not automatically orderable.
Loss at the minimum
L_min = Q_min × D × V- Q_min: instrument minimum order size
- D and V: inputs from the same timestamp and unit system
In plain language: If L_min exceeds B, no positive executable quantity fits the budget.
When this conclusion does not apply: Calculate only when Q_min, D and V are all positive. Include charges, execution buffer and conversion when they are separate.
Interpret minimum volume as the smallest executable loss unit
A raw quantity can be mathematically valid and still be unorderable. The symbol’s minimum volume defines the smallest positive deal, while its volume step defines permitted increments. Those fields can differ and must be read from the active instrument specification rather than inferred from a familiar 0.01 display convention.
With a JPY 600 budget, 50-point stop, and JPY 2,000 per point per lot, one lot carries JPY 100,000 of price-distance loss. Continuous division gives 0.006 lot. That result accurately expresses the affordable fraction before execution constraints; it is not permission to submit a quantity the venue does not support.
If the verified minimum is 0.01 lot, its stop loss is JPY 1,000. Because that exceeds budget by JPY 400, every positive executable amount breaches the stated boundary. The correct selected quantity is zero, accompanied by the raw result and reason, rather than an upward approximation.
A preflight view should place the continuous result beside the first executable loss. That exposes the discontinuity: affordability does not taper smoothly from 0.006 to 0.01 when the product grid begins at the larger value. The interval contains no valid order even though a formatter can print a nearby decimal.
Separate downward step rounding from upward minimum enforcement
Protective step rounding takes an affordable raw quantity and moves it down to the nearest permitted increment. Minimum enforcement asks whether any positive increment exists at or above the minimum. When 0.006 is below a 0.01 minimum, there is no downward positive step; turning it into 0.01 reverses the control direction.
Nearest-value display rounding is inappropriate for a hard monetary ceiling because it can move either way. Formatting 0.006 as 0.01 may look harmless at two decimals but changes the economic order by two-thirds. Quantity precision should follow the contract, while risk validation should use full intermediate precision and replay the executable result.
A zero result is not the same as rounding the theoretical value to zero for presentation. The record should explicitly state that minimum-lot loss exceeds budget. This distinction helps users understand that the equation worked and that the incompatibility lies between the budget, valid distance, point value, and product grid.
Verify minimum and step as independent specification fields
An instrument can have a minimum of 0.01 and a step of 0.001 above that minimum, or another combination defined by its provider. Assuming the two fields are identical can reject valid quantities or permit invalid ones. The calculation should validate minimum, step, maximum, and allowed precision as separate properties.
The specification needs a timestamp and symbol identity. A broker suffix, account type, or contract version can change the economic and execution terms even when the display name is similar. Copying yesterday’s minimum into a new symbol makes the order grid appear known while its one-lot loss and contract basis may also be different.
Missing, zero, or contradictory fields should stop order construction. A fallback to 0.01 is especially risky because it tends to create a plausible interface result. The safe output is unavailable until the current product definition can be reconciled with contract size, tick value, currencies, and costs.
Price the minimum before offering an order
The essential boundary calculation is minimum quantity multiplied by valid stop distance and monetary value per distance unit. Known costs, execution allowance, and currency conversion also belong where applicable. If the resulting account-currency amount exceeds budget, no smaller positive order exists on that grid.
In the example, 0.01 times 50 times JPY 2,000 equals JPY 1,000. The budget excess is JPY 400. This direct minimum-loss test is easier to audit than rounding the raw lot and later discovering that the order is too large, and it makes the reason for zero quantity explicit.
A positive budget below minimum-lot loss should not be treated as unused permission to alter the analytical stop. Pulling the stop closer until JPY 600 fits changes the thesis, while increasing the budget changes account policy. Both are separate decisions that need their own prior rationale.
Contrast the finer hypothetical specification without mixing contracts
The second row assumes a verified 0.001 minimum and 0.001 step while retaining the same educational loss per lot. Under those conditions, 0.006 is executable and its price-distance loss is exactly JPY 600. The row demonstrates how the quantity grid changes the no-order boundary.
It does not establish that a real alternative offers the same contract, fills, costs, or protection at finer size. A smaller minimum can accompany a different multiplier, tick value, spread, commission, or counterparty model. Every economic field must be retrieved again before comparing the products.
Transporting only the attractive 0.001 minimum into the current symbol would create a synthetic specification. The calculation might pass internally while the venue rejects the order or the loss per unit is wrong. Alternatives should be evaluated as complete contracts, not as interchangeable quantity settings.
Keep this floor test after the contract-value test
The minimum-lot boundary assumes loss per lot is already correct. Before reaching it, the system must reconcile contract size, tick size, tick value, profit currency, account conversion, and calculation mode. A correct 0.01 minimum cannot repair a point value copied from another product.
This order matters for futures, CFDs, and provider-specific symbols whose one-contract or one-lot economics differ. If one-lot loss is understated by a factor of ten, the minimum-loss test will also be understated. Both rows can look arithmetically consistent because they share the same wrong denominator.
After contract reconciliation, the current conversion and known costs complete the account-currency amount. Only then should minimum and step decide whether an affordable positive quantity exists. The audit trail should identify which stage returned zero or unavailable so specification errors are not mislabeled as minimum-volume constraints.
Represent no trade as a first-class computed state
A robust interface returns selected quantity zero, decision no trade, and a structured reason such as minimum executable loss exceeds budget. It should still display raw size, minimum-lot loss, budget, and excess. Hiding those values makes a correct boundary look like a blank or broken calculator.
The state should block downstream order construction. A warning beside an automatically populated 0.01 lot is not enough because users or integrations can ignore text while consuming the number. The executable quantity field must remain zero unless a new valid specification or authorized input set produces a positive step.
No-trade records should be retained in analysis. Excluding them makes the product appear capable of expressing every setup and can bias later reviews toward cases that passed the floor. Repeated zeros may reveal a structural mismatch worth investigating without implying that the budget should be raised.
Downstream components should consume the decision state and reason, not infer failure from a blank numeric field. An export can retain selected quantity as zero and preserve every checked input. That structure prevents another system from filling an empty value with its own default minimum.
Handle costs and execution reserves at the minimum
The JPY 1,000 example isolates price distance. A known fixed charge can consume part of JPY 600 before quantity is considered. Per-lot costs or adverse-fill distance increase minimum-lot loss. Ignoring them is most consequential near the floor because there may be no smaller positive step to absorb the addition.
A nonlinear fee schedule can require replay at the exact minimum rather than a simplified per-lot term. The model should state whether spread is embedded in the price value or fills and should avoid deducting it twice. Currency conversion needs a loss-side factor and timestamp if costs or P&L begin outside the account currency.
If a cost is unknown, the system should not silently enter zero merely to produce an order. It can return an estimate with the omission clearly bounded only if policy permits; for a hard all-in budget, unresolved required cost data should make quantity unavailable. Precision at the floor is not a substitute for complete inputs.
Test grid arithmetic with integer step counts
One implementation can convert affordable quantity into the number of permitted steps using integer or exact-decimal arithmetic. Floating-point representations such as 0.01 can otherwise create off-by-one outcomes near boundaries. The final quantity should satisfy minimum plus valid step increments and never exceed the raw affordable amount.
Tests should cover a raw value exactly at minimum, just below it, just above it, exactly on a step, and within machine precision of a step. They should also include a minimum not divisible by the step under naive assumptions. The order rules, not decimal formatting, determine the valid grid.
Backward monetary replay remains necessary even after grid validation. A correct executable increment can still exceed budget if costs, point value, or conversion were rounded too early. Preserve full precision through intermediate calculations and round only as required for the order and stated currency reporting.
Attack shortcuts that manufacture a positive quantity
An adversarial case formats 0.006 to two decimals before comparing it with the minimum; the system must not accept the displayed 0.01 as though it were the raw result. Another sets minimum and step to the same default despite different source fields. A third imports a smaller minimum from another provider without its contract value.
A policy test narrows the stop or raises the budget after the floor rejection and verifies that each action creates a new authorized input version. The calculation can recompute from changed inputs, but it should not present the result as a correction to rounding. The economic rule changed, and the history must say which one.
Boundary failures include nonpositive stop distance, nonpositive point value, negative budget, zero step, and missing precision. The safe response is unavailable rather than a negative, infinite, or default lot. A polished nonzero output from invalid inputs is more harmful than an explicit refusal.
Evaluate alternatives without turning rejection into pressure
Repeated floor rejections can motivate a design review of instruments that formally support finer economic units. The comparison should include one-unit loss, minimum, step, spread, fees, liquidity, order protection, provider model, and account-currency conversion. A smaller displayed lot does not automatically mean smaller risk.
The review should not select the alternative solely because it converts prior zeros into orders. That creates survivorship toward tradability and can overlook worse costs or execution. No positive quantity may remain the correct outcome across all suitable products under the current analytical distance and budget.
Changing the account or product can also change margin and operational constraints. Those are separate from price-distance affordability and should be displayed independently. A product that passes minimum-loss control can still fail margin, daily capacity, or permitted-instrument rules.
Rejected alternatives should remain in the comparison instead of publishing only the first finer grid that creates an order. This guards against optimizing for tradability while overlooking wider spread, higher fees, weaker protection, or a different counterparty model. The review can still conclude that no suitable alternative exists.
Store the specification snapshot that produced zero
The record needs symbol and provider, specification version and time, contract basis, point or tick value, profit and account currencies, conversion, stop, budget, raw lot, minimum, step, precision, loss at minimum, budget excess, selected lot, and reason. Every field should remain linked to one calculation ID.
If a later specification changes to 0.001, preserve the earlier 0.01 snapshot. Recomputing historical decisions with the new grid would make prior no-order outcomes disappear and could falsely suggest that the system failed. Versioning demonstrates that the boundary reflected the contract available at the time.
Downstream logs should retain whether an order was never constructed, rejected by the venue, or canceled. These states are not equivalent. A calculator zero is a pre-order decision; a venue rejection can indicate stale or incorrect specifications and should trigger reconciliation rather than be counted as the same planned no-trade event.
Interpret platform schemas as specification evidence
MetaQuotes documentation distinguishes minimum deal volume, volume step, tick value, and contract size. OANDA’s instrument schema exposes minimum trade size and trade-unit precision. These sources support the need to retrieve separate product-specific execution fields instead of assuming a universal lot grid.
They do not establish that any real instrument has the example’s JPY 2,000 point value, JPY 600 budget, or 0.001 alternative. Those inputs are hypothetical. Current provider specifications must be checked at order time, and conflicting or missing values should prevent the result from being described as executable.
The source-backed conclusion is about data structure and control order: calculate economic loss, then apply the verified quantity grid. It is not a claim that finer volume is always available or desirable. Costs, contract meaning, and execution remain part of the full comparison.
State the floor decision without disguising it as rounding
Under the hypothetical 0.01 minimum, 0.006 lot cannot be executed and 0.01 would carry JPY 1,000 against a JPY 600 budget. The selected quantity is zero. The JPY 400 excess explains the boundary more clearly than a generic message that the lot is too small. It identifies the exact grid conflict.
Under a separately verified 0.001 minimum and step with otherwise identical educational economics, 0.006 lot would be executable and replay to JPY 600. The contrast shows that the decision depends on a complete current product specification. It does not authorize mixing fields across providers.
The page does not recommend changing products, budgets, or stops. It establishes that minimum volume is a hard economic constraint and that no order is a valid calculation result. Upward rounding through the budget is not convenience; it is an undocumented increase in the modeled loss.
A final verifier should recompute minimum-lot loss from source units rather than trust the displayed decision. It can then assert that every positive permitted quantity is at least the minimum and that zero appears whenever that first unit exceeds budget. This invariant remains valid across different decimal precisions.
Decision and control rules
- Read minimum, step and precision from the current instrument specification.
- Calculate minimum-lot loss in account currency before accepting the order.
- Return zero when the number of affordable steps is zero.
- Retrieve contract size and charges again for any alternative specification.
Common failure modes
- Rounding 0.006 to 0.01 by nearest-value rules
- Treating minimum and step as the same field
- Omitting fees or conversion from minimum-lot loss
- Importing only another provider’s minimum into the current contract
Evidence and specifications
- MQL5 Reference — Symbol Properties
What this source supports: The official platform reference defines SYMBOL_VOLUME_MIN as minimum deal volume and SYMBOL_VOLUME_STEP as the minimum volume increment, alongside tick value and contract size.
- OANDA REST v20 — Instrument Definition
What this source supports: The instrument schema exposes minimumTradeSize and tradeUnitsPrecision, confirming that minimum quantity and allowed precision are instrument-specific execution constraints.
Questions to resolve
Why not round to the nearest lot step?
The budget is a ceiling. Upward rounding that crosses it is not a neutral approximation; downward rounding and the minimum test are separate operations.
Is a smaller minimum always better?
No. Contract terms, charges, spread, protection and execution can also differ. Quantity granularity alone is not a complete comparison.
Why retain a rejected calculation?
It records the stop and budget that produced the rejected raw size, allowing later specification changes or alternatives to be evaluated reproducibly.
Recalculate from current inputs
Alongside raw size, enter the instrument minimum and step and verify the account-currency loss at the smallest executable quantity.
Important: This is educational material about quantity constraints, not a recommendation to trade, change accounts or raise a budget. Actual minimums, steps and charges vary by provider and effective date.