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

Re: api IG c#

par ericgiraud » 13 Avr 2018 08:31

Le champ type ne me laisse le choix que STOP ou LIMIT..

Re: api IG c#

par ericgiraud » 13 Avr 2018 08:43

non, c pareil avec une valeur réaliste.

Re: api IG c#

par ericgiraud » 13 Avr 2018 09:08

pas mieux... il y a une question récente avec le même pb sur le forum d'IG actuellement sans réponse... ce ne serai pas un pb de version d'assembly ou un truc du genre?
{
"epic": "IX.D.DOW.IFE.IP",
"expiry": "-",
"direction": "BUY",
"size": "1",
"level": null,
"forceOpen": "true",
"type": "MARKET",
"currencyCode": "EUR",
"timeInForce": null,
"goodTillDate": null,
"guaranteedStop": "false",
"stopLevel": null,
"stopDistance": "10",
"limitLevel": null,
"limitDistance": "10"
}

Re: api IG c#

par takapoto » 13 Avr 2018 09:11

Voici mon code de prise de position :
Code: Tout sélectionner
            //Renseignement des données concernant la prise de position demandée
            TakaIGGlobales.requetePrisePosition.epic = TakaIGGlobales.epic;
            TakaIGGlobales.requetePrisePosition.expiry = "-";
            TakaIGGlobales.requetePrisePosition.level = null;
            TakaIGGlobales.requetePrisePosition.orderType = "MARKET";
            TakaIGGlobales.requetePrisePosition.stopLevel = null;
            TakaIGGlobales.requetePrisePosition.forceOpen = false;
            TakaIGGlobales.requetePrisePosition.limitLevel = null;
            TakaIGGlobales.requetePrisePosition.quoteId = null;
            TakaIGGlobales.requetePrisePosition.direction = direction;
            TakaIGGlobales.requetePrisePosition.size = size;
            TakaIGGlobales.requetePrisePosition.guaranteedStop = guaranteedStop;
            TakaIGGlobales.requetePrisePosition.forceOpen = forceOpen;
            TakaIGGlobales.requetePrisePosition.currencyCode = TakaIGGlobales.reponseEpicInfo.instrument.currencies[0].code;

            if (SL == 0)
                TakaIGGlobales.requetePrisePosition.stopDistance = null;
            else
                TakaIGGlobales.requetePrisePosition.stopDistance = SL;

            if (TP == 0)
                TakaIGGlobales.requetePrisePosition.limitDistance = null;
            else
                TakaIGGlobales.requetePrisePosition.limitDistance = TP;

            //Définition de l'URL
            string url = TakaIGGlobales.baseUrl + "/gateway/deal/positions/otc";

            //Requête en V1
            TakaIGGlobales.dealReference = "";
            string content = await DoPost(httpV1, url, TakaIGGlobales.requetePrisePosition);
            if (content == null)
            {
                TakaIGDialog.callbackNullResponse("SetOrder "+direction);
                return;
            }

Re: api IG c#

par ericgiraud » 13 Avr 2018 12:41

@- : ok je vois effectivement qu'il manque le forceOpen (en V1 aussi).
Est-il possible de m'envoyer tes fichiers modifiés?

Re: api IG c#

par ericgiraud » 13 Avr 2018 13:09

J'ai trouvé mon soucis.... Je partage du coup. :)
Je n'utilisait pas la bonne requette pour ouvrir une position: dto.endpoint.workingorders.create.v1
Celle qui fonctionne est : dto.endpoint.positions.create.otc.v1
Merci de votre aide.
Je vais maintenant tester la cloture ;)


ProRealTime

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