Trading

1. Trading: Overview

The Trading section is the control center for configuring tradable instruments and running day-to-day trading operations. It provides the baseline market calendar, price/fee/margin parameters, operational price adjustments, order management, and client-level overrides—so risk, pricing, and execution behave consistently across the platform.

What it includes

  1. Configurations – Define instrument families and trading pairs: active state, spread (pips), swaps, commission, margin requirement, leverage (margin ratio), lot volume, price precision, timezone; manage weekends/holidays and bulk import/export.

  2. Price deltas – Schedule temporary price offsets (in pips) for a symbol/pair over a time window; the adjusted price is published and used for execution during the window.

  3. Orders – View, filter, create, edit, and close client orders; enforce trading calendar and margin checks; adjust price/quantity, stop-loss, take-profit, and (where allowed) swap overrides.

  4. Trading groups – Create client segments (e.g., VIP, Watchlist) with parameter overrides at family or symbol level (commission, swaps, margin ratio, etc.); assign and order groups per client with inheritance and fallback to base pair configuration.

2. Trading: Use Cases

Use Case #1: Launching a New Trading Pair
Ops adds a new instrument under Trading → Configurations. They pick the symbols group (e.g., Crypto), click + Add symbol, and set Active, Spread (pips), Commission (pips), Margin requirement (%), Margin ratio (leverage), Lot volume, Price precision, and Timezone. From that moment, margin checks, pricing, and calendar rules apply consistently to the pair, and it becomes available to Orders.

Use Case #2: Scheduling Market Closures (Weekends/Holidays)
Risk defines a recurring non-trading window under Weekends. They choose a base timestamp, set Repeat (week/month/year), and optional work hours. For instruments with their own Timezone, the closure is evaluated in that zone. During the window no ticks are published and no orders are accepted for the affected instruments.

Use Case #3: Running a Controlled Price Simulation
For a short demo or QA scenario, an admin opens Price deltas and clicks + Add. They select a symbol, set From/To, and enter a Pips offset (positive to push price up, negative to pull it down). While active, the venue shows and executes at the adjusted price. Chaining minute-long deltas produces stepwise ramps without touching fees or spreads.

Use Case #4: Risk-Adjusting a Live Order
A risk manager filters Orders to a client’s open market positions, opens Edit, and updates Stop loss and Take profit (and, if policy allows, Price/Quantity). On save, validations enforce precision/step and re-check margin using the pair’s effective parameters (including any Trading Group overrides). The audit log records before/after values and the user.

Use Case #5: VIP Segmentation with Trading Groups
A client starts trading high notional daily. Ops goes to Trading groups to create a VIP group with Commission=0 and a higher Margin ratio, then assigns it to the client on Clients → Trading Groups. If the client later also needs a Watchlist group, ops adds it and drags the groups to set precedence. Resolution applies settings from the first group; missing fields cascade to the next group, then to the base pair configuration.

3. Trading: Configurations

The Configurations page defines market availability and all instrument/pair parameters used by pricing, margin checks, execution, and risk. It is the primary setup area for symbols in Crypto, Commodities, Forex, Stocks, Indices.

Who uses this: Admins and Risk Managers (edit); Traders and Read-only users (view).
Key actions: Add weekends/holidays, add time zones, add/edit symbols and pair parameters, import/export settings.

Finding the page

Left nav → TradingConfigurations.

You’ll see:

  1. Settings by symbols group: Settings by symbols group: group chips (Crypto, Commodities, Forex, Stocks, Indices) + Search.

  2. Weekends panel with + Add weekend.

  3. A toolbar on the right: Import, Export, + Add symbol, + Add timezone.

  4. A table of trading pairs with status and parameters.

Group switcher & search

The All tab displays all trading symbols across every group in a single view.
The All tab is selected by default when opening the page.

Group chips filter the table to a specific symbols family (e.g., Crypto).

Search… finds symbols/pairs and names:
– In All tab: across the full symbols list.
– In a specific group: only within that group.

Weekends

This block holds non-trading windows (regular weekends or recurring holidays). When a weekend rule applies, the platform does not stream ticks and does not accept orders for the target instruments.

  1. Button: + Add weekend (opens the create dialog, see §3.1).

  2. Weekend rules are evaluated in UTC at storage, but applied according to the pair’s Time zone (see §2.5 and §4) per the transcript.

Toolbar (right side)
  1. Import: bulk upload of symbol/pair parameters (see §5).

  2. Export: download current table as CSV/JSON for auditing or migration.

  3. + Add symbol: create a new tradable pair entry (see §3.2).

  4. + Add timezone: register a trading time zone selectable by symbols (see §3.3).

Trading pairs table

Columns include:

Column Meaning
Active On/Off toggle for trading the pair.
Symbol Pair code (e.g., BTC/USDT).
Name Human-readable display name.
Trading hours Time period when the pair is available for trading.
Spread Bid/Ask difference in pips (controls minimum price advantage).
Price precision Number of decimal places the price uses/rounds to.
Lot volume Base unit size for the pair (e.g., 1; in FX a “lot” may map to 100,000).
Created at / Updated at Audit timestamps.

Minimum volume

Minimum allowed trade volume for the pair.
Actions ✏️ Edit, ⛭ other pair-level tools if enabled.

How to work with the table:

  1. Click a column header where it is possible to sort table data in ascending or descending order.

  2. Select symbols using checkboxes in the table, including the header checkbox to select all rows, and apply bulk updates to Lot Size and Min Volume for multiple symbols at once.

  3. Tick the star icon near the symbol to mark it as Top and add it to favorites.

  4. Use the edit button to change settings for the specific symbol.

Dialogs and forms

Add weekend (non-trading rule)
Opens from + Add weekend.

Fields:

  1. Timestamp: base date/time (UTC storage; UI presents local or selected TZ).
  2. Repeat: week, month, or year (recurring weekend/holiday).
  3. Work from / Work to: intraday window that is allowed to trade on the repeated date; outside of it, the market is closed.

Typical weekend rule: set a timestamp on the target weekend day, Repeat=week, and leave Work from/to empty to block the full day(s); or specify partial work hours for special sessions.

Validation & rules

  1. The defined window applies to instruments in the current group or (if your instance supports targeting) to selected symbols/pairs.

  2. Overlapping rules are permitted; the most restrictive outcome wins.

  3. When a pair has its own Timezone, the engine evaluates the “closed” period in that TZ.

Add symbol (create trading pair)

Opens from + Add symbol.

Fields:

  1. Symbol (select) – required (e.g., BTC/USDT).

  2. Active (toggle) – enable trading.

  3. Name – display name (e.g., “Bitcoin vs USDT”).

  4. Swap long / Swap short – overnight fee long/short (pips).

  5. Order calculation type – present in UI, do not use (per transcript).

  6. Spread – bid/ask difference (pips).

  7. Margin requirement (%) – collateral percent required.

  8. Commission – per-order fee (pips).

  9. Margin ratio – leverage; used in margin formula.

  10. Lot volume (per symbol) – lot size is configured separately for each symbol. This makes it possible to calibrate trade volume efficiency across instruments. Use larger lots for Forex pairs or other low-volatility instruments so user trade quantities remain meaningful.

  11. Symbol configuration enhancements:
    Name — a human-readable label for the trading pair, also used for text-based search.
    Minimal Lot Volume — ensures users cannot trade with volumes below a defined threshold, validated as user_quantity * lot_volume >= minimal_lot_volume.

  12. Timezone – select IANA TZ (affects weekends).

Validation:
Numeric fields must be non-negative; Margin ratio > 0; Lot volume > 0.
Keep Spread/Swap/Commission consistent with the pair’s minimum price step/precision.
Name 1–64 chars.

Save to add the pair to the table.

Edit symbol

Click ✏️ Edit in Actions. All fields as above are editable.
Changes apply immediately for pricing/margin checks.

Add timezone

Opens from + Add timezone.

Timezone: selectable list of IANA zones (e.g., Africa/Abidjan).

Usage: Once added, the time zone becomes available in the Timezone selector for symbols/pairs.

User configuration groups

Configuration groups bundle parameters such as swap, commission, and margin, and may apply either to specific pairs or to entire trading groups.

Groups can then be assigned directly to users. When a user belongs to multiple groups, the system applies the groups in the defined priority order.

This enables flexible business policies, such as:

  1. Creating VIP groups with minimal commissions and enhanced leverage.

  2. Assigning Watchlist groups with extremely high commissions or stricter margin settings for accounts suspected of cheating or arbitrage.

Groups are maintained and edited by Admins and Risk Managers. Traders and read-only users cannot change group assignments.

Margin logic 

Used by pre-trade checks to ensure account collateral is sufficient.

Formula:

margin = (lot * price) / margin_ratio

lot — number of units/lots requested by the order.
price — current price of the instrument.
margin_ratio — leverage factor (e.g., 1000).

The platform then enforces Margin requirement (%) against this collateral.
If available balance is less than required, order creation is blocked.

Notes:

Commission and spread are accounted for by pricing/risk components.
Rounding follows Price precision and pair’s minimal step.

Import / Export

Import lets you bulk create/update pairs.

  1. Format: CSV or JSON (project-standard schema).

  2. Mode: Validate only (dry run) or Upsert (create new + update existing).

  3. CSV replace behavior: trading configurations for symbols can now be imported and exported in CSV format. If a configuration already exists for a symbol, the imported row will replace the existing configuration. This simplifies migration and setup processes.

  4. Mapping: Source columns → fields (Symbol, Active, Name, Swap long, Swap short, Spread, Margin requirement, Commission, Margin ratio, Lot volume, Timezone, optional Price precision).

  5. Report: A per-row success/error log after the run.

Export downloads the current, filtered table (CSV/JSON) including audit timestamps (Created at, Updated at). Useful for versioning and reviews.

Operational notes & best practices 
  1. Do not document or rely on “Order calculation type”—it’s a placeholder.

  2. Spread and Swap are configured in pips; ensure Price precision matches your minimum step so UI and risk math align.

  3. Lot volume calibrates user-visible quantities to meaningful exposure (e.g., FX often defines 1 lot = 100,000; in crypto/equities, use pair-specific units).

  4. Timezone at pair level controls how the weekend/holiday rules apply for that instrument (U.S. equities vs. crypto, etc.).

  5. If you need to simulate market shapes for testing, use Price deltas (separate page) in short intervals to create stepwise up/down patterns; Configurations simply defines the baseline parameters and trading calendar.

Audit & security

Every create/update/delete in Configurations is written to the audit log with user, timestamp, and before/after values (reflected by Created at / Updated at columns).
Only users with Admin/Risk Manager roles can change pair parameters and weekends; others are read-only.

Glossary
  1. Pip (Point) — minimal price increment used for spreads, swaps, commissions.

  2. SpreadAsk − Bid, quoted in pips.

  3. Swap — overnight fee for carrying positions to the next session.

  4. Margin requirement (%) — minimum collateral percent that must be free to open a trade.

  5. Margin ratio (Leverage) — factor controlling exposure vs. collateral.

  6. Lot volume — base unit size for quantity on the pair.

  7. Price precision — number of decimals used for price display and rounding.

  8. Weekend/Holiday rule — non-trading window; blocks ticks and order intake for targets.

4. Trading: Price Deltas

The Price deltas module schedules temporary price offsets (in pips) for a chosen Symbol/Pair over a defined time window. While a delta is active, the platform publishes the adjusted price and executes orders against it. All users see and trade on the shifted price for that symbol during the window.

Typical uses

  1. Staging and simulation for demos or QA.

  2. Short operational adjustments, including stepwise ramps by chaining minute windows.

  3. Temporary mitigation of third-party feed anomalies.

Finding the page

Left navigation → TradingPrice deltas.

Page layout & controls
  1. Settings by symbols group: Filter the list to Crypto, Commodities, Forex, Stocks, Indices.

  2. Total: Count of deltas in the current view.

  3. Search: Free-text filter by Symbol.

  4. + Add: Opens the Add delta price dialog.

  5. Active: Displays current price deltas that are applied now or in the future.
  6. History: Displays previous price deltas and past changes.

Table columns

  1. Symbol — target pair, e.g., BTC/USDT.

  2. From date — start of the effective window (DD/MM/YYYY hh:mm).

  3. To date — end of the window.

  4. Value — delta in price units or pips (positive or negative).

  5. Actions — edit (available for active price deltas) or delete.

Columns support sorting where indicated.

Creating a delta

Click + Add to open the form.

Fields

  1. Symbol (required): Select a single pair.

  2. From (required): Start timestamp.

  3. To (required): End timestamp.

  4. Value (required): Integer or decimal value entered in pips or price units; positive raises price, negative lowers it.

Symbol Display Format

In the Symbol dropdown, instruments are displayed using a two-line format for clarity and consistency across the platform.

Each option shows:

Line 1 — Symbol code (e.g., EURUSD, BTC/USDT)
Line 2 — Human-readable instrument name (e.g., Euro vs US Dollar, Bitcoin / US Dollar)

Example:

EURUSD
Euro vs US Dollar

BTC/USDT
Bitcoin / US Dollar

This format matches the display behavior used in:

  1. Orders → Add Order

  2. Trading Groups

  3. Trading → Configurations

The two-line format improves readability and reduces symbol selection errors.

Creating a delta → Fields:
Offset value and interval — you can specify a positive or negative price offset for a chosen pair. The minimum supported interval is 1 minute, ensuring precise short-term adjustments.

Creating a delta → Behavior:
Offsets apply to the full candle within the defined window. This includes short 1-minute bars, allowing fine-grained control.

Note: Chaining multiple 1-minute windows with small positive or negative offsets creates smooth shifts, visible ramps, or even “pump-and-dump” patterns for testing and demonstrations.

Behavior:

When the current time is within [From, To), the system adds the delta to the symbol’s price stream and trades at the adjusted price.
Example: market 905; +1000 pips → 915; −1000 pips → 895.
The offset applies to the whole bar (full candle) within the window.
Chaining short windows (e.g., 1-minute intervals) with modest pips produces visible step patterns.

Validation:

  1. From < To.

  2. Pips must be numeric (decimals supported).

  3. Conversion from pips to price respects the instrument’s minimum tick/precision; sub-tick results are rounded by instrument rules.

Overlaps & priority: Multiple deltas may overlap for the same symbol. Platform policy is last applied wins, unless your instance defines an explicit priority rule. Prefer non-overlapping windows for deterministic behavior.

Save to persist the rule.

Managing deltas

Delete: removes the rule immediately. If it was active, price reverts to the unadjusted stream.
Audit: creating and deleting deltas are logged with user, timestamp, and parameters.

Interaction with other Trading settings

Spread, Commission, Swaps from Configurations still apply after the delta; the delta shifts the base price, not fees.
Weekends/Holidays: if a non-trading window closes the market, deltas have no effect during the closure; they resume if still within time when trading reopens.
Timezone: deltas are stored/evaluated in UTC; coordinate any time conversions with the symbol’s trading hours if needed.

Best practices
  1. Use short windows (1–5 min) for tests; chain them to shape controlled ramps.

  2. Record reason/issue ticket in your ops notes whenever applying a production delta.

  3. Avoid overlaps unless you explicitly rely on the latest-wins behavior.

  4. Coordinate with Risk before applying large negative deltas to liquid markets.

  5. Keep a ready rollback step (e.g., planned delete at hand).

Examples
  1. Month-long uplift
    Symbol=SOL/USDT, From=01/09 00:00, To=30/09 00:00, Pips=+3333 → continuous positive offset for the month.

  2. Five-minute demo staircase
    Create 5 consecutive 1-minute windows on BTC/USDT with Pips=+200 each to show a clear step-up pattern.

  3. Temporary offset for feed issue
    ETH/USDT, From=24/10 00:00, To=28/10 00:00, Pips=+111.0 to neutralize a known pricing discrepancy during that period.

Limitations & notes

Deltas affect only the targeted symbol; crosses or synthetics require their own deltas.
Historical OHLC may reflect adjusted prices for “as-traded” storage; confirm your data policy.
Monitoring is recommended for unusually large or long-lived deltas.
Candle data and historical OHLC records are stored per broker. Changes in price or trading settings for one broker do not affect others. Historical as-traded data reflects only the broker’s own feed.



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:

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.

In the Buy/Sell modal, the system also displays the trading conditions (Calculation type, Lot size, Leverage) and the working hours for the selected trading pair. These hours are based on the trading schedule configured for the symbol.

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

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 and Stop out notifications: 

When a trader’s available balance approaches a critical level, the platform sends staged warnings. 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).

6. Trading: Trading Groups

Trading Groups define leverage and trading parameter overrides for clients registered within the system.

Trading Groups are the single source of truth for leverage.
Symbols and Trading Pairs do not define or influence leverage in any margin, execution, or risk calculation.

Finding the Page

Left navigation → Trading → Trading groups

Page Layout & Controls

+ Add — Opens the Add Trading Group form.

Search Field — Allows users to search for trading groups by entering relevant keywords or identifiers.

Total — Shows the number of trading groups displayed in the table.

Locked Leverage Groups

The system includes 5 predefined, locked Trading Groups:

  1. Leverage 1:10

  2. Leverage 1:100

  3. Leverage 1:200

  4. Leverage 1:400

  5. Leverage 1:500

These groups:

  1. Can be modified or deleted

  2. Can define category-level overrides

  3. Are available for assignment to any client

On account creation: The system automatically assigns a trading group, which is marked as default.

Creating a Trading Group

Click + Add

Add trading group 1.png

General Section

Example:
1:10
1:100
1:400

Click Save

Group Configuration Overrides

To add specific values for Symbols and Symbol groups for the trading group, select the group from the Trading groups table and choose one of the actions you need: add Symbol or Symbol group.

Trading groups overrides.png

You may define overrides for the following Symbol groups:

  1. Forex

  2. Crypto

  3. Commodities

  4. Stocks

  5. Indices

Example:

*Example values are provided for demonstration purposes only

To define configurations for specific Symbols (trading pairs) like BTC/USDT, ETH/BTC, or NEO/USDT, set configurations for each field:

Example:

*Example values are provided for demonstration purposes only. 

If no override exists, the group applies the default configurations.

What Trading Groups Can Override

Trading Groups may override:

  1. Commission

  2. Swap long

  3. Swap short

  4. Category-level leverage

They do NOT override:

  1. Price feeds

  2. Tick size

  3. Contract size

  4. Trading hours

  5. Weekend rules

  6. Price deltas

The following is no longer supported:

  1. Margin ratio defined on Symbols

  2. Leverage defined in Trading → Configurations

  3. Multiple group stacking for leverage resolution

Leverage resolution is strictly: Account → Trading Group → Category Override → Effective Leverage

 
Assigning Trading Group to an Account

When a new client is created inside our system, it automatically assigns the trading group marked as default.

This group serves as the initial trading configuration for all newly registered accounts and defines leverage, swaps, and commission settings. Values for specific Symbols or Symbol Groups are not defined by default.

The assigned Trading Group can be changed manually later if the client requires different trading conditions.

To change the Default group:

Clients (trading groups).png

2. Click Edit on the right side of the table

Edit client (trading groups).png

3. Select Trading Groups in the table header

Trading groups 3.png

4. Click Replace and select the required option from the drop-down list

Trading groups 1.png

You can also add values for specific Symbols or Symbol Groups within this Default group. For example, if you need to add custom values for crypto trades, open the window with the current values for the Default group and click Add to configure settings.

Overrides2.png

Then:

  1. In the window that opens, select the required category from the drop-down menu.

  2. Assign values for Swap Long, Swap Short, Leverage, and Commission.

  3. Save the changes.

In this way, you can define all required specific settings.

Hierarchy of Values

When the client initiates a buy or sell trade, the system determines which value configuration to use as follows:

This creates the following hierarchy for applying value configurations:

Symbol → Symbol Group → Trading Group


Changing the Default group to the Priority group

If your client requires specific configurations for Symbols or Symbol Groups, you can change their default Trading Group to the Priority Group.

Follow these steps:

Prioritize trading group.png

  1. Choose the client in the Clients module that requires changes

  2. Click Edit on the right side of the table

  3. Select Trading Groups in the table header

  4. Click + Prioritize Trading Group and select the required option from the drop-down list

  5. Click Save

  6. In the Priority Group Settings window, choose a specific Symbol Group or Symbol and set the required values

In this case, the hierarchy for applying configurations will be as follows:

  1. Symbols in the Priority Group

  2. Symbol Groups in the Priority Group

  3. Symbols in the Default Group

  4. Symbol Groups in the Default Group

  5. Default configurations of the Trading Group

The system must always have one active Trading Group assigned to each client before trading is allowed.

Multiple group ordering logic is no longer used for leverage.

Specifics of Changing Trading Group

If the account has open positions, a modal appears:

Recalculate margin for current open positions?
Yes / No

If "Yes" Selected

  1. All open positions are recalculated using new effective leverage

  2. Margin requirement updates immediately

  3. Liquidation levels adjust accordingly

If "No" Selected

  1. Existing positions keep original leverage and margin

  2. New orders use the new Trading Group leverage

  3. Stored leverage on positions remains unchanged

Position Leverage Storage

At order execution:

  1. Effective leverage is calculated

  2. That leverage is stored on the Position

  3. It becomes immutable

Stored leverage is used for:

  1. Margin maintenance

  2. Liquidation checks

  3. Risk monitoring

  4. PnL exposure logic

If Trading Group changes later and "No recalculation" was selected:
Existing positions continue using stored leverage.

Leverage Architecture

Core Principle
Leverage is resolved exclusively through Trading Groups.
Symbols and Trading Pairs never define leverage.

Effective Leverage Resolution
When an order is placed:

  1. System reads the account’s Trading Group

  2. System checks for an instrument category override

  3. If override exists → use override leverage

  4. If no override exists → use group default leverage

Effective Leverage =
Category Override (if exists)
else Group Default Leverage

The effective leverage is:

  1. Applied during margin validation

  2. Stored on the Position at execution

  3. Used later for liquidation and risk logic

 
Margin Calculation

Margin is calculated using stored leverage on the position:
Margin = Contract Size × Volume × Price / Stored Leverage

For example:

  1. Contract Size = 100,000

  2. Volume = 0.1 lot

  3. Price = 1.1000

  4. Stored Leverage = 100

Calculation:

The system does not read leverage from:

  1. Symbol

  2. Trading pair configuration

  3. Historical group values

Only stored leverage is authoritative.

 
Editing & Deleting Groups

Edit
Open the form → Modify values → Save.

Changes affect:

  1. New orders immediately

  2. Existing positions only if recalculation was selected

Delete
Deleting a group:

  1. Removes it from availability

  2. Does not delete historical stored leverage on positions

Locked default groups cannot be deleted.

Interaction With Trading Configuration
Trading → Configurations remains baseline for:

  1. Symbol setup

  2. Contract size

  3. Trading hours

  4. Swap defaults (if not overridden)

  5. Commission defaults (if not overridden)

Leverage is never read from Trading pairs.

Best Practices

  1. Use predefined leverage groups whenever possible.

  2. Avoid excessive category overrides unless required by risk policy.

  3. Review open positions before changing leverage for large accounts.

  4. Use clear and descriptive Names. Label is generated automatically.

  5. Document internal criteria for assigning leverage tiers.

 
Glossary

Trading Group
Container defining leverage and trading parameter overrides for clients.

Default Leverage
Base leverage defined at group level.

Category Override
Optional leverage rule for instrument family.

Effective Leverage
Leverage resolved at order execution.

Stored Leverage
Immutable leverage saved on a Position at creation time.