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

API REST / STREAM

par falex » 22 sept. 2014 10:35

IG nous met à disposition une API documenté pour pouvoir faire no propres robots de trading à partir de ce que l'on veux (Javascript, C, python, ruby perl, pascal, ...).

Valable uniquement pour les compte IG pas les marque blanche.

Les pointeurs utilent :
Présentation de l'API : http://labs.ig.com
FAX avec les informations importantes comme les url d'accès où les quotas de requêtes : http://labs.ig.com/faq

Le "Getting Started" : http://labs.ig.com/gettingstarted

Il est important de créer un compte démo avec le même email que votre compte réel, ainsi que le compte de démo aura une validité permanente (confirmé ce matin au téléphone).

Les scripts d'exemple mis à disposition par IG est paramétré avec l'url de démo, je ne comprennais pas pourquoi ça ne marchait pas et hop en mettant l'url de prod et l'API key de mon de mon compte : je voyais les cours et les positions.
MàJ : il y a deux scripts d'exemple : un en javascript pour un navigateur web et l'autre en VBA pour Excel.

A priori pas de souci de "double connexion" comme sur iphone vs web : vous pouvez très bien être connecté sur le web et via API en même temps.

---
Quelles utilisations de l'API :
- Refaire l'interface de trading à votre sauce (:lol:)
- Ajouter des outils non présents dans l'interface d'origine
- Créer des automates en dehors des outils grnad public que sont PRT et MT4
- Toute autre idée qui n'est pas possible avec les outils actuels.
...

Re: API REST

par frigolite » 22 sept. 2014 10:47

Spoiler:
Je pensais que tu ouvrais un post pour une nouvelle rencontre entre andliliens, Mon traducteur de ton langage aiephonien, me donnait : Happy restaurant! ;)

Re: API REST

par falex » 22 sept. 2014 11:32

Spoiler:
pas trop déçu ?

Re: API REST

par frigolite » 22 sept. 2014 11:33

Spoiler:
non, je reste happy

Re: API REST

par falex » 22 sept. 2014 11:36

Spoiler:
Me voilà rassuré, j'avais peur que tu sois en REST

Re: API REST

par Benoist Rousseau » 22 sept. 2014 12:27

Et bien cela peut-être très très sympa... faire l'interface de rêve dont on a envie... reste le temps à trouver :(

Re: API REST

par z0om » 22 sept. 2014 12:59

:roll:

Re: API REST

par z0om » 22 sept. 2014 12:59

Benoist Rousseau a écrit :Et bien cela peut-être très très sympa... faire l'interface de rêve dont on a envie... reste le temps à trouver :(
Ca me brancherait bien aussi, moi qui aime custom.

Re: API REST

par falex » 28 oct. 2014 16:25

Culture : REST n'est ni un protocole ni un format de donne mais plutôt un cadre sur comment doit se faire le dialogue entre un client et un serveur : http://fr.m.wikipedia.org/wiki/Representational_State_Transfer

---
Alors qui a fait ses premiers codes ?

Re: API REST

par takapoto » 05 nov. 2014 10:29

falex a écrit :je ne comprennais pas pourquoi ça ne marchait pas et hop en mettant l'url de prod et l'API key de mon de mon compte : je voyais les cours et les positions.
Bonjour Falex,

Peux-tu préciser où tu as mis l'url de prod et l'API key de ton compte ?
Dans quel exemple : Javascript ou Excel ?
Et à quel endroit précisément ?
Et l'API key est celle de ton compre réel ou démo ?

=> je n'arrive pas à faire fonctionner les exemples...

Re: API REST

par falex » 05 nov. 2014 10:59

Hello

Je n'ai testé que la V1 du script javascript, je n'ai pas encore regardé la version excel.
ig a corrigé son script javascrip (sorte de v1.1) mais n'a pas mis à jour le "versioning", enfin peu importe.

L'exemple fourni par ig fonctionne avec l'url de démo, donc il faut mettre l'API key du compte de démo.
Si tu veux l'utiliser avec ton compte réel, idem que pour le démo il fautr générer une API-key et changer l'url.

L'url se trouve dans le fichier : ig-public-api.js
c'est la première variable : urlRoot=...

Pour les url d'accès cf. la FAQ : https://labs.ig.com/faq

Re: API REST

par takapoto » 05 nov. 2014 11:03

:merci:

Grâce à tes indications, j'arrive à faire marcher la démo.

A suivre...

Re: API REST

par falex » 05 nov. 2014 12:09

bien !

J'avoue que la première fois j'ai cherché pendant un bon moment avant de trouver où était le pb.

Re: API REST

par takapoto » 15 nov. 2014 19:56

Je n'ai pas non plus réussi à exécuter l'exemple Excel.

Jized utilise l'API avec java.

Re: API REST

par falex » 15 nov. 2014 22:57

J'ai commencé a faire des tests avec Python mais j'ai laissé tomber pour l'instant a cause ... De l'authent NTLM du proxy de ma boite ... :-(

Re: API REST

par beni » 16 nov. 2014 13:48

Bonjour à tous,

Aucun problème de mon côté pour tester l'exemple excel, que ce soit en démo ou en live.
J'ai pas testé pour passer des ordres mais la visualisation des cours marchent bien, je retrouve mes listes, mes pos....

Par contre je trouve que c'est un peu lent et perso je pense pas qu'excel soit le meilleur outil pour exploiter l'API. Mais ça permet de s'inspirer

Je suis en train de tester de mon côté avec python, je sais pas trop ce que je vais en faire mais ça permet d'apprendre :mrgreen:

Si quelqu'un a des idées d'appli je suis preneur !

Un dernier petit truc: pendant deux jours j'ai eu une erreur 401 en me connectant à mon compte demo sans comprendre pourquoi...en fait j'avais oublié le "demo-" devant mon identifiant comme un âne... j'ai honte :oops: :oops:

Re: API REST

par falex » 17 nov. 2014 10:27

Quand je faisais les tests fonctionnels avec l'exemple javascript d'ig, j'avais effectivement, l'affichage des position, la recherche Ok par contre impossible de passer un ordre avec leur exemple : A chaque fois erreur ou ordre rejeté ...

Re: API REST

par bobbyO » 17 nov. 2014 14:03

Bonjour tout le monde,
Sympa comme news.
Ayant rapidement parcouru les exemples donnés, si j'ai bien compris l'exemple Excel, c'est en fait du code C# qui se sert d'Excel comme receptacle de données ?
En tous cas, cela peut me permettre de construire mes indicateurs multi-ut, cose que je ne pouvais pas faire avec ig.
-+

Re: API REST

par beni » 17 nov. 2014 21:16

Désolé pour le délai de ma réponse
- a écrit :Comme tu es dans une configuration où ça marche, pourrais-tu s'il te plaît nous indiquer ta configuration :
- windows (XP, XP SP3, Vista, Windows 7, Windows 8 ?) ---> Windows 7
- version système : 32bits ou 64bits ---> 64 bits
- version Excel (97, 2003, 2007, 2010 ?) ---> Excel 2010
- version .NET (3.0, 3.5, 4.0, 4.5 ?) ---> .NET FrameWork 4.0
- la version ActiveX Data Objects (ADO 6.0, 6.1, 6.2 ou autres ?) ---> je pense que c'est la 6.0 :? , y'a un moyen de le vérifier ?
- quel est le paramétrage spécifique que tu aurais fait sur Excel ? ---> je n'ai rien changé
- etc... etc...
- quelle est la version de l'exemple Excel fourni par IG as-tu utilisé ? ---> la version 32 bits, sur les forums d'ig labs je crois que c'est celle qu'ils conseillent
- etc... etc...
A+

Re: API REST

par jized » 19 nov. 2014 08:56

Bonjour,

En echo aux messages précédents :

En effet, j'utilise le langage Java pour la connexion pour diverses raisons :
- Javascript est plus lent, nécessite un navigateur ou un environnement lourd pour tourner, et il a plein de limites d'accès aux fichiers pour des raisons de sécurité.
- Excel : pas du tout adapté à une gestion en temps réel des ticks qui arrivent à tout moment.
- Le mode STREAM fait appel à une bibliothèque externe qui n'existe pas dans beaucoup de langages (Lightstreamer).

Pour se connecter en mode REST, il faut pouvoir contrôler complètement les paramètres des requêtes HTTPS pour respecter le protocole d'accès au serveur ig, ce qui n'est pas évident avec les trucs tout fait de langages plus simples à utiliser mais qui cachent plein de paramètres.

La connexion en mode REST ne donne pas accès aux cotations en temps réel, mais elle permet d'obtenir des codes de session pour basculer en mode STREAM.

Malgré tout je note quelques problèmes :
- une connexion directe en mode REST ferme toute autre connexion active, en particulier le trading par l'appli web de ig, et vice-versa. On ne peut pas avoir les 2 en même temps.
Par contre si prt tourne il n'est pas fermé (ouf).
Quand le mode STREAM est établi, on peut à nouveau se connecter par l'interface web.

- il y a des déconnexions aléatoires plusieurs fois dans la journée de la part du serveur ig (0, ou 1, ou bien 5 ou 6, c'est imprévisible).
J'ai donc mis en place un système de surveillance qui détecte les déconnexions pour se reconnecter immédiatement (moins d'une minute).

Mais il y a un effet secondaire car qui dit nouvelle connexion dit déconnexion de l'interface web... c'est ennuyeux quand un scalp est en cours :o

Sujets similaires
[PYTHON] Script API IG STREAM + REST
par tcournez » 14 sept. 2015 21:50 (30 Réponses)
ig rest api - heure des ouvertures et clotures quotidiennes
par falex » 22 avr. 2015 14:50 (3 Réponses)
IG API : Augmentation du nombre de requet REST
par falex » 04 août 2016 10:31 (9 Réponses)
Aide pour API REST IG
par DarkPoule » 16 mai 2021 00:36 (46 Réponses)
API IB TWS comment stream flux future Dax
par shuraver » 28 mai 2020 22:07 (3 Réponses)
REST , maj
par brucy » 21 août 2015 18:23 (1 Réponses)
LS_snapshot (stream)
par Tartempion » 22 sept. 2015 21:57 (10 Réponses)
clarification signification "#" et "" dans les flux stream
par musicae » 23 sept. 2016 15:01 (3 Réponses)
risque d'arrêt du Gulf Stream
par noko » 07 sept. 2018 20:28 (4 Réponses)
Trader au Stream Deck avec ProRealTime : une révolution
Fichier(s) joint(s) par Benoist Rousseau » 04 déc. 2019 12:00 (75 Réponses)