Overview
Create one from Condor
Agents and the Condor chat use thecreate_order_executor tool:
controller_id must be the session ID (see Session IDs). In the chat you can leave it out, and it defaults to main.
Parameters
Condor refuses a
LIMIT or LIMIT_MAKER call without a price, and a LIMIT_CHASER call without both chaser settings, before anything is sent.
Execution strategies
Example of a chaser that rests 0.1% below the best bid and re-posts when the market moves 0.05% away:
DEX swaps
Setconnector_name to a network and execution_strategy to MARKET to swap through Gateway. The route comes from the network’s configured swap provider.
custom_info carries the on-chain transaction_hash.
Via the API
Create the executor withPOST /executors/. side is the number 1 or 2; amount is in the base asset.
LIMIT_CHASER, send "chaser_config": {"distance": "0.001", "refresh_threshold": "0.0005"} instead of price.
The API also accepts these settings, which the Condor tool doesn’t expose. They apply to Gateway swaps only:
Lifecycle
To cancel a resting order, stop the executor with
stop_executor (or POST /executors/{executor_id}/stop). An order executor can’t unwind a fill, so stopping it with keep_position=false still keeps whatever filled.
Position handover
Because every fill ends asPOSITION_HOLD, the filled amount is added to the Position Hold for the executor’s account, connector, trading pair and controller_id. An order executor reports no P&L of its own: its net_pnl_quote is always 0. Profit and loss is tracked in the Position Hold, where a later sell nets against an earlier buy. See Position Handover and Inventory.
This makes the order executor the usual way to build a position in steps, or to exit a held one.
Learn more
- Executors overview: lifecycle, close types and the API
- Position Executor: one entry with a managed exit
- MCP Tools:
create_order_executorandstop_executor

