PlanèteMembres  |  Mission   xlsAsset xlsAsset
Cherchez dans nos forums :

Communauté des investisseurs heureux (depuis 2010)

Echanges courtois, réfléchis, sans jugement moral, sur l’investissement patrimonial pour devenir rentier, s'enrichir et l’optimisation de patrimoine

Invitation Vous n'êtes pas identifié : inscrivez-vous pour échanger et participer aux discussions de notre communauté !

Flèche Fiscus (partenariat) : simplifiez vos déclarations avec les courtiers bourses étrangers en cliquant ici.

[+2]    #1 25/04/2019 16h36

Membre (2018)
Réputation :   68  

Bonjour,
Est-ce qu’il y a dans la communauté des utilisateurs de l’API d’Interactive Brokers pour lancer des ordres?
J’ai écris quelques lignes de codes sur la base de l’API Excel proposée et après quelques tests sur le compte simulé, je suis passé sur mon compte réel récemment avec un premier ordre qui est passé aujourd’hui.
Il y a des langages plus évolués qu’Excel, mais j’ai commencé par ça car j’ai pas mal de datas sous Excel actuellement.
Je l’utilise avec des ordres sur les options. J’ai programmé une liste de 200 options environ avec date d’expiration, strike et premium et la macro tourne toutes les x minutes pour voir si le marché trouve preneur.
Si il a des utilisateurs pour échanger…
Bonne journée.

Mots-clés : api, excel, ib, tws

Hors ligne Hors ligne

 

#2 25/04/2019 16h42

Membre (2019)
Top 5 Année 2024
Top 5 Année 2023
Top 5 Année 2022
Top 5 Expatriation
Top 5 Obligs/Fonds EUR
Top 5 Entreprendre
Top 20 Finance/Économie
Top 5 Banque/Fiscalité
Réputation :   1368  

INTJ

C’est une bonne idée, je n’ai jamais sauté le pas, je sais qu’il y a des scripts en Python et pas mal de vidéos sur Youtube pour donner des explications et exemples.


Parrain Interactive Brokers ( par MP ) - Déclaration fiscale IBKR Degiro Trade Republic  - Parrain Qonto ( par MP ) -- La bible des obligations

Hors ligne Hors ligne

 

#3 30/04/2019 09h14

Membre (2018)
Réputation :   68  

Bonjour,
Il n’aura donc pas fallu une semaine pour qu’IB me demande de revoir ma position sur la soumission des ordres….
Trop d’ordres placés par rapport au nombre d’ordres exécutés. Du coup, IB me demande de prendre des mesures en éliminant les ordres non-productifs pour ne pas manger trop de bande passante et de ressources système…
Aurais-je abusé?
A chaque lancement, la macro exécute un peu plus de 200 ordres en 6-7 minutes. Je pense que je l’ai lancé en moyenne 10 fois par jour durant 4 jours, donc environ 8000 ordres placés pour 2 exécutés….
J’ai bien entendu des pistes d’amélioration, mais cela nécessiterait que je m’abonne aux données de marché en direct pour travailler sur des données plus fiables que le décalage de 15 minutes. Le coût étant de 9$ par mois, ça me semble raisonnable.
Mais ça va m’obliger à refaire du code.

D’un autre côté, pas le choix, le message d’IB est assez explicite:

IB a écrit :

Please note that failure to take immediate steps to resolve this matter may result in restrictions being placed upon your account. Accordingly, we’d appreciate your prompt attention to this matter.

Bonne journée.

Hors ligne Hors ligne

 

#4 09/05/2019 08h48

Membre (2018)
Réputation :   68  

Bonjour,
Suivi du sujet, pour ceux que ça intéresse et qui seraient tentés de se lancer.
L’API DDE ne permet pas d’accéder aux données de marché en différé. Donc pour l’utiliser, il faut s’abonner aux données de marchés en temps réel. Cout global pour les options US de l’ordre de 9$. Il m’avait été recommandé de m’abonner à OPRA, NASDAQ, AMEX et NYSE.
Certains d’entre vous ont ce type d’abonnement temps réel?

La façon de faire pour éviter les abonnements et avoir les bid/ask prices en temps différé est de partir sur l’API avec les contrôles ActiveX (donc le fichier TwsActiveX.xls) et passer la case données de marché à 3 au lieu de 1 par défaut. J’ai commencé à le regarder, ça me semble guère plus compliqué que DDE, mais je n’ai pas migré mes macros vers ActiveX.
De toute façon, le marché n’a aucune volatilité ces temps-ci, il n’y a quasi rien qui passe pour moi.

Pour s’entrainer, il est possible toujours d’aller sur le compte simulé où il n’y a pas de limitation sur les nombres d’ordres que l’on peut envoyer.

Bonne journée.

Hors ligne Hors ligne

 

[+1]    #5 09/05/2019 09h25

Membre (2019)
Réputation :   8  

Bonjour as98qr53,

Avec plusieurs associés nous avons développé un véritable automate écrit en  C# qui utilise l’API de IB.

as98qr53 a écrit :

Il n’aura donc pas fallu une semaine pour qu’IB me demande de revoir ma position sur la soumission des ordres….
Trop d’ordres placés par rapport au nombre d’ordres exécutés. Du coup, IB me demande de prendre des mesures en éliminant les ordres non-productifs pour ne pas manger trop de bande passante et de ressources système…
Aurais-je abusé?

Je peux vous donner un conseil pour ne pas vous retrouver dans cette situation.

Pour la reception des market data, l’API TWS de IB met un cap à 100 flux disponibles gratuitement.

Pour l’envoi/modification des ordres et confirmation de leur exécution, chaque compte est limité a 50 ordres par seconde.

Ainsi, je recommande que votre automate fasse la prise de décision d’envoi et de maintenance des ordres sur votre machine, avec l’utilisation d’ordres ’LIMIT’ ou ’MARKET’, plutôt que l’envoi systématique d’ordres ’IOC’ ou ’FOK’

Dernière modification par spapas856 (09/05/2019 10h53)

Hors ligne Hors ligne

 

#6 09/05/2019 09h34

Membre (2014)
Réputation :   48  

Bonjour as98qr53,
   Je ne connais pas bien le sujet, mais n’auriez-vous pas intérêt à migrer vers une technologie     platform-independent, donc Java et/ou Python pour atteindre une communauté de pratiquants plus étoffée? Et puis DDE et Active X sont maintenant des vieilles technologies chez Microsoft…

Dernière modification par idamante (09/05/2019 09h36)

Hors ligne Hors ligne

 

#7 07/07/2019 11h28

Membre (2018)
Réputation :   68  

Bonjour,
Petite mise à jour du sujet.
Depuis qu’IB m’a conseillé (sic) de réduire le nombre d’ordres passés non exécutés, j’ai abandonné la macro que j’avais écrite.
Néanmoins, j’ai eu la surprise de recevoir un mail d’IB m’annonçant que sur le trimestre passé (avril-juin), je dépassais 390 d’ordres journalier sur un mois. Je passe donc en statut professionnel.

IB a écrit :

To determine whether a public customer is a Priority Customer or Professional Customer, the broker-dealer is required to conduct a quarterly review each calendar quarter. If a customer had an average of more than 390 orders per day during any month of a calendar quarter, that customer’s orders must be marked as Professional Orders for the next calendar quarter.

J’étais sur avril à un peu plus de 640 ordres par jour en moyenne contre un peu moins de 140 sur mai et juin.
Impact à prévoir sur les commissions un peu supérieures que pour un compte non pro.

IB a écrit :

As account(s) that you control have exceeded the threshold for Professional Order designation for the 2nd quarter of 2019 as defined by the exchanges, your option orders will be designated as Professional Order on each of those exchanges for the next quarter effective immediately. As dictated by the rules of those exchanges, orders marked in this fashion will not enjoy parity with "customer" orders. You will also be charged the fee prescribed by the executing exchange, typically $0.20 per contract, for any trades done pursuant to such orders on those exchanges.

Quelqu’un saurait m’expliquer ce que "parity with customers orders" signifie?

Voila, c’est toujours bon à savoir qu’il y a une borne max d’ordres par jour qui est comptabilisée quelque part et qui a un impact sur notre statut.

Bon dimanche!

Hors ligne Hors ligne

 

#8 07/07/2019 12h30

Membre (2019)
Réputation :   8  

Bonjour as98qr53,

390 ordres journaliers cela me parait beaucoup surtout si la plupart ne sont pas ou partiellement exécutés.

Pour répondre a votre question, je vous invite a regarder sur le site internet de la bourse / plateforme ou vos ordres sont routes pour être exécutés. Certaines plateformes appliquent en effet un "tiering" dans leur tarification entre clients particuliers et professionnels, mais aussi si vos ordres apportent ou retirent de la liquidité dans le carnet pour l’exécution.

Bon trading estival !

Hors ligne Hors ligne

 

#9 17/06/2020 15h17

Membre (2017)
Réputation :   85  

Bonjour,

J’essaye de recevoir/envoyer des ordres depuis l’API (C++ et/ou python) mais je n’arrive même pas à installer le package.

Je l’ai téléchargé depuis le site IBKR, j’ai bien le dossier twsapi_macunix mais après je sèche… y aurait-il un utilisateur (Mac OS) qui pourrait m’aider ? smile

Dernière modification par Caceray (17/06/2020 15h17)

Hors ligne Hors ligne

 

#10 17/06/2020 15h46

Membre (2019)
Top 5 Année 2024
Top 5 Année 2023
Top 5 Année 2022
Top 5 Expatriation
Top 5 Obligs/Fonds EUR
Top 5 Entreprendre
Top 20 Finance/Économie
Top 5 Banque/Fiscalité
Réputation :   1368  

INTJ

Parrain Interactive Brokers ( par MP ) - Déclaration fiscale IBKR Degiro Trade Republic  - Parrain Qonto ( par MP ) -- La bible des obligations

Hors ligne Hors ligne

 

#11 20/06/2020 13h17

Membre (2017)
Réputation :   85  

J’avais déjà vu cette page mais le fichier téléchargé était un dossier (non zippé contrairement à ce qu’indiquait le site).

J’ai fini par trouver en allant sur le fichier README et quelques recherches complémentaires sur des forums spécialisés à installer le module pour Python3.

La programmation n’est pas évidente, il faut implémenter une classe qui gère les objets Wrapper et EClient, mais à force de regarder les tutos et exemples sur Youtube ça commence à venir.

Je n’ai pas encore essayé en C++ mais ça paraît encore plus complexe…

Dernière modification par Caceray (20/06/2020 13h17)

Hors ligne Hors ligne

 

Pied de page des forums