Trading

Place orders, modify price triggers, execute trades and manage positions across multiple trading instruments

Orders

Place SPOT order

POST /frontoffice/api/v3/orders

Summary

Use this method to create and submit a new order for SPOT markets.

Request

Header parameters

accountId required

The trading account identifier.

Body

order object

Order creation data.

order.marketId string

The market identifier, in the following format: {marketType}.{baseAssetId}_{quoteAssetId}, for example: spot.btc_usdt.

Must match one of the available markets returned by the Get markets endpoint.

order.side string

The order side, indicating the direction of the trade.

Possible values:

  • Buy

  • Sell

order.orderType string

The order type.

Possible values:

  • Market

  • Limit

order.timeInForce string

The time-in-force policy for the order, controlling its lifetime.

Possible values:

  • Gtc

  • Ioc

  • Fok

  • Gtd

  • Day

order.requestedAmount decimal string

The quantity of the base asset to buy or sell.

For Market orders, this represents the total base amount to fill; the executed amount may be lower if liquidity is insufficient.

order.requestedPrice decimal string | nullable

The limit price for Limit orders (the maximum price for a buy or minimum price for a sell).

Must be null or omitted for Market orders.

order.cancellationDate string | nullable

For GTD orders: The date and time when the order will be automatically canceled if not executed, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ.

Required if timeInForce is set to Gtd; ignored for other time-in-force values.

Request example
POST /frontoffice/api/v3/orders HTTP/1.1
Host: {host}
Authorization: Bearer JWT
accountId: {accountId}
Content-Type: application/json

{
  "order": {
    "marketId": "spot.btc_usdt",
    "side": "Buy",
    "orderType": "Limit",
    "timeInForce": "Gtc",
    "requestedAmount": 0.02,
    "requestedPrice": 115193.35
  }
}

Response

In case of success, an object will be returned.

Each object contains the following information:

order object

The created order.

order.marketId string

The market identifier, same as in the request.

order.marketDisplayName string

The market ticker.

order.orderId string

The unique identifier of the order assigned by the system.

order.orderType string

The order type, same as in the request.

order.side string

The order side, same as in the request.

order.status string

The current order status.

Possible values:

  • Started

  • Pending

  • Working

  • Completed

  • Cancelled

  • Expired

  • Rejected

order.source string

The source of the order.

Possible values:

  • Manual — the order was created manually via UI or API.

order.timeInForce string

The time-in-force policy, same as in the request.

order.commission decimal string

The fee charged for the execution of the order, expressed in the quote asset.

Right after the order is created commission is 0.

order.requestedAmount decimal string

The quantity of the base asset to buy or sell, same as in the request.

order.remainingAmount decimal string

The amount of the base asset that remains unfilled.

order.requestedPrice decimal string | nullable

The limit price for Limit orders, same as in the request; null for market orders.

order.executionPrice decimal string

The volume-weighted average price at which the order was executed.

order.createdAt string

The timestamp when the order was created, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ.

order.updatedAt string

The timestamp of the most recent update to the order, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ.

order.rejectDetails string

The reason and details for order rejection when status is Rejected. Currently unused and not populated.

order.cancellationDate string | nullable

The timestamp when the order was cancelled or expired, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ; null if not cancelled.

order.fillFactor decimal string

The ratio of the filled quantity to the originally requested quantity (filledAmount / requestedAmount).

Response example — 200: OK
{
  "order": {
    "marketId": "spot.btc_usdt",
    "marketDisplayName": "SPOT BTC/USDT",
    "orderId": "01K1ZTB4DB0S6Y2NH81S781BQX",
    "orderType": "Limit",
    "side": "Buy",
    "status": "Pending",
    "source": "Manual",
    "timeInForce": "Gtc",
    "commission": "0",
    "requestedAmount": "0.02",
    "remainingAmount": "0.02",
    "requestedPrice": "115193.35",
    "executionPrice": "0",
    "createdAt": "2025-08-06T13:50:13.931Z",
    "updatedAt": "2025-08-06T13:50:13.9325008Z",
    "rejectDetails": "",
    "cancellationDate": null,
    "fillFactor": "0"
  }
}

Place CFD order

POST /frontoffice/api/cfd/v4/orders

Summary

Use this method to create and submit a new order for CFD markets.

Request

Header parameters

accountId required

The trading account identifier.

Body

order object

Order creation data.

order.marketId string

The market identifier, in the following format: {marketType}.{baseAssetId}_{quoteAssetId}, for example: cfd.eth_eur.

Must match one of the available markets returned by the Get markets endpoint.

order.side string

The order side, indicating the direction of the trade.

Possible values:

  • Buy

  • Sell

order.orderType string

The order type.

Possible values:

  • Market

  • Limit

order.timeInForce string

The time-in-force policy for the order, controlling its lifetime.

Possible values:

  • Gtc

  • Ioc

  • Fok

  • Gtd

  • Day

order.requestedLotAmount decimal string

The quantity of the base asset to buy or sell, in lots. Lot size is defined per market and determines the base asset quantity represented by one lot. Upon execution, this defines the opened position size in lots.

order.requestedPrice decimal string | nullable

The limit price for Limit orders (the maximum price for a buy or minimum price for a sell).

Must be null or omitted for Market orders.

order.cancellationDate string | nullable

For GTD orders: The date and time when the order will be automatically canceled if not executed, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ.

Required if timeInForce is set to Gtd; ignored for other time-in-force values.

order.leverage integer

The leverage factor applied to the position. Leverage determines margin required to open and maintain the position (for example, with leverage 10, only 10% of the position's notional value is required as margin).

order.stopLoss object

The Stop loss settings.

order.stopLoss.price decimal string

The Stop loss price.

order.stopLoss.isTrailing boolean

Indicates if the Stop loss is Trailing.

order.takeProfit object

The Take profit settings.

order.takeProfit.price decimal string

The take profit price.

Response

In case of success, an object will be returned.

Each object contains the following information:

order object

The created order.

order.orderId string

The unique identifier of the order assigned by the system.

order.status string

The current order status.

Possible values:

  • Started

  • Pending

  • Working

  • Completed

  • Cancelled

  • Expired

  • Rejected

Place PF order

POST /frontoffice/api/perpetual/v4/orders

Summary

Use this method to create and submit a new order for Perpetual markets.

Request

Header parameters

accountId required

The trading account identifier.

Body

order object

Order creation data.

order.marketId string

The market identifier, in the following format: {marketType}.{baseAssetId}_{quoteAssetId}, for example: perp.eth_eur.

Must match one of the available markets returned by the Get markets endpoint.

order.side string

The order side, indicating the direction of the trade.

Possible values:

  • Buy

  • Sell

order.orderType string

The order type.

Possible values:

  • Market

  • Limit

order.timeInForce string

The time-in-force policy for the order, controlling its lifetime.

Possible values:

  • Gtc

  • Ioc

  • Fok

  • Gtd

  • Day

order.requestedLotAmount decimal string

The quantity of the base asset to buy or sell, in lots. Lot size is defined per market and determines the base asset quantity represented by one lot. Upon execution, this defines the opened position size in lots.

order.requestedPrice decimal string | nullable

The limit price for Limit orders (the maximum price for a buy or minimum price for a sell).

Must be null or omitted for Market orders.

order.cancellationDate string | nullable

For GTD orders: The date and time when the order will be automatically canceled if not executed, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ.

Required if timeInForce is set to Gtd; ignored for other time-in-force values.

order.leverage integer

The leverage factor applied to the position. Leverage determines margin required to open and maintain the position (for example, with leverage 10, only 10% of the position's notional value is required as margin).

order.stopLoss object

The Stop loss settings.

order.stopLoss.price decimal string

The Stop loss price.

order.stopLoss.isTrailing boolean

Indicates if the Stop loss is Trailing.

order.takeProfit object

The Take profit settings.

order.takeProfit.price decimal string

The take profit price.

Response

In case of success, an object will be returned.

Each object contains the following information:

order object

The created order.

order.orderId string

The unique identifier of the order assigned by the system.

order.status string

The current order status.

Possible values:

  • Started

  • Pending

  • Working

  • Completed

  • Cancelled

  • Expired

  • Rejected

Cancel order

DELETE /frontoffice/api/v3/orders/{orderId}

Summary

Use this method to cancel an active order placed on SPOT, CFD, or Perpetual markets.

Request

Header parameters

accountId required

The trading account identifier.

Path parameters

orderId required

The order identifier to cancel.

Response

In case of success, an object will be returned.

Each object contains the following information:

order object

The canceled order.

order.marketId string

The market identifier, same as in the request.

order.marketDisplayName string

The market ticker.

order.orderId string

The unique identifier of the order assigned by the system.

order.orderType string

The order type, same as in the request.

order.side string

The order side, same as in the request.

order.status string

The current order status.

Possible values:

  • Started

  • Pending

  • Working

  • Completed

  • Cancelled

  • Expired

  • Rejected

order.source string

The source of the order.

Possible values:

  • Manual

  • StopOrder

  • FixApi

  • System

order.timeInForce string

The time-in-force policy, same as in the request.

order.commission decimal string

The fee charged for the execution of the order, expressed in the quote asset.

order.requestedAmount decimal string

The quantity of the base asset to buy or sell, same as in the request.

order.remainingAmount decimal string

The amount of the base asset that remains unfilled.

order.requestedPrice decimal string | nullable

The limit price for Limit orders, same as in the request; null for market orders.

order.executionPrice decimal string

The volume-weighted average price at which the order was executed.

order.createdAt string

The timestamp when the order was created, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ.

order.updatedAt string

The timestamp of the most recent update to the order, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ.

order.rejectDetails string

The reason and details for order rejection when status is Rejected. Currently unused and not populated.

order.cancellationDate string | nullable

The timestamp when the order was cancelled or expired, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ; null if not cancelled.

order.fillFactor decimal string

The ratio of the filled quantity to the originally requested quantity (filledAmount / requestedAmount).

Get SPOT order data

POST /frontoffice/api/v3/order-data

Summary

Use this method to retrieve and validate order data for SPOT market orders before placing.

Request

Header parameters

accountId required

The trading account identifier.

Body

order object

The order data.

order.marketId string

The market identifier, in the following format: {marketType}.{baseAssetId}_{quoteAssetId}, for example: spot.btc_usdt.

Must match one of the available markets returned by the Get markets endpoint.

order.side string

The order side, indicating the direction of the trade.

Possible values:

  • Buy

  • Sell

order.orderType string

The order type.

Possible values:

  • Market

  • Limit

order.requestedBaseAmount decimal string | nullable

The requested amount in base asset units.

order.requestedQuoteAmount decimal string | nullable

The requested amount in quote asset units.

order.requestedPrice decimal string | nullable

The limit price for Limit orders (the maximum price for a buy or minimum price for a sell).

Must be null or omitted for Market orders.

Response

In case of success, an object will be returned.

Each object contains the following information:

baseAmount decimal string

The calculated base asset amount for the order.

quoteAmount decimal string

The calculated quote asset amount for the order.

commissionAmount decimal string

The estimated commission amount to be charged.

total decimal string

The total quote asset amount, including the estimated commission.

Get CFD order data

POST /frontoffice/api/cfd/v4/order-data

Summary

Use this method to retrieve and validate order data for CFD market orders before placing.

Request

Header parameters

accountId required

The trading account identifier.

Body

order object

The order data.

order.marketId string

The market identifier, in the following format: {marketType}.{baseAssetId}_{quoteAssetId}, for example: spot.btc_usdt.

Must match one of the available markets returned by the Get markets endpoint.

order.side string

The order side, indicating the direction of the trade.

Possible values:

  • Buy

  • Sell

order.orderType string

The order type.

Possible values:

  • Market

  • Limit

order.leverage integer

The leverage factor applied to the position. Leverage determines margin required to open and maintain the position (for example, with leverage 10, only 10% of the position's notional value is required as margin).

order.requestedLotAmount decimal string

The quantity of the base asset to buy or sell, in lots. Lot size is defined per market and determines the base asset quantity represented by one lot. Upon execution, this defines the opened position size in lots.

order.requestedPrice decimal string | nullable

The limit price for Limit orders (the maximum price for a buy or minimum price for a sell).

Must be null or omitted for Market orders.

order.takeProfit.triggerType string · enum | nullable

The trigger calculation type for Take profit.

Possible values:

  • Price

  • Rate

  • Points

  • Pnl

order.takeProfit.triggerSize decimal string | nullable

The trigger value in selected units.

order.stopLoss.triggerType string · enum | nullable

The trigger calculation type for Stop loss.

Possible values:

  • Price

  • Rate

  • Points

  • Pnl

order.stopLoss.triggerSize decimal string | nullable

The trigger value in selected units.

order.stopLoss.isTrailing boolean | nullable

If true, enables the Trailing behavior for Stop loss.

Response

In case of success, an object will be returned.

Each object contains the following information:

requiredMarginInRAT decimal string

The required margin amount, in conversion to RAT.

quoteAmount decimal string

The calculated quote asset amount for the order.

commissionAmountInRAT decimal string

The estimated commission amount to be charged, in conversion to RAT.

marginLevel decimal string | nullable

The resulting margin level.

takeProfit.price decimal string

The calculated Take profit price, based on trigger settings.

takeProfit.rate decimal string

The calculated Take profit rate.

takeProfit.points integer · int64

The calculated take profit offset, in points.

takeProfit.pnl decimal string

The projected PnL at Take profit.

stopLoss.price decimal string

The calculated Stop loss price, based on trigger settings.

stopLoss.rate decimal string

The calculated Stop loss rate.

stopLoss.points integer · int64

The calculated Stop loss offset, in points.

stopLoss.pnl decimal string

The projected PnL at Stop loss.

Get PF order data

POST /frontoffice/api/perpetual/v4/order-data

Summary

Use this method to retrieve and validate order data for Perpetual market orders before placing.

Request

Header parameters

accountId required

The trading account identifier.

Body

order object

The order data.

order.marketId string

The market identifier, in the following format: {marketType}.{baseAssetId}_{quoteAssetId}, for example: spot.btc_usdt.

Must match one of the available markets returned by the Get markets endpoint.

order.side string

The order side, indicating the direction of the trade.

Possible values:

  • Buy

  • Sell

order.orderType string

The order type.

Possible values:

  • Market

  • Limit

order.leverage integer

The leverage factor applied to the position. Leverage determines margin required to open and maintain the position (for example, with leverage 10, only 10% of the position's notional value is required as margin).

order.requestedLotAmount decimal string

The quantity of the base asset to buy or sell, in lots. Lot size is defined per market and determines the base asset quantity represented by one lot. Upon execution, this defines the opened position size in lots.

order.requestedPrice decimal string | nullable

The limit price for Limit orders (the maximum price for a buy or minimum price for a sell).

Must be null or omitted for Market orders.

order.takeProfit.triggerType string · enum | nullable

The trigger calculation type for Take profit.

Possible values:

  • Price

  • Rate

  • Points

  • Pnl

order.takeProfit.triggerSize decimal string | nullable

The trigger value in selected units.

order.stopLoss.triggerType string · enum | nullable

The trigger calculation type for Stop loss.

Possible values:

  • Price

  • Rate

  • Points

  • Pnl

order.stopLoss.triggerSize decimal string | nullable

The trigger value in selected units.

order.stopLoss.isTrailing boolean | nullable

If true, enables Trailing behavior for Stop loss.

Response

In case of success, an object will be returned.

Each object contains the following information:

requiredMarginInRAT decimal string

The required margin amount, in conversion to RAT.

quoteAmount decimal string

The calculated quote asset amount for the order.

commissionAmountInRAT decimal string

The estimated commission amount to be charged, in conversion to RAT.

marginLevel decimal string | nullable

The resulting margin level.

takeProfit.price decimal string

The calculated Take profit price, based on trigger settings.

takeProfit.rate decimal string

The calculated Take profit rate.

takeProfit.points integer · int64

The calculated take profit offset, in points.

takeProfit.pnl decimal string

The projected PnL at Take profit.

stopLoss.price decimal string

The calculated Stop loss price, based on trigger settings.

stopLoss.rate decimal string

The calculated Stop loss rate.

stopLoss.points integer · int64

The calculated Stop loss offset, in points.

stopLoss.pnl decimal string

The projected PnL at Stop loss.

Stop orders

Place SPOT Stop order

POST /frontoffice/api/v3/stop-orders

Summary

Use this method to create and submit a new Stop order for SPOT markets.

Request

Header parameters

accountId required

The trading account identifier.

Body

order object

Order creation data.

order.marketId string

The market identifier, in the following format: {marketType}.{baseAssetId}_{quoteAssetId}, for example: spot.btc_usdt.

Must match one of the available markets returned by the Get markets endpoint.

order.side string

The order side, indicating the direction of the trade.

Possible values:

  • Buy

  • Sell

order.orderType string

The order type.

Possible values:

  • Market

  • Limit

order.timeInForce string

The time-in-force policy for the order, controlling its lifetime.

Possible values:

  • Gtc

  • Ioc

  • Fok

  • Gtd

  • Day

order.requestedAmount decimal string

The quantity of the base asset to buy or sell.

For Market orders, this represents the total base amount to fill; the executed amount may be lower if liquidity is insufficient.

order.requestedPrice decimal string | nullable

The limit price for Limit orders (the maximum price for a buy or minimum price for a sell).

Must be null or omitted for Market orders.

activationPrice decimal string | nullable

The trigger price that activates the Stop order.

order.cancellationDate string | nullable

For GTD orders: The date and time when the order will be automatically canceled if not executed, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ.

Required if timeInForce is set to Gtd; ignored for other time-in-force values.

Response

In case of success, an object will be returned.

Each object contains the following information:

order object

The created order.

order.marketId string

The market identifier, same as in the request.

order.marketDisplayName string

The market ticker.

order.orderId string

The unique identifier of the order assigned by the system.

order.orderType string

The order type, same as in the request.

order.side string

The order side, same as in the request.

order.requestedPrice decimal string | nullable

The limit price for Limit orders, same as in the request; null for market orders.

activationPrice decimal string | nullable

The trigger price that activates the Stop order, same as in the request.

order.requestedAmount decimal string

The quantity of the base asset to buy or sell, same as in the request.

order.timeInForce string

The time-in-force policy, same as in the request.

order.status string

The current order status.

Possible values:

  • WaitingForActivation

  • Activated

  • Rejected

order.createdAt string

The timestamp when the order was created, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ.

order.updatedAt string

The timestamp of the most recent update to the order, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ.

order.cancellationDate string | nullable

The timestamp when the order was cancelled or expired, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ; null if not cancelled.

Place CFD Stop order

POST /frontoffice/api/cfd/v4/stop-orders

Summary

Use this method to create and submit a new Stop order for CFD markets.

Request

Header parameters

accountId required

The trading account identifier.

Body

order object

Order creation data.

order.marketId string

The market identifier, in the following format: {marketType}.{baseAssetId}_{quoteAssetId}, for example: cfd.eth_eur.

Must match one of the available markets returned by the Get markets endpoint.

order.side string

The order side, indicating the direction of the trade.

Possible values:

  • Buy

  • Sell

order.orderType string

The order type.

Possible values:

  • Market

  • Limit

order.timeInForce string

The time-in-force policy for the order, controlling its lifetime.

Possible values:

  • Gtc

  • Ioc

  • Fok

  • Gtd

  • Day

order.requestedLotAmount decimal string

The quantity of the base asset to buy or sell, in lots. Lot size is defined per market and determines the base asset quantity represented by one lot. Upon execution, this defines the opened position size in lots.

order.requestedPrice decimal string | nullable

The limit price for Limit orders (the maximum price for a buy or minimum price for a sell).

Must be null or omitted for Market orders.

order.activationPrice decimal string | nullable

The trigger price that activates the Stop order.

order.cancellationDate string | nullable

For GTD orders: The date and time when the order will be automatically canceled if not executed, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ.

Required if timeInForce is set to Gtd; ignored for other time-in-force values.

order.leverage integer

The leverage factor applied to the position. Leverage determines margin required to open and maintain the position (for example, with leverage 10, only 10% of the position's notional value is required as margin).

order.stopLoss object

The Stop loss settings.

order.stopLoss.price decimal string

The Stop loss price.

order.stopLoss.isTrailing boolean

Indicates if the Stop loss is Trailing.

order.takeProfit object

The Take profit settings.

order.takeProfit.price decimal string

The take profit price.

Response

In case of success, an object will be returned.

Each object contains the following information:

order object

The created order.

order.orderId string

The unique identifier of the order assigned by the system.

order.status string

The current order status.

Possible values:

  • WaitingForActivation

  • Activated

  • Rejected

Place PF Stop order

POST /frontoffice/api/perpetual/v4/stop-orders

Summary

Use this method to create and submit a new Stop order for Perpetual markets.

Request

Header parameters

accountId required

The trading account identifier.

Body

order object

Order creation data.

order.marketId string

The market identifier, in the following format: {marketType}.{baseAssetId}_{quoteAssetId}, for example: cfd.eth_eur.

Must match one of the available markets returned by the Get markets endpoint.

order.side string

The order side, indicating the direction of the trade.

Possible values:

  • Buy

  • Sell

order.orderType string

The order type.

Possible values:

  • Market

  • Limit

order.timeInForce string

The time-in-force policy for the order, controlling its lifetime.

Possible values:

  • Gtc

  • Ioc

  • Fok

  • Gtd

  • Day

order.requestedLotAmount decimal string

The quantity of the base asset to buy or sell, in lots. Lot size is defined per market and determines the base asset quantity represented by one lot. Upon execution, this defines the opened position size in lots.

order.requestedPrice decimal string | nullable

The limit price for Limit orders (the maximum price for a buy or minimum price for a sell).

Must be null or omitted for Market orders.

order.activationPrice decimal string | nullable

The trigger price that activates the Stop order.

order.cancellationDate string | nullable

For GTD orders: The date and time when the order will be automatically canceled if not executed, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ.

Required if timeInForce is set to Gtd; ignored for other time-in-force values.

order.leverage integer

The leverage factor applied to the position. Leverage determines margin required to open and maintain the position (for example, with leverage 10, only 10% of the position's notional value is required as margin).

order.stopLoss object

The Stop loss settings.

order.stopLoss.price decimal string

The Stop loss price.

order.stopLoss.isTrailing boolean

Indicates if the Stop loss is Trailing.

order.takeProfit object

The Take profit settings.

order.takeProfit.price decimal string

The take profit price.

Response

In case of success, an object will be returned.

Each object contains the following information:

order object

The created order.

order.orderId string

The unique identifier of the order assigned by the system.

order.status string

The current order status.

Possible values:

  • WaitingForActivation

  • Activated

  • Rejected

Cancel Stop order

DELETE /frontoffice/api/v3/stop-orders/{orderId}

Summary

Use this method to cancel an active Stop order placed on SPOT, CFD, or Perpetual markets.

Request

Header parameters

accountId required

The trading account identifier.

Path parameters

orderId required

The Stop order identifier to cancel.

Response

In case of success, an object will be returned.

Each object contains the following information:

order object

The canceled order.

order.marketId string

The market identifier, same as in the request.

order.marketDisplayName string

The market ticker.

order.orderId string

The unique identifier of the order assigned by the system.

order.orderType string

The order type, same as in the request.

order.side string

The order side, same as in the request.

order.requestedPrice decimal string | nullable

The limit price for Limit orders (the maximum price for a buy or minimum price for a sell).

Must be null or omitted for Market orders.

order.activationPrice decimal string | nullable

The trigger price that activates the Stop order.

order.requestedAmount decimal string

The quantity of the base asset to buy or sell, same as in the request.

order.timeInForce string

The time-in-force policy, same as in the request.

order.status string

The current order status.

Possible values:

  • WaitingForActivation

  • Activated

  • Rejected

order.createdAt string

The timestamp when the order was created, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ.

order.updatedAt string

The timestamp of the most recent update to the order, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ.

order.cancellationDate string | nullable

The timestamp when the order was cancelled or expired, in the following format: YYYY-MM-DDTHH:MM:SS.sssZ; null if not cancelled.

Positions

Close position

POST /frontoffice/api/v4/positions/{positionId}/close

Summary

Use this method to close a specific position entirely or partially.

Request

Header parameters

accountId required

The trading account identifier.

Path parameters

positionId required

The position identifier to close.

Body

closePositionLotAmount decimal string | nullable

The portion of the position to close, in lots.

Response

In case of success, an object will be returned.

Each object contains the following information:

positionId string

The position identifier.

Bulk close positions

POST /frontoffice/api/v4/positions/bulk-close

Summary

Use this method to close multiple positions simultaneously based on different criteria such as all positions, positive PnL only, or negative PnL only.

Request

Header parameters

accountId required

The trading account identifier.

Body

mode string required

The bulk close mode.

Possible values:

  • AllPositions — close all positions.

  • PositivePnl — close only positions with positive PnL.

  • NegativePnl — close only positions with negative PnL.

Response

In case of success, an object will be returned containing identifiers of closed positions.

Get trigger data

POST /frontoffice/api/v4/positions/{positionId}/trigger-data

Summary

Use this method to retrieve Stop loss and Take profit settings for an open position.

Request

Header parameters

accountId required

The trading account identifier.

Path parameters

positionId required

The position identifier.

Body

stopLoss.triggerType string · enum | nullable

The trigger calculation type for Stop loss.

Possible values:

  • Price

  • Rate

  • Points

  • Pnl

stopLoss.triggerSize decimal string | nullable

The trigger value in selected units.

stopLoss.isTrailing boolean | nullable

Indicates if Stop loss is Trailing.

takeProfit.triggerType string · enum | nullable

The trigger calculation type for Take profit.

Possible values:

  • Price

  • Rate

  • Points

  • Pnl

order.takeProfit.triggerSize decimal string | nullable

The trigger value in selected units.

Response

In case of success, an object will be returned.

Each object contains the following information:

takeProfit.price decimal string

The calculated Take profit price, based on trigger settings.

takeProfit.rate decimal string

The calculated Take profit rate.

takeProfit.points integer · int64

The calculated take profit offset, in points.

takeProfit.pnl decimal string

The projected PnL at Take profit.

stopLoss.price decimal string

The calculated Stop loss price, based on trigger settings.

stopLoss.rate decimal string

The calculated Stop loss rate.

stopLoss.points integer · int64

The calculated Stop loss offset, in points.

stopLoss.pnl decimal string

The projected PnL at Stop loss.

Submit triggers

PUT /frontoffice/api/v4/positions/{positionId}/triggers

Summary

Use this method to modify Stop loss and Take profit settings for an open position.

Request

Header parameters

accountId required

The trading account identifier.

Path parameters

positionId required

The position identifier.

Body

stopLoss.price decimal string

The Stop loss trigger price.

stopLoss.isTrailing boolean

If true, enables the Trailing behavior for Stop loss.

takeProfit.price decimal string

The Take profit trigger price.

Response

In case of success, an object will be returned containing the identifier of the updated position.

Commissions

Get account trading volume

GET /frontoffice/api/v3/commission/{dynamicCommissionGroupId}/account-trading-volume

Summary

Use this method to obtain a cumulative account trading volume used for calculating the commission tier.

Request

Header parameters

accountId required

The trading account identifier.

Path parameters

dynamicCommissionGroupId required

The dynamic commission group identifier.

Use Get market to obtain.

Response

In case of success, an object will be returned containing current trading volume, in RAT, for the account.

Last updated