Skip to main content

Handle rounding in trade order execution

Trade order execution supports adding rounding errors to ensure your trade-amount-based trade order’s trade amount exactly matches the initial requested trade amount after execution. Rounding errors might occur when execution calculates units for trade-amount-based orders and updates values - rounding error ensures your order’s original trade amount remains untouched.

How to enable rounding

Select the type for Rounding differences under Rounding type in trade order execution, if you want the trade order execution to calculate and record rounding errors on your trade-amount-based orders. Rounding errors are recorded to the Tax 2 field of your executed transactions.

3083632641.png

Example

When you have selected a "Rounding type" and you are executing a trade-amount-based order, the system calculates a rounding error to ensure the original trade amount of your order remains untouched.

You have an order to buy with 100€ and your unit price during execution is 33,33€.

-> you will get 100 / 33 = 3 units.

With these units, your trade order is updated to 3 * 33,33€ = 99,99€, which is 0,01€ different from your original order.

-> when rounding errors are enabled, execution calculates a rounding error of 100€ - 99,99€ = 0,01€ and records it into your transaction.

With this, your trade order is updated to 3 * 33,33€ + 0,01€ = 100€.

3083730945.png