Ejemplo de asignación

Última actualización: August 10, 2026

El programa de asignación es un modelo alternativo diseñado para facilitar la provisión de liquidez en períodos de alta volatilidad. Funciona como un paso dentro del Proceso de Protección de Capital en el que una liquidación no completada se asigna a proveedores de liquidez voluntarios a un precio indeterminado fuera del libro de órdenes. Su objetivo es reducir la fricción en el proceso de liquidación y evitar la mala experiencia que supone cancelar directamente el interés abierto de los traders rentables para compensar a los traders con colateral insuficiente.

A continuación se muestra un ejemplo en el que un proveedor de liquidez voluntario completa una liquidación incompleta a través del programa de asignación. Para obtener más información sobre la lógica de asignación, consulta
Position Assignment System.

Supongamos que hay un cliente cuyas posiciones actuales son:

- LONG 1.760.000 contratos en PI_BTCUSD

- LONG 300.000 contratos en FI_BTCUSD_200228

Ambas posiciones utilizan la cuenta de margen principal de FI_BTCUSD, que mide el riesgo en tiempo real comparando el valor del colateral con el valor de la posición para determinar si procede la liquidación.

Cuando la cuenta de margen del tipo de contrato cae por debajo del margen líquido, se produce la liquidación y el sistema vende esas posiciones en el libro de órdenes al precio imputado de capital cero para cada contrato.

En este caso, la liquidación del cliente se desarrolla así:

Posición

Tamaño

Importe liquidado

Importe asignado

PI_BTCUSD

1.760.000

1.007.379

752.621

FI_BTCUSD_200228

300.000

300.000

0


Esto significa que la posición completa de FI_BTCUSD_200228, de 300.000 contratos, se vendió con éxito en el libro de órdenes a nuevas contrapartes que tenían ofertas activas.

Sin embargo, la posición de PI_BTCUSD de 1.760.000 contratos solo pudo liquidar 1.007.379 en el libro de órdenes; los 752.621 restantes no encontraron nueva contraparte.

Como resultado, el resto de la liquidación sin completar se gestiona en el PAS redirigiendo la posición larga a los proveedores de liquidez que participan en el programa según sus preferencias individuales.

A continuación se muestra una notificación de ejemplo para una asignación de 184.317 contratos asignados a "[email protected]". El cliente recibe el siguiente email (ten en cuenta que este formato puede cambiar, así que no dependas de esta estructura):

Selection_999_912_.png

El proveedor de liquidez recibe de inmediato la notificación a través del feed de WebSocket que le informa de la asignación. El mensaje tiene el siguiente formato:

{
"feed": "fills",
"username": "[email protected]",
"fills": [
{
"instrument": "PI_XBTUSD",
"time": 1581026151,
"price": 9292.5,
"seq": 103,
"buy": true,
"order_id": "87755b99-bfb7-4f51-a72b-70f542f793a5",
"fill_id": "89f0f4f9-66b5-45eb-ba3f-6eeb2da5cadd",
"fill_type": "assignee",
"qty": 184317
}
]
}

Además, el cliente puede consultar las compleciones en el endpoint de REST API:

{
"result": "success",
"fills": [
{
"fill_id": "89f0f4f9-66b5-45eb-ba3f-6eeb2da5cadd",
"symbol": "pi_xbtusd",
"side": "buy",
"order_id": "87755b99-bfb7-4f51-a72b-70f542f793a5",
"size": 184317,
"price": 9292.5,
"fillTime": "2020-02-06T21:55:51.000Z",
"fillType": "assignee"
}
...
]
}

Los campos clave en las respuestas son fill_type y fillType (para WebSocket y REST, respectivamente), y ambos toman el valor "assignee". Esta es la indicación que debe utilizarse para gestionar la asignación de forma programática.

Nota:

- Configura tus preferencias según consideres en la sección Assignment Program de la plataforma.

- No recibirás una asignación que tu margen disponible para el tipo de contrato no pueda asumir.

Los separadores decimales y de miles que se muestran en este artículo pueden diferir de los que aparezcan en nuestras plataformas de trading. Consulte nuestro artículo sobre cómo utilizamos los puntos y comas para obtener más información.

¿Necesita más ayuda?