Skip to main content

5. Trading: Orders

The Orders page is the operational workspace for viewing, filtering, creating, and editing client orders. It surfaces key fields required by risk, pricing, and execution, and enforces margin and trading-calendar rules from Configurations.

The table includes sortable timestamps for creation, execution (UTC), and last update to support audit and operational review.

 
Finding the Page

Left navigation → TradingOrders.

 
Orders Visibility and Permission Enforcement

Order visibility strictly follows role permissions defined in the Roles module.

The Orders page does not apply UI-only hiding.
All visibility rules are enforced server-side.
Only authorized orders are returned by the backend API.

Visibility Rules
An order is visible to a manager only if it satisfies all applicable permission checks:

1. Project Permission
If the role allows:
Projects → View all→ Orders from all projects are visible.

If the role allows:
Projects → View own→ Only orders belonging to projects assigned to the manager are visible.

2. Desk Permission
If the role allows:
Desks → View all→ Orders from all desks are visible.

If the role allows:
Desks → View own→ Only orders linked to desks assigned to the manager are visible.

3. Client Permission
If the role allows:
Clients → View all→ Orders from all clients are visible.

If the role allows:
Clients → View own→ Only orders where the client is assigned to the manager are visible.

Combined Permission Logic (Critical)
An order must pass:

(project visibility)
AND
(desk visibility)
AND
(client visibility)

If any check fails, the order is not returned by the system.

Full-Access Roles
Roles with global permissions (e.g., Admin) are not restricted and can view all orders.

 
Orders in Client Profile

Inside a client profile (Clients → select client → Orders tab), orders are separated into two tabs:

  1. Open Orders — displays only active (OPEN) orders for the selected client.
  2. Close Orders — displays only closed (CLOSE) orders for the selected client.

Behavior:
Orders are automatically filtered by the selected client.
Open Orders is active by default.
Total count reflects only that client’s orders within the selected tab.
All table sorting and timestamp columns remain available.

 
Page Layout & Controls
  1. Total — number of orders in the current view (respects filters).

  2. Filter — opens the advanced filter panel.

  3. + Add — opens the create-order form.

  4. Table — sortable columns; actions appear on each row.

 
Column Customization

The Orders table supports dynamic column visibility customization.

Users can choose which columns are visible in the table.

Accessing Column Customization
To do this, in the Filters window, click on Customize columns and choose the required columns.

This opens a dropdown panel listing all available table columns.

customization of columns.png

The column list is dynamically derived from the table configuration and always reflects the current implementation.

New columns added in future releases will automatically appear in this list.

Visibility Behavior
When a column is toggled:

  1. Visibility updates immediately.

  2. No page reload is required.

  3. Table re-renders automatically.

  4. Sorting and filtering remain functional for visible columns.

Hidden columns:

  1. Are not rendered in the DOM.

  2. Do not affect row alignment.

  3. Do not break layout or scroll behavior.

Mandatory Column Rule
At least one column must remain visible.
The system prevents hiding all columns.
If mandatory columns are defined (e.g., Actions or ID), their toggle will be disabled.
If no mandatory columns are defined, the system blocks hiding the last visible column.

Persistence
Column visibility preferences:

  1. Are saved per user.

  2. Persist after page reload.

  3. Remain consistent across sessions.

If new columns are introduced in future updates:
They default to visible.

Table Integrity
Column customization does not affect:

  1. Pagination

  2. Filtering

  3. Sorting

  4. Row actions

  5. Order editing

  6. Layout stability

The table layout remains stable when:

  1. All columns are visible.

  2. Only one column is visible.

  3. Many columns are hidden.

 
Working with Table

The Orders table displays key information about trading orders and may include different columns, depending on the current configuration and enabled system features.

To sort the data, click the header of any sortable column, such as ID, Swap, Commission, Quantity, Status, Price, etc., to sort the table in ascending or descending order.

Row actions (common)

  1. Edit: Open the edit panel for the selected order. Editing is available for both open and closed orders. 
  2. Clone: Create a new order using the selected order’s details as a prefilled template. All fields are automatically filled with the values from the original order, and the user can change them if needed before creating the new order. This action is available only for open orders.
  3. Reopen:  Reopen a previously closed order as a new active order. A new order ID is assigned, while data from the original order is used as the basis for the new order. Before reopening, the system checks whether the margin requirements are met. This action is available only for closed orders.
  4. Close/Cancel: Request order closure/cancellation where policy allows (open orders only).
  5. Delete: Delete the selected order from the list. This action is available for both open and closed orders, not only for non-executed orders. When an order is deleted, the account balance is recalculated and restored based on the order’s reserved margin and profit/loss value.
 
Filtering & Searching

Open Filter to combine multi-criteria searches. All filters are optional; applying them updates Total and the table.

Filtering general.png

Fields:

  1. Created date: Range filter (Start dateEnd date)

  2. Updated date: Range filter (Start date → End date)

  3. Executed date (UTC): Range filter based on execution timestamp recorded in UTC

  4. Client (Email, UID): Single-select from known clients

  5. Asset ID: Narrow by account/portfolio identifier

  6. Symbol: Instrument/pair

  7. SideBUY or SELL

  8. Type — e.g., MARKET (others if configured)

  9. Type of Closure: Stop, Take profit, Liquidation, Closed by client, Closed by manager

  10. Margin: Toggle to show only margin-enabled orders if your instance differentiates

Click Save in the filter panel to apply.

You can also save selected filters and quickly reuse them the next time you open the Orders table. To do this:

  • Select the required filters

  • Click Create view

  • Enter the name

  • Click Submit

Fast filters.png
 
Creating an Order

Click + Add to open the form for creating a New order (exact fields vary by enabled order types).

Create order.png

Common fields:

  1. Client / Asset ID 

  2. Symbol 

  3. Side 

  4. Volume 

  5. Limit order 

  6. Static used margin 

  7. Commission 

  8. Accumulated swap 

  9. Long or Short swap rate 

  10. Stop loss / Take profit

  11. Order in past

After selecting Order in past you have to fill Execution date & time and Opening price.

Business rules at create:

Trading calendar: The system checks the symbol’s trading schedule and time zone before creating an order. If the symbol is in a non-trading window, such as a weekend or holiday, order creation is blocked.

Margin check: The system runs pre-trade margin validation before creating an order:

Margin = Contract Size × Volume × Price / Stored Leverage

Then the account’s free balance must meet or exceed the pair’s Margin requirement (%) of the collateral. If it is insufficient, creation is rejected with an insufficient-margin error. The minimum margin level required to open an order is 40%.

Precision & steps: Price and quantity must align with the pair’s precision/minimum step.

Submit the form to place the order. On success, the order appears in the table.

 

Editing an Order

Select Edit on a row to open the side panel. Choose Buy or Sell operation, then define the required settings in the editable fields:

Editing order.png

  • Volume

  • Limit order

  • Static used margin

  • Commission

  • Accumulated swap

  • Long swap rate

  • Take profit

  • Stop loss

  • Execution date & time

  • Opening price

Click Update the Order to apply all changes.

Managers have extended control over open orders:
Order Price Adjustment – ability to modify the opening price of an order to increase or decrease profitability.
User PnL Overview – aggregate PnL across all open trades for quick monitoring and reaction.
Margin Adjustment – managers can manually add or subtract a static margin value (positive or negative) in the relevant currency, increasing or decreasing the locked margin.

Validation & behavior:

All edits are re-validated against precision, lot size, and margin availability.
If the instrument is in a non-trading window, actions may be restricted.
Saving applies changes immediately; the audit log records before/after values with user and timestamp.

Margin call notifications: 

When a trader’s available balance approaches a critical level, the platform sends staged warnings in the trading area. It is a custom setting configurable for each client. For example:

  1. At 30% of the required margin, an early warning is sent to the user.

  2. If the balance falls below 10%, one or more open positions are liquidated automatically according to platform policy.

Notifications are sent to both the user and the assigned manager. This mechanism helps users take corrective action before forced liquidation.

 

Closing/Canceling an Order

Close a position from the row actions when the status is OPEN.
Cancel applies to unfilled pending orders (if such types are enabled).
System enforces trading-calendar rules and available liquidity; resulting fills, and residuals are reflected back in the table.

 
Interaction with Other Trading Settings
  1. Configurations → Trading pairs: Spread, Commission, Swap, Margin requirement (%), Margin ratio, Lot volume, and Timezone drive order pricing, fees, and margin checks.

  2. Configurations → Weekends/Holidays: when active for a symbol’s time zone, order creation and execution are blocked.

  3. Price deltas: if active for a symbol, orders execute against the adjusted price stream during the delta window.

 
Quote Storage Optimization

Performance improvements have been implemented to optimize the storage and retrieval of price quotes. These optimizations reduce memory usage and improve throughput during high-frequency trading without altering user-facing workflows.

 
Audit & Security

Every create, edit, and close/cancel event is written to the audit log with user, time, and before/after payloads.
Permissions are role-based; elevated edits (e.g., manual margin or swap overrides) are restricted to risk/admin roles.

 
Monitoring, Health Check, and Logging

Comprehensive monitoring and statistics have been added across all trading platform services to ensure stable operations.

  1. Health checks provide continuous status indicators for each subsystem.

  2. Centralized logging aggregates events and errors into a unified store for faster issue identification.

  3. Statistics dashboards support performance analysis and proactive incident detection.

These features strengthen system stability and shorten troubleshooting time without requiring user intervention.

 
Examples
  1. Filter to open market buys for a specific client this week
    Set Created date to the current week, Client to the email/UID, Side=BUY, Type=MARKET, Status=OPEN, then Save.

  2. Create a market buy on BTC/USDT
    Choose Client/Asset ID, set Symbol=BTC/USDT, Side=BUY, Type=MARKET, Quantity=1. Submit. The system runs margin checks using the pair’s Margin ratio and Margin requirement (%).

  3. Adjust stop loss / take profit
    Open Edit on the order, set Stop loss and Take profit to desired levels consistent with instrument precision, then Save. Changes are audited.

 
Glossary (Orders)
  1. Market order — executes immediately at the best available price.

  2. Limit order — posts at a specified price; fills when price is reached.

  3. Swap — overnight fee for carrying a position to the next session (long/short specific).

  4. Lot volume — base quantity unit defined per pair.

  5. Margin requirement (%) — minimum collateral percent required to open/maintain a position.

  6. Margin ratio (leverage) — factor used in the margin formula to compute required collateral.

  7. StatusOPEN (active) or CLOSE (closed/exited).