Skip to main content
POST
private/simulate_block_trade

Authorizations

X-DeriveWallet
string
header
required

The wallet the request acts for.

X-DeriveTimestamp
string
header
required

The current time in milliseconds, as a decimal string.

X-DeriveSignature
string
header
required

EIP-191 signature of the timestamp, by the wallet or one of its session keys.

Body

application/json
direction
enum<string>
required

This side's direction. The taker side trades opposite the maker side.

Available options:
buy,
sell
legs
object[]
required

The agreed priced legs, the same on both sides.

subaccount_id
integer<int64>
required
extra_fee
string<decimal>
default:0

Broker fee for this side, in USD.

Response

Success

Result for private/simulate_block_trade and private/verify_block_trade: one side's fee and margin if it executed now.

estimated_fee
string<decimal>
required

The side's total fee, extra_fee included.

is_valid
boolean
required

False if the side does not have enough margin for its trade and fees, or if the trade takes the subaccount over its maximum asset count.

post_initial_margin
string<decimal>
required

Decimal string of the human value (e.g. "1.5"), up to 12 fractional digits; a string or JSON number is accepted

pre_initial_margin
string<decimal>
required

Decimal string of the human value (e.g. "1.5"), up to 12 fractional digits; a string or JSON number is accepted

expires_at_sec
integer<int64> | null

The last second at which the signed side can execute. Null for an unsigned side.

invalid_reason
string | null
within_price_band
boolean | null

Whether both sides are within the currency's RFQ price band. Null if it has no band.