---
title: "Create algo order"
method: POST
path: "/algo/orders"
tags: ["Algos"]
---

# Create algo order

`POST /algo/orders`

Create a new algo order

### TWAP

TWAP orders break a large trade into smaller ones over time to reduce market impact:
- Sub-orders are placed every 30 seconds.
- Order duration is between 30 and 86,400 seconds, in multiples of 30.
- Supported sub order type: MARKET

## Request body

- RequestsAlgoOrderRequest
  - `algo_type` string, required — Algo type, required for algo orders creation
  - `duration_seconds` integer, required — Duration in seconds for which the algo order will be running, required for algo orders creation
  - `market` string, required — Market for which order is created
  - `on_behalf_of_account` string — ID corresponding to the configured isolated margin account. Only for isolated margin orders
  - `recv_window` integer — Order will be created if it is received by API within RecvWindow milliseconds from signature timestamp, minimum is 10 milliseconds
  - `side` 'BUY' | 'SELL', required
  - `signature` string, required — Order signature in as a string "[r,s]" signed by account's paradex private key
  - `signature_timestamp` integer, required — Unix timestamp in milliseconds of order creation, used for signature verification
  - `size` string, required — Size of the algo order
  - `type` 'MARKET' | 'LIMIT' | 'STOP_LIMIT' | 'STOP_MARKET' | 'TAKE_PROFIT_LIMIT' | 'TAKE_PROFIT_MARKET' | 'STOP_LOSS_MARKET' | 'STOP_LOSS_LIMIT', required

## Response `201`

Created

- ResponsesAlgoOrderResp
  - `account` string — Account identifier (user's account address)
  - `algo_type` '' | 'TWAP'
  - `avg_fill_price` string — Average fill price of the order
  - `cancel_reason` string — Reason for algo cancellation if it was closed by cancel
  - `created_at` integer — Algo creation time
  - `end_at` integer — Algo end time
  - `id` string — Unique algo identifier
  - `last_updated_at` integer — Algo last update time. No changes once status=CLOSED
  - `market` string — Market to which algo belongs
  - `remaining_size` string — Remaining size of the algo
  - `side` 'BUY' | 'SELL'
  - `size` string — Algo size
  - `status` 'NEW' | 'UNTRIGGERED' | 'OPEN' | 'CLOSED'

## Other responses

- `400` — Bad Request

---

[API](https://skmtc.net/tradeparadex/apis/paradex-rest-api.md) · [All operations](https://skmtc.net/tradeparadex/apis/paradex-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tradeparadex/paradex-rest-api/versions/26dce0f96ab2/schema)
