Exemplo de atribuição

Última atualização: 10 Eost 2026

O programa de atribuição é um modelo alternativo criado para acomodar a provisão de liquidez em períodos de alta volatilidade. Ele funciona como uma etapa do Equity Protection Process em que uma liquidação não executada será atribuída a provedores de liquidez voluntários a um preço indeterminado, fora do livro de ofertas. O objetivo é reduzir o atrito no processo de liquidação e evitar a má experiência do cliente de simplesmente encerrar o open interest de investidores lucrativos para compensar investidores com colateral insuficiente.

A seguir, há um exemplo em que um provedor de liquidez voluntário executa uma liquidação não preenchida por meio do programa de atribuição. Para mais detalhes sobre a lógica de atribuição, consulte
Position Assignment System.

Suponha que um cliente tenha as seguintes posições abertas:

- LONG 1.760.000 contratos em PI_BTCUSD

- LONG 300.000 contratos em FI_BTCUSD_200228

Ambas as posições utilizam a conta de margem principal FI_BTCUSD, que mede o risco em tempo real, avaliando o colateral em relação ao valor da posição para determinar se a liquidação deve ocorrer.

Quando a conta de margem do tipo de contrato fica abaixo da margem de manutenção, a liquidação é acionada e o sistema vende essas posições no livro de ofertas pelo preço imputado de Equity zero para cada contrato.

Neste caso, a liquidação do cliente ocorre da seguinte forma:

Posição

Tamanho

Quantidade Liquidada

Quantidade Atribuída

PI_BTCUSD

1.760.000

1.007.379

752.621

FI_BTCUSD_200228

300.000

300.000

0


Isso significa que a posição inteira de FI_BTCUSD_200228, de 300.000 contratos, foi vendida com sucesso no livro de ofertas para novas contrapartes com bids existentes.

Já a posição PI_BTCUSD de 1.760.000 contratos conseguiu liquidar apenas 1.007.379 com sucesso no livro de ofertas, e os 752.621 restantes não encontraram nova contraparte.

Como resultado, o saldo não executado da liquidação é tratado no PAS, direcionando a posição comprada para os provedores de liquidez participantes do programa com base em suas preferências individuais.

A seguir, há um exemplo de notificação de atribuição de 184.317 contratos alocados para «[email protected]». O cliente recebe o seguinte email (este formato pode mudar; não dependa dele):

Selection_999_912_.png

O provedor de liquidez recebe imediatamente a notificação pelo feed WebSocket informando sobre a Atribuição. A mensagem tem o seguinte 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
}
]
}

Além disso, o cliente pode consultar o endpoint da API REST para ver as execuções:

{
"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"
}
...
]
}

Os campos principais nas respostas são fill_type e fillType (para WebSocket e REST, respectivamente), que assumem o valor "assignee". Esse é o indicador que deve ser usado para tratar a atribuição de forma programática.

Observação:

- Configure suas preferências conforme desejar na seção Assignment Program da plataforma.

- Você não receberá uma Atribuição que exceda a margem disponível para o tipo de contrato.

Os separadores de decimais e de milhares mostrados neste artigo podem ser diferentes dos formatos exibidos em nossas plataformas de negociação. Confira nosso artigo sobre como usamos pontos e vírgulas para obter mais informações.

Precisa de mais ajuda?