@somnia-chain/markets-sdk


@somnia-chain/markets-sdk / index / PerpStopOrderLeg

Interface: PerpStopOrderLeg

Defined in: packages/sdk/src/trade.ts:923

One leg of a perp stop order — the terms shared by a single stop and by each half of a linked pair.

Extended by

Properties

isBid

isBid: boolean

Defined in: packages/sdk/src/trade.ts:925

True = the triggered order buys, false = sells.


quantity

quantity: bigint

Defined in: packages/sdk/src/trade.ts:935

Base quantity to trade at trigger, raw base units.

ZERO is a sentinel meaning "the whole position at trigger time" — the size is resolved against the live position when it fires, so the stop keeps covering a position that GREW after it was armed. A non-zero quantity is fixed at creation and only ever clamped DOWN. Rejected for "opening" intent, where it has no meaning.


triggerPrice

triggerPrice: bigint

Defined in: packages/sdk/src/trade.ts:937

Mark price that arms the trigger (raw collateral units per whole base).


triggerOperator

triggerOperator: 0 | 1

Defined in: packages/sdk/src/trade.ts:939

0 = GTE (fires when mark ≥ triggerPrice), 1 = LTE (mark ≤ triggerPrice).


stopOrderType

stopOrderType: 0 | 1

Defined in: packages/sdk/src/trade.ts:941

0 = LIMIT (uses limitPrice), 1 = MARKET (slippage-bounded by the registry).


limitPrice?

optional limitPrice?: bigint

Defined in: packages/sdk/src/trade.ts:943

Limit price for a LIMIT stop (raw collateral per whole base). Must be 0 for MARKET.


builder?

optional builder?: `0x${string}`

Defined in: packages/sdk/src/trade.ts:945

Builder to tag on the triggered order. Omit for none.


builderFeeBpsTimes1k?

optional builderFeeBpsTimes1k?: bigint

Defined in: packages/sdk/src/trade.ts:947

Builder fee in bps x 1000 (so 1500 = 1.5bps). Requires builder.