> ## Documentation Index
> Fetch the complete documentation index at: https://api-trading-docs.vexprofx.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Órdenes pendientes

> Crea órdenes limit, stop y stop-limit con precios explícitos.

`POST /api/v1/orders/pending` coloca una orden pendiente. Requiere el permiso
`POST:/api/v1/orders/pending`, cuenta verificada, trading habilitado y
`Idempotency-Key`. Un token limitado a `/orders/market` no concede este permiso.

## Tipos admitidos

| `order_type` | Tipo MT5 | Precio requerido |
| - | - | - |
| `buy_limit` | 2 | `price`: precio de compra limit |
| `sell_limit` | 3 | `price`: precio de venta limit |
| `buy_stop` | 4 | `price`: activación de compra |
| `sell_stop` | 5 | `price`: activación de venta |
| `buy_stop_limit` | 6 | `price`: activación; `stop_limit_price`: compra limit posterior |
| `sell_stop_limit` | 7 | `price`: activación; `stop_limit_price`: venta limit posterior |

Para compra/venta inmediata (tipos 0 y 1), usa [mercado](/es/trading/orders).

## Solicitud

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{"login":104205,"symbol":"EURUSD","volume":100,"order_type":"buy_limit","price":1.09,"comment":"REST API"}
```

Los precios son ilustrativos, no cotizaciones actuales. `volume` es un entero en
unidades MT5: `100` equivale a 0.01 lotes. No se convierte desde lotes.
`login`, `symbol`, `volume`, `order_type` y `price` son obligatorios.
`comment` es opcional, admite hasta 31 caracteres y tiene valor predeterminado `REST API`.
`digits` se obtiene automáticamente; no lo envíes.

Para stop-limit, añade obligatoriamente `stop_limit_price`:

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{"login":104205,"symbol":"EURUSD","volume":100,"order_type":"buy_stop_limit","price":1.12,"stop_limit_price":1.115}
```

Al llegar a la activación, se crea una orden limit; no implica ejecución inmediata.
En buy stop-limit, el precio limit debe ser menor o igual al de activación; en sell
stop-limit, mayor o igual. Los otros cuatro tipos rechazan `stop_limit_price`.
El backend envía `price` como `PriceOrder` y `stop_limit_price` como `PriceTrigger`.

## Validaciones y vigencia

El backend consulta la configuración efectiva del símbolo para la cuenta y valida
mínimo, máximo y paso del volumen; permisos del tipo y dirección; decimales y tick
size del precio. No redondea ni cambia el volumen solicitado.
Los precios deben ser finitos y positivos. Campos adicionales producen `422`.

Esta versión utiliza **GTC** (`TypeTime=0`) y **RETURN** (`TypeFill=2`), y requiere
que el símbolo admita GTC. No permite elegir una fecha de vencimiento, SL o TP.
Las reglas del broker pueden cancelar órdenes; GTC no garantiza permanencia indefinida.
MT5 evalúa margen, sesiones, distancias y relación con el mercado al procesar la orden.

## Envío y seguimiento

Guarda el cuerpo en `pendiente.json` y utiliza una clave distinta por intención.

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl --fail-with-body -X POST "$API_BASE/api/v1/orders/pending" \
  -H "Authorization: Bearer $MT5_API_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $PENDING_KEY" \
  --data-binary @pendiente.json
```

Guarda `answer.id` o `answer.ID` y consulta [el resultado](/es/trading/results).
La respuesta inicial confirma recepción, no colocación ni ejecución.
Después consulta `GET /api/v1/accounts/{login}/orders` para las órdenes activas.
Usa [cancelar pendiente](/es/api-reference/cancel-order) para solicitar la cancelación.
La modificación no está expuesta. Revocar la verificación no cancela órdenes ya colocadas.

La [idempotencia](/es/trading/idempotency) también aplica aquí. No cambies de clave
para repetir una solicitud cuyo resultado sea incierto. Una reserva puede quedar
pendiente tras errores de consulta o validación previos al envío.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.