Exemplo de atribuição

Última atualização: 10 de agosto de 2026

O programa de atribuição é um modelo alternativo concebido para facilitar a provisão de liquidez em períodos de elevada volatilidade. Funciona como uma etapa do Processo de Proteção de Capital em que uma liquidação não executada é atribuída a fornecedores de liquidez voluntários a um preço indeterminado fora do livro de ordens. O objetivo é reduzir as fricções no processo de liquidação e evitar uma má experiência ao cliente, nomeadamente o cancelamento das Posições em aberto de negociantes lucrativos para compensar negociantes com garantia insuficiente.

Segue-se um exemplo em que um fornecedor de liquidez voluntário executa uma liquidação não executada através do programa de atribuição. Para mais informações sobre a lógica de atribuição, consulte
Position Assignment System.

Considere-se um cliente com as seguintes posições em aberto:

- 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 do FI_BTCUSD, que mede o risco em tempo real, avaliando a garantia face ao valor da posição, para determinar se deve proceder à liquidação.

Quando a conta de margem do tipo de contrato desce abaixo da margem de manutenção, ocorre a liquidação e o sistema vende essas posições no livro de ordens ao preço imputado de capital zero para cada contrato.

Neste caso, a liquidação do cliente desenrola-se da seguinte forma:

Posição

Tamanho

Montante liquidado

Montante atribuído

PI_BTCUSD

1 760 000

1 007 379

752 621

FI_BTCUSD_200228

300 000

300 000

0


Isto significa que a totalidade da posição em FI_BTCUSD_200228, de 300 000 Contratos, foi vendida com sucesso no livro de ordens a novas contrapartes com propostas de compra existentes.

Contudo, da posição em PI_BTCUSD de 1 760 000 Contratos, apenas 1 007 379 foram liquidados com sucesso no livro de ordens, não tendo sido possível encontrar contraparte para os restantes 752 621.

Por conseguinte, o remanescente da liquidação não executada é processado no PAS através do encaminhamento da posição LONG para os fornecedores de liquidez que participam no programa, de acordo com as preferências individuais.

Apresenta-se abaixo uma notificação de exemplo para uma Atribuição de 184 317 Contratos alocados a «[email protected]». O cliente recebe o seguinte e-mail (note que este formato está sujeito a alterações, pelo que não deve ser utilizado como referência):

Selection_999_912_.png

O fornecedor de liquidez recebe imediatamente a notificação via WebSocket feed, com alerta para 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-chave nas respostas são fill_type e fillType (para WebSocket e API REST, respetivamente), que assumem ambos o valor «assignee». É esta a indicação a utilizar para processar a atribuição de forma programática.

Observação:

- Configure as suas preferências na secção Assignment Program da plataforma.

- Não receberá uma Atribuição que a sua margem disponível para o tipo de contrato não consiga suportar.

Os separadores decimais e de milhar mostrados neste artigo podem diferir dos formatos exibidos em nossas plataformas de negociação. Consulte o nosso artigo sobre como utilizamos pontos e vírgulas para obter mais informações.

Precisa de mais ajuda?