ProRealTime
Zone de développement des applications API, des logiciels et utilitaires développés par les membres du forum
Répondre Page 1 sur 1

Récupérer les cours des marchés IG sous Excel

par Djobydjoba » 22 Aoû 2015 15:25

Bonjour à tous,

Je lance une bouteille à la mer, ou plutôt sur le forum, concernant une fonction sous Excel qui me serait terriblement utile. Il s'agit "tout bêtement" de pouvoir récupérer les cours des marchés, par le biais de l'API IG, sur une feuille Excel. L'intervalle d'actualisation des cours serait réglable (par exemple, actualisation chaque minute).

J'imagine que pour quelqu'un qui maitrise l'API IG sous Excel le rapatriement des cours doit être assez "straitforward" ? Quelqu'un l'a-t-il déjà mis en place ? J'ai téléchargé la feuille exemple de l'API Excel, sauf que pour le moment l'API IG, le VBA et moi ça fait trois. Même en pompant et m'inspirant de l'exemple ça reste excessivement laborieux :gloups:

Quelqu'un serait-il en mesure de proposer une trame fonctionnelle de récupération des cours IG sous Excel ? :prier:

:mercichinois: :mercichinois: :mercichinois:

Re: Récupérer les cours des marchés IG sous Excel

par Djobydjoba » 22 Aoû 2015 20:26

Hello -,

Ouf c'est simple, me voilà rassuré ;)

Bon allez, je me retrousse les manches pour arriver à mes fins. Je vais disséquer le moteur de ces macros et de cette API...

Je vous tiens au jus si j'arrive à quelque chose. Et si je n'arrive à rien aussi d'ailleurs. :mrgreen:

Re: Récupérer les cours des marchés IG sous Excel

par Djobydjoba » 22 Aoû 2015 23:37

Bon, ça avance pas si mal. En partant d'un classeur vide j'y importe progressivement les contrôles et les bouts de code du fichier exemple IG qui me sont utiles.

Le login fonctionne sur le nouveau classeur et je récupère un price par streaming. Il faudra attendre la fin du we pour voir s'il s'actualise vraiment. Il me reste maintenant à récupérer un ensemble de prices à partir d'une plage d'EPICs, l'occasion d'essayer de mieux piger comment en macro on peut travailler une plage de données.

Re: Récupérer les cours des marchés IG sous Excel

par chifounou » 23 Aoû 2015 00:11

A moitié off-topic (seulement)
Aoécificité exclusive : la plateforme de trading SierraChart accueille un classeur au sein même du logiciel
découlant sur beaucoup de possibilités pour les amateurs

http://www.sierrachart.com/index.php?page=doc/doc_StudiesSystemsAlerts.php
http://www.sierrachart.com/index.php?page=doc/doc_Spreadsheets.html

Re: Récupérer les cours des marchés IG sous Excel

par Djobydjoba » 23 Aoû 2015 12:36

Je vois qu'on peut a mum 40 souscriptions simultanées Lightstreamer. Ce n'est pas énorme, cela limite la remontée des cours à 40 EPICs différents si j'ai bien saisi.

Et pour chaque EPIC je souhaiterais tant qu'à faire remonter le bid, le offer (ask) et le Update_Time. J'ai l'impression qu'il est possible de remonter ces 3 éléments dans la même souscription, pour ne pas avoir à utiliser une souscription pour chacun, mais je ne vois pas comment. La chaine RTD est régie par la fonction "buildRTDString" :

Code: Tout sélectionner
Public Function buildRTDString(subscriptionType As String, epic As String, field As String) As String

Si je renseigne un seul élément dans le field ça passe. Par exemple ici le bid :

Code: Tout sélectionner
buildRTDString("market", "IX.D.indice anglais.IFE.IP", "Bid")

J'ai essayé de renseigner plusieurs éléments dans le field mais ça fait planter la macro et Excel. J'ai essayé plusieurs syntaxes :

Code: Tout sélectionner
buildRTDString("market", "IX.D.indice anglais.IFE.IP", "Bid + Offer")
buildRTDString("market", "IX.D.indice anglais.IFE.IP", "Bid, Offer")

Si quelqu'un a une idée je suis preneur. Je ne peux pas m'inspirer du fichier Excel d'IG car il semble ne remonter qu'un élément par souscription à chaque fois. J'arrive aux limites de mon incompétence.

Re: Récupérer les cours des marchés IG sous Excel

par beni » 07 Sep 2015 09:28

Salut Djoby !

Je n'ai pas testé mais essayes cette syntaxe:
Code: Tout sélectionner
buildRTDString("market", "IX.D.indice anglais.IFE.IP", "UPDATE_TIME BID OFFER")

Re: Récupérer les cours des marchés IG sous Excel

par Djobydjoba » 12 Sep 2015 08:41

Merci bcp pour le tuyau Beni. Je garde ça sous le coude. Finalement je suis parti sur REST plutôt que le stream pour télécharger les cours, n'ayant pas besoin que ça se rafraichisse en permanence dans mon fichier, et surtout parce que je me sentais plus capable de piger avec REST.

Çà a été laborieux mais j'ai réussi à en faire même un peu plus : récupérer via l'API les conditions IG de tous les contrats qui m'intéresse (taille contrat, marge, résolution pip...), données ensuite utilisées par mon tableau de calcul du risque / suivi des positions (gains/pertes, risque au stop, risk-reward...). Avec /markets?epics={epicsList}, en une seule requête il est possible de récupérer toutes les infos utiles de 50 epics (nb d'après mes tests), donc la macro fait 2 ou 3 requêtes pour récupérer les infos des 120 epics environ de ma liste. Sachant que le nombre de requêtes par minute est limité à 60, y a de la marge. Pour le moment je lance la macro manuellement via un contrôle.

Dans ma todolist :
- Comprendre pourquoi ça ne marche pas sur le PC du boulot. Des messages d'erreur VBA. Bizarre c'est pourtant la même version d'Office.
- Rafraichissement auto toutes les X minutes (3 minutes c'est bien suffisant) plutôt que lancement manuel. Ça devrait être simple mais tout est long pour moi en VB, donc pas encore eu le temps.

Et plus tard retrouver les infos de positions, que je saisis pour le moment à la main dans mon tableau de calcul du risque / suivi de positions. Mais il faudra alors scinder mon tableau en deux, un pour le suivi des positions, l'autre pour le calcul du risque préliminaire à l'ouverture, ce dernier ne pouvant être rempli que manuellement.

Voilà, voilà.

Re: Récupérer les cours des marchés IG sous Excel

par Djobydjoba » 12 Sep 2015 10:55

Peux-tu préciser Xavier ?

Re: Récupérer les cours des marchés IG sous Excel

par Djobydjoba » 12 Sep 2015 11:26

C'est vague, toujours pas sûr de te suivre.

La virgule au lieu du point comme séparateur décimal entraîne un msg d'erreur à la connexion. Une solution a été brillamment trouvée par Koub37 et chez moi ça a parfaitement corrigé le pb (modif à faire dans le module JSON.bas) : https://labs.ig.com/node/132

Re: Récupérer les cours des marchés IG sous Excel

par LPhilippe » 21 Mai 2016 21:57

Bonsoir existe t'il un fichier excel qui permet de récupérer les historiques intraday (de 1mn à 1jour) des cours ? Merci

Articles en relation
Récupérer les cours avec l'API IG Market et Python
par layzard » 24 Juil 2016 11:09 (53 Réponses)
API IG : récupérer des valeurs d'indicateurs ?
par beni » 18 Déc 2015 15:13 (12 Réponses)
Programme pour récuperer les ticks chez PRT cfd à risque limité
Fichier(s) joint(s) par falex » 16 Déc 2016 10:52 (36 Réponses)
Utilisation Excel avec API IG
Fichier(s) joint(s) par VK_Trader » 15 Mai 2015 01:16 (46 Réponses)
API IG par l'exemple, récupération des cours, trades
par maroxe » 28 Jan 2015 13:39 (8 Réponses)
Cours en temps réel sur le forum avec API iG ?
Fichier(s) joint(s) par jized » 26 Aoû 2015 15:56 (96 Réponses)
Créer serveur Raspberry récupération de cours
Fichier(s) joint(s) par falex » 24 Sep 2015 08:09 (43 Réponses)
Outil permettant d'énoncer les cours par synthèse vocale
Fichier(s) joint(s) par chad » 14 Aoû 2017 11:53 (11 Réponses)
IG python : distinguer working order - position en cours
par Nomade » 11 Déc 2017 18:14 (4 Réponses)
L3 touches clavier sous windows et clavier jeux videos
par Benoist Rousseau » 06 Avr 2016 16:43 (2 Réponses)

ProRealTime

Alors partagez-le 5 fois c'est bon pour la santé