Estabelecer uma ligação¶
Pode ligar-se a um proxy da Open API do cTrader usando o protocolo TCP ou o protocolo WebSocket. Este guia abrange ambas as opções.
Usando TCP ¶
Utilização de SSL
A ligação do cliente TCP deve usar SSL, caso contrário não poderá estabelecer ligação ou interagir com a API.
Pode estabelecer uma ligação da seguinte forma usando os SDKs oficiais da Open API do cTrader.
1 2 | |
O método OpenClient.Connect() chama o método OpenClient.ConnectTcp().
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | |
O cliente Python da Open API tenta estabelecer automaticamente uma ligação quando é inicializado.
1 | |
Via WebSocket ¶
Ao ligar via protocolo WebSocket, o host e porta são os mesmos que ao ligar via protocolo TCP.
Aqui está como os SDKs oficiais da Open API do cTrader estabelecem uma ligação via WebSocket.
1 2 | |
O método OpenClient.Connect() chama o método OpenClient.ConnectWebSocket().
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | |
O SDK Python não suporta o padrão WebSocket.
Para um exemplo de uma aplicação web .NET Blazor que usa o padrão WebSocket para estabelecer e manter uma ligação, clique aqui.
Melhores práticas ¶
Aqui estão algumas diretrizes que deve ter em mente ao ligar-se à Open API do cTrader:
- No máximo, deve criar duas ligações: uma para contas demo e outra para contas reais. Cada ligação pode suportar um número ilimitado de contas de um determinado tipo.
- Depois de estabelecida uma ligação, deve passar pelo fluxo de autorização da aplicação. Se enviar quaisquer mensagens antes da sua aplicação estar autorizada, receberá um erro.
- Para manter uma ligação ativa, continue a enviar um evento heartbeat (
ProtoHeartbeatEvent) a cada 10 segundos. - Use uma fila de mensagens para enviar e receber dados para evitar eventos simultâneos de envio e receção.