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

Re: Utilisation des API IG avec C#

par raiden500 » 04 juin 2015 14:36

Salut, question tres ballot, mais est ce que c'est possible en codant en C de pouvoir faire ceci:
Que les ordres puissent s'executer entre 9h et 17h et pas en dehors de ces 2 plages horraires.
Et par exemple ouverture de position des qu'on touche le PP du jour et fermeture apres 1 point.
Mais si par exemple on passe les PP mais qu'il est 8h50 bah qu'il ne se passe rien, et ainsi eviter le spread de 2 points !

Voila c'est surtout par curiosité et pour savoir si c'est possible :)

Re: Utilisation des API IG avec C#

par Tartempion » 04 juin 2015 14:37

falex a écrit :Oui ok pour la sémantique. Effectivement ce que met à dispo IG est plus un SDK, je te rejoins.

Arf tu sais la partie url est en fait très simple.
Le headers utilisé est toujours le même sauf dans deux cas :
A l'authent : c'est normal on a pas encore la clef de session :-)
Pour la fonction HTTP DELETE : Y'a un bug chez IG donc tu dois faire un POST avec dans le header le mot clef _delete.

Aprsè l'appel de chaque url a besoin d'un certains nombre de paramètre que tu devras regarder pour écrire ton programme de toute façon (où passer en paramètre de ta biblio de fonction IGPublicPcl.

Je comprends ta deception par rapport à cette biblio ...

La doc D'IG est relativement clair et une fois que tu auras intégrer les deux trois mécanisme tu auras vite oublié cet épisode :-)
Ah c'est bon à savoir le coup du DELETE ! :merci: Falex.
J'avais contourné le pbm pour fermer une position mais ça peut servir pour d'autres DELETE au cas où…

edit 13/06/2015 : Après vérification la requete DELETE fonctionne bien chez moi. En tout cas pour supprimer une watchlist par exemple c'est à dire quand il n'y a pas de body à joindre. Par contre c'est vrai que la requete DELETE pour fermer une position est pour l'instant impossible pour moi car je ne peux pas mettre un body (euh dans tous les sens du terme :D ) dans une requete DELETE. C'est pas réglo dans la définition formelle de la requete DELETE . Cf recherche Google. Mais bon, pour fermer la position y a moyen de contourner le pbm heureusement.

Re: Utilisation des API IG avec C#

par takapoto » 04 juin 2015 14:48

raiden500 a écrit :Salut, question tres ballot, mais est ce que c'est possible en codant en C de pouvoir faire ceci:
Que les ordres puissent s'executer entre 9h et 17h et pas en dehors de ces 2 plages horraires.
Et par exemple ouverture de position des qu'on touche le PP du jour et fermeture apres 1 point.
Mais si par exemple on passe les PP mais qu'il est 8h50 bah qu'il ne se passe rien, et ainsi eviter le spread de 2 points !

Voila c'est surtout par curiosité et pour savoir si c'est possible :)
A partir du moment où on est connecté à IG, on peut faire ce que l'on veut, notamment ce que tu décris...
C'est d'ailleurs pour cela que je développe mon outil, dans l'optique d'effectuer du trading automatique.
Sinon, pour passer des ordres manuellement, il y a déjà L3.

Re: Utilisation des API IG avec C#

par raiden500 » 04 juin 2015 15:14

takapoto a écrit :
raiden500 a écrit :Salut, question tres ballot, mais est ce que c'est possible en codant en C de pouvoir faire ceci:
Que les ordres puissent s'executer entre 9h et 17h et pas en dehors de ces 2 plages horraires.
Et par exemple ouverture de position des qu'on touche le PP du jour et fermeture apres 1 point.
Mais si par exemple on passe les PP mais qu'il est 8h50 bah qu'il ne se passe rien, et ainsi eviter le spread de 2 points !

Voila c'est surtout par curiosité et pour savoir si c'est possible :)
A partir du moment où on est connecté à IG, on peut faire ce que l'on veut, notamment ce que tu décris...
C'est d'ailleurs pour cela que je développe mon outil, dans l'optique d'effectuer du trading automatique.
Sinon, pour passer des ordres manuellement, il y a déjà L3.
Serieux serieux ??
Ahh mais je crois que je vais m'y mettre au C !
Tu saurais me dire ce qu'il faut apprendre pour pouvoir faire ça ?
J'avais voulu commencer a apprendre le python mais bon, faut quand même s'attacher malgré qu'on dise qu'il est simple !

Re: Utilisation des API IG avec C#

par takapoto » 04 juin 2015 15:37

Si tu dois partir de zéro, je te conseille python car tu as déjà un modèle avec l'outil L3 dont les sources sont disponibles.

Re: Utilisation des API IG avec C#

par falex » 04 juin 2015 16:15

Tout est possible comme le dit takapoto, après c'est juste une volonté de le programmer avec des bons outils.

Si t'a jamais codé de ta vie, le C n'est pas ce qu'il y a de plus accessible, je confirme aussi.

J'ai pas du aligner une ligne de C depuis 20 ans et je m'en porte très bien :musique:

Re: Utilisation des API IG avec C#

par takapoto » 04 juin 2015 23:09

Merci -, je le mets en pratique dès demain !

Re: Utilisation des API IG avec C#

par bobbyO » 05 juin 2015 13:43

Hello,
Très bonne idée cette file !
Je me suis également lancé sur un programme C# pour du trading semi-automatique : alerte sur détection d'une configuration graphique donnée, le reste se faisant manuellement
-+

Re: Utilisation des API IG avec C#

par takapoto » 05 juin 2015 14:02

Salut bobbyO,

Sans dévoiler tes stratégies, peux-tu développer les aspects techniques ?

Récupération des cours ig ?
Affichage des graphiques ?
Bibliothèques externes ?
etc...

Je suis curieux des techniques utilisées par les autres car cela ouvre des horizons nouveaux pour moi (cf les messages de - et falex)

Re: Utilisation des API IG avec C#

par takapoto » 05 juin 2015 18:29

Merci -
J'avais mis la file en favoris mais je n'avais pas vu les nouveaux liens...

Re: Utilisation des API IG avec C#

par bobbyO » 05 juin 2015 22:03

Salut Takapoto,
Alors mes principes :
- récupération des cours en ticks par ticks
- assemblage en N ticks et je fais varier N par ratio de 1.5. Je commence à 3 ticks, puis 4.5 arrondi à 5, puis 7, 10, ...
- Pour chaque ut, calcul de mes indicateurs avec la librairie TA-LIB. Mon principe général est détection de divergence sur des set-ups particuliers
- Je me construis alors mes indicateurs sur cette base
- Pour l'instant, je n'ai pas de graphique, ne sachant pas quoi utiliser et ce n'est pas ma priorité. L'idée est d'avoir une alerte sonore puis de trader ensuite à partir des graphiques ig
- Les cours sont ceux du CAC, DAX, DJ

En parallele mais lors en étape 2, je veux backtester dans chaque ut de N ticks, (donc entrée + sortie), et calculer le % de gains, rapport moyenne des gains / pertes, DD ... pour améliorer progressivement mes indicateurs.

En fait j'ai déjà les indicateurs et backtests sous prt mais je suis bloqué pour faire du multi-ut et déclencher une alerte donc passage à l'Api IG. De plus beaucoup plus de possibilités que prt

-+

Re: Utilisation des API IG avec C#

par Mister Hyde » 12 juin 2015 20:25

En formation MCSD, je profite de l'API d'IG pour pratiquer le .Net :mrgreen:

J'utilise le SDK C# .Net fourni (IgPublicPcl) pour développer un client WPF, beaucoup de choses sont déjà implémentées et ça va relativement vite.

Quelques points que j'ai noté,

Si comme moi vous utilisez un Windows en Français de France :mrgreen: (locale fr-Fr dans les paramètres régionaux) les conversions de nombres décimaux échouent avec un FormatException dans l'output Visual Studio, et dans les applis d'exemple, vous avez ... rien du tout.

Le streaming vous envoie des chiffres avec un point en séparateur décimale.

Pour avoir quelque chose de passe partout, on peut ajouter un truc du style

Code : #

_numberFormat = new NumberFormat();
_numberFormat.NumberDecimalSeparator(".");

PriceData.Bid = Convert.ToDecimal(bid, _numberFormat);
Dans les méthodes L1LsPriceUpdateData et StreamingAccountDataUpdates.

Pour les épics, à renseigner sous la forme "IX.D.CAC.IMF.IP" (ex: pour un mini France40 au comptant), le SDK préfixe avec un "L1:" (pas de "MARKET:" comme dans le Streaming Companion)

L'url est hardcoded, mais ça tout le monde l'avais vu. :lol:

Pas sûr que la désubscription se fasse "proprement", on voit des exceptions passer, y compris dans l'appli d'exemple en WPF, et chez moi elle ne se ferme plus quand j'appuie sur Exit, obliger d'arrêter le mode debug.

Niveau perf, comme - l'a noté, ça bouge aussi vite que le streaming companion, mais je n'ai pas testé plus que ça.

Re: Utilisation des API IG avec C#

par jpsauvager » 15 juin 2015 17:48

Bonjour à tous,

J'ai téléchargé le SDK ig pour C# et je n'arrive pas à ouvrir la partie IGPublicPcl dans Visual Studio 2012. Il me dit que le projet ne peut pas être ouvert avec cette version de VS. :mur:

Quelqu'un a déjà eu ce souci là ? Quel configuration vous avez pour utiliser ce SDK ?

Merci

Re: Utilisation des API IG avec C#

par takapoto » 15 juin 2015 18:22

Je ne peux pas te répondre, j'utilise VS 2013 :cry:

Re: Utilisation des API IG avec C#

par Mister Hyde » 15 juin 2015 18:43

J'utilise également VS 2013 dans sa version Community qui est gratuite.

Apparemment la 2015 vient de sortir. Image

Sujets similaires
Utilisation Excel avec API IG
Fichier(s) joint(s) par VK_Trader » 15 mai 2015 02:16 (46 Réponses)
API IG : Utilisation de CURL
par Tartempion » 14 sept. 2016 17:00 (7 Réponses)
Utilisation de l'API d'IB pour récupérer les prix en TR
Fichier(s) joint(s) par cafeiine2023 » 26 mai 2022 15:08 (3 Réponses)
Utilisation du "Stop"
par Amarantine » 02 août 2012 23:00 (6 Réponses)
PRT une utilisation unique
par falex » 18 janv. 2014 11:42 (7 Réponses)
Utilisation de Fibonacci
Fichier(s) joint(s) par Sagal » 26 févr. 2014 12:49 (18 Réponses)
Utilisation IG
par sitka » 12 mai 2015 14:02 (3 Réponses)
L3 : Votre utilisation ?
par falex » 09 sept. 2015 17:38 (35 Réponses)
Problème sur utilisation Thunderbird
par DarthTrader » 05 déc. 2015 09:49 (6 Réponses)
utilisation CCleaner
par Husic.M » 17 janv. 2016 11:19 (14 Réponses)