Skip to main content

Elegir endpoint y ticket

No uses el request ID ni el deal ID como ticket. Una modificación no cambia volumen, símbolo, dirección ni expiración. Tampoco cambia el precio de apertura de una posición: para reducir su volumen usa /close.

Cuerpo de la solicitud

Envía login y al menos un campo modificable. Todos los niveles son precios absolutos, no pips ni distancias. Estos precios son ilustrativos:
El ejemplo modifica una pendiente. Para una posición, envía solo login y sl y/o tp; por ejemplo {"login":104205,"tp":1.12}. En stop-limit, price activa la orden y stop_limit_price fija el precio límite posterior. Si cambia la entrada, los SL/TP conservados deben seguir siendo válidos; puedes corregirlos en el mismo cuerpo. Se validan precisión, tamaño de tick, distancias mínimas y congelación del símbolo. MT5 decide la aceptación final.

Enviar y confirmar

  1. Verifica la cuenta. Usa un token del broker correspondiente con permiso POST:/api/v1/orders/*/modify o POST:/api/v1/positions/*/modify, según el recurso.
  2. Guarda cuerpo, ruta y una nueva Idempotency-Key por intención (16–128 caracteres). La API valida la propiedad del ticket y que trading esté habilitado.
  3. Envía el POST con Bearer y esa clave. Guarda answer.id o answer.ID. La respuesta inicial confirma el envío, no la modificación final.
  4. Consulta GET /api/v1/trading/requests/{request_id}: 10009 confirma éxito; 10025 significa sin cambios. Si está pendiente, respeta Retry-After.
  5. Lee las órdenes o posiciones para comprobar sus niveles vigentes. El resultado guardado es histórico y no hace una consulta adicional de la posición actual.
summary.operation será modify_order o modify_position. Serializa cambios que dependan de una modificación anterior del mismo ticket. Si una pendiente se ejecuta antes, la modificación puede fallar; no modifica la posición resultante. Tras un timeout, reutiliza la misma clave y cuerpo. No generes otra clave para repetir una operación incierta; consulta primero el estado de la cuenta. Cliente Python, con claves ya persistidas:

Cambio desde /stops

La ruta de posiciones usa ahora /modify; /stops ya no acepta solicitudes. Actualiza URL, permiso y helper Python (modify_position). Los tokens con el permiso antiguo no obtienen el nuevo automáticamente. Las consultas históricas siguen disponibles y pueden conservar operation=modify_stops.