Core Pages

Algorithmic Orders

9 min read

What it is

Four institutional execution algorithms running on top of real CCXT: TWAP (Time-Weighted Average Price), VWAP (Volume-Weighted Average Price), Iceberg (hidden size), and Bracket/OCO (entry + TP + SL linked). Reduces market impact for large orders, hides true size from front-runners, and removes the "moving stop loss" discipline problem.

How to think about it

Each algo is built for a different problem: TWAP for steady execution over time, VWAP for matching the market's natural volume rhythm, Iceberg for hiding size from order books, Bracket for disciplined entry + exit pairs. Pick the wrong one and the slicing overhead can cost more than it saves.

Step-by-step

  1. Pick exchange + pair + side

    Top of form. Exchange selector limits which pairs are available — each exchange has its own pair set (Binance ~2,000+, Coinbase ~600, Kraken ~500). Pair search uses substring match.

  2. Pick the algo type (4 cards)

    TWAP for "I want to buy $50K of BTC over the next 2 hours without moving the market." VWAP for "I want my entries to match the market's natural rhythm." Iceberg for "I have a $200K order and don't want the order book to know." Bracket for "I want entry + take-profit + stop-loss as one linked order set."

  3. TradingView chart (top of form)

    Live chart for the selected pair on the selected exchange. Use it to pick entry prices (Bracket / Iceberg) and to understand current volatility before sizing slices. Inline timeframe toggle for 15m / 1h / 4h / 1D.

  4. Amount mode toggle (BASE / QUOTE)

    Same pattern as CEX Trading + Smart Trade. BASE = type in crypto units (0.5 BTC). QUOTE = type in dollars ($50,000). For your first algo orders, use QUOTE — it's much harder to misread.

  5. TWAP / VWAP params: Total amount + Duration + Slice count

    Total amount = entire size to execute. Duration in MINUTES (1 hour = 60, 1 day = 1440). Slice count = how many child orders to break it into. Backend adds ±5% timing jitter between slices to prevent pattern detection. Sensible defaults: 60 min / 10 slices = a 6-minute cadence.

  6. VWAP vs TWAP — when each one helps

    TWAP slices are equal across the duration. VWAP weights each slice by historical volume — bigger slices during high-volume hours (typically US session 13-21 UTC), smaller during quiet hours (Asia early morning). VWAP tracks closer to market average price; TWAP is more predictable but doesn't adapt to volume.

  7. Iceberg params: Total + Visible

    Total = full order size. Visible = how much of it shows on the order book at any moment. Order refills the visible portion as it fills, until total is exhausted. Typical setup: 0.1 BTC total / 0.01 BTC visible (only 10% of true size is exposed at a time). Optional limit price; null = market order at each refill.

  8. Bracket params: Amount + Entry + TP + SL

    Entry price = your target entry. TP and SL each have TWO input modes: PERCENT (1, 2, 5%) or PRICE (absolute number). Percent mode auto-computes the absolute price as you type. The backend places entry + TP + SL as linked OCO — when TP fills, SL auto-cancels (and vice versa).

  9. Submit + monitor in the orders list

    Active algo orders show progress (X% filled, slice N of M, estimated savings vs market). Filter tabs: Active / Done / All. Polls every 15 seconds while you watch. Cancel anytime — pending slices stop immediately, filled slices stay.

Tips & pitfalls

  • TWAP/VWAP only beat market orders meaningfully for orders >$5-10K. For smaller trades, the slicing overhead isn't worth it — use Smart Trade or CEX Trading instead.
  • Bracket (OCO) is the most-used algo type in traditional finance. It removes the "moving stop-losses" discipline problem — once set, the math runs itself.
  • VWAP is better when you specifically care about MATCHING the day's VWAP benchmark (often the case for institutional execution). For pure size-hiding, TWAP is simpler.
  • Iceberg hides from the order book but NOT from on-chain analysis if you're on DEX. For DEX-side execution, use the DEX Algo Orders page which adds MEV protection.
  • Estimated savings show in the order details — typically 10-40 bps vs a market order for $50K+ orders. For $1K orders, savings are within noise.
  • ±5% timing jitter is deliberate — it prevents sophisticated front-runners from triggering on your predictable slice cadence. You don't need to configure this; it's automatic.
  • For Bracket on volatile assets: use PERCENT mode for TP/SL (e.g. 3% / 2%), not absolute prices. Volatility drift makes absolute prices stale; percentages stay correct.
  • For TWAP on illiquid pairs: more slices = each slice is smaller = less market impact, but longer duration. Rule of thumb: each slice should be <0.5% of the pair's daily volume.