Order Types

Utilize a variety of order types to enhance your trading experience.

  • Market Order: An order that immediately executes at market price by matching against existing limit orders. By default, swaps are executed as market orders. Options:

    • Complete Fill: A complete fill order will revert if the output amount is insufficient due to slippage. It is comparable to swaps through popular AMM exchanges such as Uniswap and allows for trades across multiple markets.

    • Partial Fill: A partial fill order swaps until the slippage limit is hit, and any unfilled portion is canceled. When enabled, the slippage limit functions as a minimum price rather than a minimum output amount, meaning the percent slippage setting also limits price impact. Partial fills can only be done on individual markets.

  • Limit Order: An order that adds liquidity to the order book and is executed at a specified price or better. Limit orders on Crystal have no expiration date, and orders at the same price are filled first in, first out. Unlike other decentralized limit order protocols, limit orders on Crystal are guaranteed to fill if the limit price is crossed. Limit orders can only be placed on individual markets. Options:

    • Add Liquidity Only: Add liquidity orders will only execute as a maker order, and will revert if the limit price crosses the bid-ask spread.

    • Market to Limit (default): By default, limit orders with prices crossing the bid-ask spread will fill as a market order up to the limit price. The remaining unfilled portion will be added to the order book as a limit order at the limit price.

  • Trigger Order: An order that triggers a market order once a set price is reached. (Coming soon!)

  • TWAP Order: An order that splits a larger order into many suborders executed over time. (Coming soon!)

To learn more about the technical details behind each order type, see Exchange Architecture.

Last updated