Helpdesk
  • Overview
    • Welcome to Finery Markets
    • About Our Products
      • FM Liquidity Match
        • Master Account
        • Sub-Account
      • FM Pulse
      • White Label solution
  • Product Features
    • Onboarding
    • Risk Management
    • Trading
      • Aggregated Order Book
      • Firm Order Book
      • Pending Limit Orders (GTC)
      • RFQ
      • Toxic Flow Protection
      • Markups
      • Authorized trading
      • Non-Deliverable Trading
      • Voice Trading
      • Interdealer Trading
    • Position Management
    • Settlements
      • Automated Settlements
      • Addresses
    • Control Center
      • Multi-Roles
      • Notifications
      • Reporting
      • Bulk Edit
    • Referral program
  • API Reference
    • Quick Start with API
      • For Market Makers
      • For Takers
    • Data Types
    • REST API
      • Client management
        • getSubaccounts
      • RFQ
        • getSettings
        • getSettings (authorized)
        • getUserSettings (authorized)
        • setUserSettings (authorized)
        • getProviders
        • getSessions
      • Trading
        • add
        • add (authorized)
        • Pending limit orders
          • add (pending limit order)
          • add (pending limit order) (authorized)
          • del
          • del (authorized)
          • delAll
          • delAll (authorized)
          • orders
          • orders (authorized)
        • mod
        • del
        • delAll
        • book
        • voiceTrade
        • liquidationTrade
        • dealHistory
        • dealHistory (authorized)
        • instruments
        • positions
        • instrumentMarkups
        • addInstrumentMarkups
        • delInstrumentMarkups
      • Settlements
        • settlementRequests
        • settlementOrders
        • settlementTransactions
        • settlementHistory
        • settlementTransactionHistory
        • addIncomingSettlementRequest
        • delIncomingSettlementRequest
        • delIncomingSettlementCPRequest
        • addOutgoingSettlementTransaction
        • addIncomingSettlementTransaction
        • sendSettlementTransaction
        • commitIncomingSettlementTransaction
        • delSettlementTransaction
      • Risk Management
        • climits
        • setCLimit
        • delCLimit
        • subaccountsLimits
        • setSubaccountLimit
        • delSubaccountLimit
        • enableTrading
        • disableTrading
        • cAssetLimits
        • setCAssetLimit
        • delCAssetLimit
        • cShortSalesBan
        • setShortSalesBan
        • delShortSalesBan
        • enableInstrumentsWhitelist
        • setInstrumentsWhitelist
        • disableInstrumentsWhitelist
        • instrumentsWhitelist
      • Non-deliverable Trading
        • settings/getOvernightRates
        • settings/setOvernightRates
    • Websocket API
      • Feed 'A' - Assets
      • Feed 'P' - Positions
      • Feed 'L' - Counterparty limits
      • Feed 'B' - Global order books
      • Feed 'F' - Tradable order books
      • Feed 'R' - Settlement requests
      • Feed 'N' - Settlement transactions
      • Feed 'K' - Positions
      • Feed 'O' - Orders
      • Feed 'S' - Settlement orders
      • RFQ
    • FIX API
      • Admin messages
      • Market Data
      • Trade
        • Trading for Takers
        • Trading for LPs and Masters
    • Troubleshooting Errors
      • List of Error Codes
      • Error 3
      • Error 6
      • Error 7
      • Error 14
Powered by GitBook
On this page
  1. API Reference
  2. REST API
  3. Trading

mod

Replaces an order

/mod method makes sense only for makers, since taker's orders are processed immediately and a server does not store them.

Please note that in case of replacing a partially filled order the size of a newly replaced order will be less than the specified size by the filled amount (e.g., the size of an initial order was 10; then the order was partially filled and the remaining size was 8; when a user replaces this order, a new size must be 12 if a user wants to have 10 in the order book).

Please also note it is not possible to replace an order by clientOrderId.

Using /mod command instead of add/del is highly recommendable for makers.

POST api/mod

{
    "orderId": 1235,
    "price": 1000000000000,
    "size": 20000000
}
{
    "id": 1246,
    "initialSize": 18000000,
    "remainingSize": 18000000,
    "deals": [ ],
    "origId": 1245,
    "origRemainingSize": 8000000
}
{
    "error": 2
}

"mod" is the only method that may have a different format of an error response

{
    "reply": {
        "error": 74,
        "origId": 42,
        "origRemainingSize": 10000
    }
}

Request parameters

Field name
Type
Description

orderId

Efx::OrderId

Id of order to replace

clientOrderId

Efx::ClientOrderId

Optional user data attached to a new order

price

Efx::Price

New Price

size

Efx::Size

Initial size of replace result will be size - (old order initial size - old order remaining size)

Response description

Field name
Type
Description

error

Efx::ErrorCode

Will be returned alongside with origId and origRemainingSize in case old order was removed but new order cannot be placed. In case old order cannot be removed standard error reply will be returned.

id

Efx::OrderId

New Order Id

initialSize

Efx::Size

New Order initial size

remainingSize

Efx::Size

New Order remaining size (after aggressive deals)

cancelReason

unsigned int16

Cancel reason

0 - in place or filled

1 - by client

2 - as non-book order

3 - by self-trade prevention

4 - cancel-on-disconnect

origId

Efx::OrderId

Original Order Id

origRemainingSize

Efx::Size

Original Order size on removal

deals

Array of Deals

Initial (taker) deals

Deal

Array[6]

id

Efx::DealId

Deal Id

price

Efx::Price

Deal price

size

Efx::Size

DealSize

volume

Efx::Size

Deal volume

delta

Efx::Size

Deal delta in quote (balance) currency

counterpartyId

Efx::ClientId

Counterparty id

Previousorders (authorized)Nextdel

Last updated 11 months ago