Descrizione del progetto
TradottoNon conosco molto bene Python, quindi non posso finirlo da solo.
Compito:
Devi creare due script Python che comunicano con la piattaforma Interactive Brokers [di seguito - IB] (libreria e esempio di connessione funzionante - allegare) e inviare informazioni alla coda RabbitMQ (ancora, la libreria standard).
Importante sfumatura:
Quando ci si connette alla piattaforma, viene indicato l'ID ordinal del cliente.
Il cliente con il numero “0” è sempre il principale, ricevendo tutte le informazioni, a differenza di tutti gli altri ID “superiori a 0”.
A questo proposito, in qualsiasi stato/situazioni non di personale, la disconnessione dalla piattaforma IB deve essere eseguita correttamente. Altrimenti, sarà possibile connettersi alla piattaforma con Cleart ID=0 non prima di mezz'ora / un'ora. Timeout dalla piattaforma e chiusura forzata della sessione.
Pertanto, la stabilità del lavoro è un fattore chiave. Non risparmiamo su ispezioni, non dobbiamo cadere.
1. Primo script.
Dopo il lancio:
* Supporta una connessione permanente (asincrona) alla piattaforma IB attraverso gli accessi specificati nel file di configurazione;
* Supporta una connessione costante (asincrona - 1 compito viene eseguito alla volta) al server RabbitMQ, ascolta diverse code per richieste (elenco di tutte le possibili richieste allegato) + "si iscrive" agli eventi della piattaforma IB e invia le informazioni complete necessarie sulla coda riguardo a questi eventi per un successivo trattamento in un altro sistema;
2. Secondo script.
Dopo il lancio:
* Supporta una connessione costante (sincrona - 1 compito viene eseguito alla volta) al server RabbitMQ, ascolta diverse code per query (elenco di tutte le possibili richieste allegato);
Su richiesta, un messaggio dalla coda:
* Si connette alla piattaforma IB accedendo al messaggio dalla coda;
* Esegue una missione;
Disconnettersi dalla piattaforma e attendere ulteriori istruzioni;
In allegato, un compito più dettagliato... Con le sue parole ha cercato di descrivere in dettaglio.
+ esempio di connessione alla piattaforma TWS.