Descrição do projeto
TraduzidoNão conheço muito bem Python, então não posso terminar isso sozinho.
Tarefa:
Você precisa criar dois scripts em Python que se comuniquem com a plataforma Interactive Brokers [doravante - IB] (biblioteca e exemplo de conexão de trabalho - anexo) e enviem informações para a fila RabbitMQ (novamente, a biblioteca padrão).
Importante nuance:
Ao se conectar à plataforma, o ID ordinal do cliente é indicado.
O cliente com o número “0” é sempre o principal, recebendo todas as informações, ao contrário de todos os outros IDs “maiores que 0”.
Nesse sentido, em qualquer situação de estado/não efetivo, a desconexão da plataforma IB deve ser realizada corretamente. Caso contrário, você poderá se conectar à plataforma com Cleart ID=0 não antes de meia hora/hora. Timeout da plataforma e fechamento forçado da sessão.
Portanto, a estabilidade do trabalho é um fator chave. Não economizamos em inspeções, não devemos falhar.
1. Primeiro script.
Após o lançamento:
* Suporta uma conexão permanente (assíncrona) à plataforma IB sobre os acessos especificados no arquivo de configuração;
* Suporta uma conexão constante (assíncrona - 1 tarefa é executada por vez) ao servidor RabbitMQ, escuta várias filas para solicitações (lista de todas as possíveis solicitações anexada) + "se inscreve" nos eventos da plataforma IB e envia as informações completas necessárias sobre esses eventos para processamento subsequente em outro sistema;
2. Segundo script.
Após o lançamento:
* Suporta uma conexão constante (síncrona - 1 tarefa é executada por vez) ao servidor RabbitMQ, escuta várias filas para consultas (lista de todas as possíveis solicitações anexada);
Mediante solicitação, uma mensagem da fila:
* Conecta-se à plataforma IB acessando a mensagem da fila;
* Executando uma missão;
Desconectar da plataforma e aguardar novas instruções;
No anexo, uma tarefa mais detalhada... Em suas palavras, ele tentou descrever em detalhes.
+ exemplo de conexão à plataforma TWS.