Crear orden stop-limit
Envía una nueva orden stop-limit BYMA para comprar o vender un símbolo una vez alcanzado un precio de disparo (stop), ejecutándose a un precio límite, para una cuenta determinada.
POST
/v1/broker/orders/byma/stop-limitRequest
Headers
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
Authorization | string | Sí | Token de acceso en formato Bearer ACCESS_TOKEN |
Content-Type | string | Sí | Debe ser application/json |
No aplica: Path Parameters, Query Parameters.
Body
Se requiere al menos
amount o quantityDebe enviarse al menos uno de los campos amount o quantity. Si solo se envía amount, la cantidad de nominales se estima automáticamente; si solo se envía quantity, el monto se estima automáticamente.
price es condicionalprice es opcional para órdenes estándar, pero requerido para órdenes de caución (repo). Representa el precio de referencia mostrado al usuario antes de la ejecución y luego es sobrescrito por el precio real de ejecución.
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
symbol | string | Sí | Ticker del instrumento a operar (ej. AL30). |
side | string | Sí | Lado de la operación. Valores posibles: BUY, SELL. |
settled_period | string | Sí | Período de liquidación. Valores posibles: T0 (liquidación inmediata), T1 (liquidación a 24hs). |
account_number | integer | Sí | Número de cuenta sobre la que se envía la orden. |
price_limit | number | Sí | Precio al cual se ejecuta la orden una vez disparada por stop_price. |
stop_price | number | Sí | Precio de disparo. Una vez que el mercado alcanza este precio, la orden se envía al price_limit. |
quantity | number | Condicional | Cantidad de nominales a operar. Requerido si no se envía amount; de lo contrario se estima automáticamente a partir de amount. |
amount | number | Condicional | Monto a operar. Requerido si no se envía quantity; de lo contrario la cantidad de nominales se estima automáticamente. |
price | number | Condicional | Precio de referencia mostrado al usuario. Requerido solo para órdenes de caución (repo). |
tag | object | No | Metadatos libres en formato clave-valor asociados a la orden. |
Response
2XX Éxito
| Campo | Tipo | Descripción |
|---|---|---|
order_id | integer | Identificador asignado a la orden recién creada. |
Códigos de error
| Status | Descripción |
|---|---|
400 | Bad Request — parámetros inválidos o faltantes (por ejemplo, no se especificó ni amount ni quantity), o la cuenta no está habilitada para operar |
401 | Unauthorized — token de acceso inválido o faltante |
403 | Forbidden — el token no tiene permiso para acceder a este recurso |
500 | Internal Server Error |
Estructura del error:
{
"code": "invalid_request",
"description": "At least one of amount or quantity must be specified"
}
Ejemplo de código
- cURL
- JavaScript
- Python
- Node.js
curl -X POST https://b2b.allaria.cloud/v1/broker/orders/byma/stop-limit \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"symbol": "AL30",
"side": "BUY",
"settled_period": "T0",
"account_number": 70104,
"amount": 5000.00,
"price_limit": 800,
"stop_price": 700
}'
const response = await fetch('https://b2b.allaria.cloud/v1/broker/orders/byma/stop-limit', {
method: 'POST',
headers: {
'Authorization': 'Bearer ACCESS_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({
symbol: 'AL30',
side: 'BUY',
settled_period: 'T0',
account_number: 70104,
amount: 5000.00,
price_limit: 800,
stop_price: 700
})
});
const data = await response.json();
console.log(data);
import requests
response = requests.post(
'https://b2b.allaria.cloud/v1/broker/orders/byma/stop-limit',
headers={
'Authorization': 'Bearer ACCESS_TOKEN',
'Content-Type': 'application/json'
},
json={
'symbol': 'AL30',
'side': 'BUY',
'settled_period': 'T0',
'account_number': 70104,
'amount': 5000.00,
'price_limit': 800,
'stop_price': 700
}
)
data = response.json()
print(data)
const axios = require('axios');
const response = await axios.post(
'https://b2b.allaria.cloud/v1/broker/orders/byma/stop-limit',
{
symbol: 'AL30',
side: 'BUY',
settled_period: 'T0',
account_number: 70104,
amount: 5000.00,
price_limit: 800,
stop_price: 700
},
{
headers: {
Authorization: 'Bearer ACCESS_TOKEN',
'Content-Type': 'application/json'
}
}
);
console.log(response.data);
2XX Éxito
{
"order_id": 984514
}