Skip to main content
All trading actions are batched via Controller.execute. For each item in actionList you provide an ABI‑encoded params struct in paramsDataList.

MAKE (post a limit)

The MAKE action allows you to post a limit order on the book at a specific tick (price level).

MakeOrderParams struct

MakeOrderParams(
  id: uint192,
  tick: int24,
  quoteAmount: uint256,
  referrer: address
)

Example

const makeTypes = [
  { name: 'id', type: 'uint192' },
  { name: 'tick', type: 'int24' },
  { name: 'quoteAmount', type: 'uint256' },
  { name: 'referrer', type: 'address' },
] as const;

const makeData = encodeAbiParameters(makeTypes, [
  bookId,
  tick,
  quoteAmount,
  '0x0000000000000000000000000000000000000000', // referrer (use address(0) if none)
]);

await writeExecute([Action.MAKE], [makeData]);

Parameters

  • id: The book ID (uint192)
  • tick: The tick (price level) where you want to place the order
  • quoteAmount: The amount of quote tokens to place
  • referrer: Optional referrer address for fee sharing (use address(0) if you don’t have a referrer)