O que é o recurso Self-Trade Prevention (STP) da Crypto.com Exchange?
O Self-Trade Prevention (Prevenção de Autonegociação) é um recurso opcional que permite que os usuários da Crypto.com Exchange impeçam a correspondência de ordens para contas com propriedade comum dentro da Exchange.
A definição de uma autonegociação depende dos seguintes fatores por usuário e/ou por exchange:
Escopo do STP: Se as ordens são enviadas da mesma conta principal e/ou subconta(s) pertencente(s) ao mesmo usuário (escopo_stp)
ID do STP: Se as ordens têm o mesmo ID do STP (id_stp)
Como funciona o STP?
A verificação STP ocorre quando uma ordem agressora (ordem do taker) é enviada. Se a ordem não for rejeitada e se tornar uma ordem do maker, considera-se que ela foi aprovada na verificação STP. A verificação STP ocorrerá novamente com a próxima ordem agressora.
Dependendo do conjunto de instruções do Self-Trade Prevention, uma das seguintes ações será tomada quando o STP for detectado para os clientes que optarem por usá-lo:
As ordens do taker serão canceladas
As ordens do maker serão canceladas
Tanto a ordem do taker quanto a do maker serão canceladas
Como faço para configurar o recurso STP?
Há três níveis de instruções do STP. Eles entrarão em vigor na seguinte ordem de precedência:
STP de nível da Exchange - controle padrão
STP de nível da ordem - especificado pelo usuário
STP de nível da conta - especificado pelo usuário
STP de nível da Exchange
No momento, não há STP de nível da Exchange padrão implementado na Crypto.com Exchange (Global). Os usuários podem configurar instruções do STP de nível da ordem e da conta.
*A Crypto.com Exchange (HK) implementou o STP padrão para todos os usuários. Os usuários de Hong Kong devem consultar as Perguntas e Respostas sobre a Exchange específicas da região.
STP de nível da ordem
Os usuários podem especificar suas configurações de STP para cada ordem individual por meio da API da ordem (REST, WS, FIX). As configurações de STP de nível da ordem podem ser definidas por meio das seguintes solicitações de API:
Os campos a seguir definem o STP:
Escopo do STP (escopo_stp):
P - Conta ou subconta(s) principais
S - Somente subcontas
ID do STP (id_stp): 0 a 32767
Instrução do STP (inst_stp):
M - Cancelar Maker
T - Cancelar Taker
A - Cancelar ambos, Maker e Taker
Para que o STP seja efetivo, as ordens do taker e do maker devem ter a configuração STP nas suas respectivas solicitações de API.
Consulte a seção "Como a configuração do escopo do STP afeta a correspondência de ordens em diferentes tipos de conta para a configuração do STP de nível da ordem?" para os cenários de STP de nível da ordem.
STP de nível da conta
O STP também pode ser especificado no nível da conta. As configurações de STP de nível da conta têm a menor precedência.
Se as ordens individuais não tiverem nenhuma configuração de STP, serão usadas as configurações padrão de STP da conta.
As configurações de STP de nível da ordem podem ser definidas por meio das seguintes solicitações de API:
Os campos a seguir definem o STP:
Escopo do STP (escopo_stp):
P - Conta ou subconta(s) principais
S - Somente subcontas
ID do STP (id_stp): 0 a 32767
Instrução do STP (inst_stp):
M - Cancelar Maker
T - Cancelar Taker
A - Cancelar ambos, Maker e Taker
Para que o STP seja efetivo, ambas as contas que criam ordens de taker e maker devem ter a configuração STP ativada. Para evitar a correspondência entre uma conta principal e uma subconta, os usuários precisam definir o STP em ambas as contas separadamente.
As configurações de STP de nível da ordem podem ser recuperadas na seguinte solicitação de API:
Consulte a seção "Como a configuração do escopo STP afeta a correspondência de ordens em diferentes tipos de conta para a configuração STP de nível da conta?" para obter exemplos de cenários de STP de nível da conta.
Quais instrumentos são compatíveis com o STP?
O STP é compatível com todos os instrumentos da Crypto.com Exchange.
Quais tipos de ordem são compatíveis com o STP?
O STP é compatível tanto com ordens limite quanto com ordens a mercado.
Como posso verificar se uma ordem foi cancelada devido ao STP?
Se uma ordem tiver sido cancelada devido ao STP, haverá um "motivo": 43012 na resposta da API de cancelamento de ordens em privada/obter-detalhe-da-ordem e privada/obter-histórico-da-ordem.
Para mais detalhes, consulte a seção Códigos de resposta e motivo da documentação da API da Exchange.
Se a funcionalidade STP for empregada, ela adicionará latência em relação às ordens que não utilizam STP?
Não. Todas as ordens enviadas para a Crypto.com Exchange, independentemente de conterem uma ID do STP, estão sujeitas à mesma verificação de ID do STP no mecanismo de negociação. Portanto, o fato de um participante empregar ou não a funcionalidade não tem impacto sobre a latência.
Há alguma taxa para usar o STP?
No momento, a Crypto.com Exchange não está cobrando taxa pelo uso do STP.
O uso do STP é exigido pelos usuários da Crypto.com Exchange?
No momento, o uso da funcionalidade STP para a Crypto.com Exchange (Global) é opcional. Se um futuro STP de nível do livro de ordens for implementado pela Exchange, ele terá precedência sobre o STP de nível da ordem especificado pelo usuário. Por enquanto, os usuários podem adaptar o uso do STP da maneira que lhes for mais adequada, desde que cumpram todos os requisitos do STP e as regras relevantes da exchange.
*A Crypto.com Exchange (HK) implementou o STP de livro de ordens padrão para todos os usuários. Os usuários de Hong Kong devem consultar https://help.crypto.com/en/collections/9971368-crypto-com-exchange-hk
Como a configuração do escopo do STP afeta a correspondência de ordens entre diferentes tipos de conta para a configuração STP de nível da ordem?
Critério: Para que o STP seja efetivo, tanto as ordens do taker quanto do maker devem ter a configuração STP nas suas respectivas solicitações de API.
Dado:
Um usuário tem uma conta principal e duas subcontas - subconta1 e subconta2
O STP de nível da ordem é usado
Todas as ordens têm o mesmo ID do STP
Veja a seguir os comportamentos do STP para diferentes combinações:
Ordem da conta principal e Ordem da conta principal
escopo_stp: P - STP aplicado (ordens não se correspondem)
escopo_stp: S - STP aplicado (ordens não se correspondem)
Ordem da conta principal e ordem da subconta1 ou subconta2
escopo_stp: P - STP aplicado (ordens não se correspondem)
escopo_stp: S - STP não aplicado (as ordens podem se corresponder)
Ordem da subconta1 e ordem da subconta1
escopo_stp: P - STP aplicado (ordens não se correspondem)
escopo_stp: S - STP aplicado (ordens não se correspondem)
Ordem da subconta1 e ordem da subconta2
escopo_stp: P - STP aplicado (ordens não se correspondem)
escopo_stp: S - STP não aplicado (as ordens podem se corresponder)
Como a configuração do escopo do STP afeta a correspondência de ordens entre diferentes tipos de conta para a configuração STP de nível da conta?
Critério: Para que o STP seja efetivo, ambas as contas que criam ordens de taker e maker devem ter a configuração STP ativada.
Dado:
O usuário tem uma conta principal e 3 subcontas: subconta1, subconta2, subconta3
O STP de nível da conta é usado
id_stp é o mesmo para todas as contas
Cenários:
Impedir a correspondência de ordens de todas as contas sob a mesma conta principal
Configuração: Defina escopo_stp como "P" para a conta principal e todas as subcontas
Resultado:
As ordens da conta principal e de todas as subcontas com escopo_stp = P não se corresponderão entre si
Se uma subconta (por exemplo, subconta3) definir escopo_stp = S, isso só impedirá a autonegociação dentro dessa subconta. Ele ainda pode corresponder às ordens da conta principal e de outras subcontas
Impedir que ordens apenas da mesma conta se correspondam
Configuração: Defina escopo_stp como "S" para a conta principal e subconta(s) desejada(s)
Resultado:
Cada conta com escopo_stp = S só impedirá a autonegociação dentro dessa conta específica
As contas sem nenhuma configuração STP podem corresponder com todas as outras contas do mesmo usuário
Caso especial: O UUID resolvido da conta principal é sempre o seu próprio, mesmo quando o escopo_stp = S. Se uma subconta definir escopo_stp = P, ela evitará negociar com a conta principal e com ela mesma.
Impedir que ordens de uma subconta específica (por exemplo, subconta1) correspondam com suas próprias ordens
Configuração: Defina escopo_stp como "S" para a subconta1
Resultado:
As ordens da subconta1 não corresponderão com outras ordens da subconta1
A definição da conta principal como "P" não tem efeito especial, a menos que as configurações STP correspondentes sejam aplicadas às subcontas
Impedir que as ordens de uma subconta específica (por exemplo, subconta2) correspondam com as ordens de todas as outras contas na mesma conta principal
Configuração: Defina escopo_stp como "P" para a subconta2 e todas as outras subcontas
Resultado:
As ordens da subconta2 não corresponderão com as ordens da conta principal e de outras subcontas que também tenham escopo_stp = P
Se a conta principal for definida como "S", isso não terá nenhum efeito especial nas subcontas, a menos que elas tenham suas próprias configurações STP