How Anboto Executes#
What happens between clicking Review order and seeing fills — and why the design keeps you in custody of your funds throughout.
Principles#
- Non-custodial. Your assets never leave your own exchange accounts. Anboto holds trade-only API keys — never withdrawal permission — so the platform can place and cancel orders on your behalf but can never move funds.
- Your keys stay server-side and encrypted. API keys are encrypted in HashiCorp Vault and used only from servers inside a private subnet, never exposed to browsers or third parties. See API Key Security.
- Every order is measurable. Each parent order produces a post-trade analysis scoring the execution against market benchmarks — the platform grades its own work.
The life of an order#
1. Validation. When you submit, the order management layer validates the order against the venue's rules — minimum quantity, contract-size multiples, time windows — and persists it. Invalid orders are rejected immediately with a specific reason.
2. Slicing. Your order becomes a parent order, and the execution engine works it according to the algo you chose: a TWAP paces child orders evenly through time, a VWAP follows the market's volume profile, a POV tracks live traded volume, and so on. Child orders are sized by the clip size logic and randomized so the pattern is not readable from the tape.
3. Placement. Child orders reach the venue through Anboto's connectivity layer, which maintains persistent, low-latency connections to every supported CEX and perp-DEX. Each account's traffic egresses through its own fixed IP addresses — the same ones you allowlist on the venue when linking the exchange.
4. Reaction. The engine watches the order book and your fills in real time: resting maker orders are re-priced when the market moves away (see Maker Placement in Algo Specifications), the spread is crossed when your trading style calls for it, and venue rate limits trigger an automatic pause and resume rather than an error.
5. Completion. Fills accumulate on the parent order until it is filled, cancelled, or expires. The finished order moves to History, where its post-trade analysis becomes available.
Failure behavior#
The engine is built to degrade safely rather than silently:
- If a venue rejects child orders repeatedly, the parent order stops with the venue's reason attached, rather than retrying forever.
- If a venue rate-limits the account, the order pauses and resumes automatically.
- If the market never reaches your limit or trigger price, the order simply expires at its expiration — nothing executes at a price you did not accept.
See Troubleshooting for the full error reference.