New trade
/futures/isolated/tradePrivatePlace a new isolated trade.
- Limit order:
type="limit"andpricemust be included - Market order:
type="market"andpricemust be omitted
Permissions: futures:isolated:write
application/json- body
leverage*numberLeverage of the trade
takeprofit?numberTake profit price level
0.50 <= valueside*stringTrade side: buy (long) or sell (short)
"buy""sell"clientId?stringOptional custom data field (max 64 characters)
length <= 64stoploss?numberStop loss: a price (stoplossMode: fixed) or trailing distance as a fraction of price (stoplossMode: trailing)
0 <= valuestoplossMode?stringHow stoploss is interpreted. Defaults to fixed.
"fixed""fixed""trailing"type*"limit"Limit order
"limit"price*numberMust be specified for limit trades
0.50 < valuequantity*integerQuantity of the trade
0 < valuemargin?unknownIf using quantity, margin should not be specified
OK
application/json- response
id*stringInternal trade ID
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$uuidtype*"limit"Open trades are always limit orders
"limit"side*stringTrade side
"buy""sell"openingFee*integerFee to be paid when opening the position
closingFee*integerFee for closing (0 until position is opened)
maintenanceMargin*integerMaintenance margin (0 until position is opened)
quantity*numberNumber of contracts to trade
margin*integerMargin reserved for the order
leverage*numberLeverage multiplier for the position
price*numberLimit price at which to enter the position (in USD)
liquidation*numberCalculated liquidation price for the position (in USD)
stoploss*numberStop loss price level (0 if not set, in USD)
takeprofit*numberTake profit price level (0 if not set, in USD)
stoplossTrailingDistance*numberTrailing stop distance as a fraction of price (0 if not trailing)
exitPrice*|Exit price (0 until position is closed, in USD)
pl*integerProfit and loss (0 until position is opened)
createdAt*stringTimestamp when the order was created
date-timefilledAt*nullTimestamp when filled (null while order is open)
closedAt*nullTimestamp when closed (null while order is open)
entryPrice*|Intended entry price for the position (in USD)
entryMargin*integerInitial margin reserved for the order
open*booleanWhether the trade is open (waiting to be filled)
running*booleanWhether the trade is running (false until filled)
canceled*booleanWhether the trade was canceled
closed*booleanWhether the trade is closed
sumFundingFees*integerFunding fees (0 until position is opened)
sumCashInPl*integerTotal amount cashed in from PL over the trade lifetime
sumCashInMargin*integerTotal amount cashed in from margin over the trade lifetime
clientId*|Optional custom data field (max 64 characters)
import { createHttpClient } from '@ln-markets/sdk/rest/v3'const client = createHttpClient({ key: 'your-key', secret: 'your-secret', passphrase: 'your-passphrase',})const result = await client.futures.isolated.newTrade({ leverage: 10, side: 'buy', type: 'limit', price: 69420, quantity: 10}){ "id": "d0b9f9a0-4f6e-4a5a-8b7a-7f0f5f9a8a1e", "type": "limit", "side": "buy", "openingFee": 10, "closingFee": 0, "maintenanceMargin": 0, "quantity": 100, "margin": 1000, "leverage": 10, "price": 20000, "liquidation": 18000, "stoploss": 10, "takeprofit": 10, "stoplossTrailingDistance": 0, "exitPrice": 0, "pl": 0, "createdAt": "2025-09-01T15:04:21.129Z", "filledAt": null, "closedAt": null, "entryPrice": 20000, "entryMargin": 1000, "open": true, "running": false, "canceled": false, "closed": false, "sumFundingFees": 0, "sumCashInPl": 0, "sumCashInMargin": 0, "clientId": "test-client-id-123"}