Skip to content

Features

Development Features

When developing applications for the ScaleTrade platform, it's important to take into account a number of specific features of the API. This helps avoid typical integration issues and unexpected behavior.

Operations with Volumes

The ScaleTrade API supports two volume modes: - Standard accuracy (4 decimal places)

For this, all relevant structures and interfaces provide pairs of fields or methods.
For example: - Volume — standard accuracy

All methods using higher volume accuracy are marked with the "Ext" suffix in their names.
Standard accuracy is suitable for most trading instruments, while extended accuracy is intended primarily for cryptocurrencies.

  • Standard accuracy: The volume is specified multiplied by 100.
    Example: 100 means 1 lots.

Volumes in the ScaleTrade platform are always stored as a single value (INT64) with a fixed 8-digit accuracy.
Both standard and extended accuracy fields in interfaces refer to this same value.
For instance, setting Confirm::Volume(10000) (which means 1 lot), reading it via Confirm::VolumeExt will return 100,000,000 (also 1 lot).

In data structures (such as Tick), the field with extended accuracy has higher priority.
If both values are filled, the platform will use the extended value.
When reading, both fields are always populated by the platform.

Important:
Do not mix methods with different accuracy in a single project.
If you switch to extended volume accuracy, update all logic and integrations accordingly.


Interface-UI Correspondence

The documentation for configuration and database interfaces contains notes and illustrations describing how methods correspond to elements of the ScaleTrade backoffice interfaces.
For detailed explanations of platform features, see the relevant terminal references.
The API documentation covers mainly technical and integration aspects.


Reserved Fields in Structures

Many API structures in ScaleTrade include reserved fields.
Do not use reserved fields for your own purposes.
These fields may be removed or repurposed in future updates.


Resetting Structures

Before working with any structure, always initialize it to zero:

```cpp TradeRecord trade = {0};