Mon compte
Déjà membre ? S'identifier
Non inscrit ? S'inscrire
 
+ Répondre à la discussion
Affichage des résultats 1 à 3 sur 3
  1. #1
    Membre lvl 25 pymouss est sur la route de la réputation...
    Date d'inscription
    February 2011
    Messages
    29
    Pouvoir de réputation
    3

    OrderSend(), erreur 129, j'ai toute tenté! OrderSend(), erreur 129, j'ai toute tenté!

    Bonsoir,

    J'ai besoin de passer deux ordres à la suite, et j'ai un souci avec la fonction OrderSend() ...




    Je post le code :

    Le premier trade passe bien, mais le second, impossible de le passer ...

    J'ai tenté de changer le sens, de toutes les manières il passe l'ordre du Symbol(), mais pas celui de pair2

    Code:
    pair2=ObjectDescription("pair2");   // pair2 est définie en string, d'ailleurs la variable pair2 marche très bien dans la fonction OrderClose() que j'utilise plus tard dans le script
    
    
    
                            if (iCustom(Symbol(),0,"deuxpair",10,pair2,0,0)>iCustom(Symbol(),0,"deuxpair",10,pair2,1,0))
                            {
                            RefreshRates();
                            OrderSend (pair2, OP_BUY, lots, Ask, 3,0,0,NULL,0, 0, Green);
                            Sleep (1000);
                            RefreshRates();
                            OrderSend (Symbol(), OP_SELL, lots, Bid, 3,0,0,NULL,0, 0, Green);
                            }
                            
                            if (iCustom(Symbol(),0,"deuxpair",10,pair2,0,0)<iCustom(Symbol(),0,"deuxpair",10,pair2,1,0))
                            {
                            RefreshRates();
                            OrderSend (pair2, OP_SELL, lots, Bid,3,0,0,NULL,0, 0, Green);
                            Sleep (1000);
                            RefreshRates();
                            OrderSend (Symbol(), OP_BUY, lots, Ask, 3,0,0,NULL,0, 0, Green);
                            }

    Je lutte, j'ai regardé sur le net mais l'erreur 129 ne me donne pas de piste pour savoir ce qui va pas ...

    Si quelqu'un a une idée, ce serait avec joie svp !

    Merci d'avance!

  2. #2
    Membre lvl 75 fxconfidential deviendra bientot célèbre... Avatar de fxconfidential
    Date d'inscription
    April 2008
    Localisation
    Barcelone
    Messages
    84
    Pouvoir de réputation
    10

    Bonjour,

    Ton problème vient du fait que tu places ton EA sur un graphique en particulier (par exemple EURUSD) donc les ordres avec Symbol() s'effectuent correctement car le Bid et Ask utilisés correspondent bien à EURUSD. Par contre, pour l'ordre avec pair2 (par exemple GBPUSD), l'EA ne peut pas passer l'ordre car tu demandes d'ouvrir une position sur GBPUSD avec le Bid et Ask de EURUSD.

    Pour corriger ça, il te faut utiliser la fonction MarketInfo(Pair2, MODE_BID) et MarketInfo(Pair2, MODE_Ask).

    Par exemple: OrderSend (pair2, OP_SELL, lots, MarketInfo(Pair2, MODE_BID),3,0,0,NULL,0, 0, Green);

    Bonne journée


    Citation Envoyé par pymouss Voir le message
    Bonsoir,

    J'ai besoin de passer deux ordres à la suite, et j'ai un souci avec la fonction OrderSend() ...




    Je post le code :

    Le premier trade passe bien, mais le second, impossible de le passer ...

    J'ai tenté de changer le sens, de toutes les manières il passe l'ordre du Symbol(), mais pas celui de pair2

    Code:
    pair2=ObjectDescription("pair2");   // pair2 est définie en string, d'ailleurs la variable pair2 marche très bien dans la fonction OrderClose() que j'utilise plus tard dans le script
    
    
    
                            if (iCustom(Symbol(),0,"deuxpair",10,pair2,0,0)>iCustom(Symbol(),0,"deuxpair",10,pair2,1,0))
                            {
                            RefreshRates();
                            OrderSend (pair2, OP_BUY, lots, Ask, 3,0,0,NULL,0, 0, Green);
                            Sleep (1000);
                            RefreshRates();
                            OrderSend (Symbol(), OP_SELL, lots, Bid, 3,0,0,NULL,0, 0, Green);
                            }
                            
                            if (iCustom(Symbol(),0,"deuxpair",10,pair2,0,0)<iCustom(Symbol(),0,"deuxpair",10,pair2,1,0))
                            {
                            RefreshRates();
                            OrderSend (pair2, OP_SELL, lots, Bid,3,0,0,NULL,0, 0, Green);
                            Sleep (1000);
                            RefreshRates();
                            OrderSend (Symbol(), OP_BUY, lots, Ask, 3,0,0,NULL,0, 0, Green);
                            }

    Je lutte, j'ai regardé sur le net mais l'erreur 129 ne me donne pas de piste pour savoir ce qui va pas ...

    Si quelqu'un a une idée, ce serait avec joie svp !

    Merci d'avance!

  3. #3
    Membre lvl 25 pymouss est sur la route de la réputation...
    Date d'inscription
    February 2011
    Messages
    29
    Pouvoir de réputation
    3

    ah ptin oui!

    Lol en effet j'y avait pas pensé ...

    Merci beaucoup!

Discussions similaires

  1. Où est l'erreur
    Par condor666 dans le forum Programmation
    Réponses: 3
    Dernier message: 07/07/2011, 18h13
  2. Où est l'erreur ?
    Par Jovager dans le forum Systèmes de Trading Auto
    Réponses: 0
    Dernier message: 13/01/2011, 12h35
  3. Code erreur 130 sur mon EA
    Par buzz dans le forum Programmation
    Réponses: 0
    Dernier message: 01/07/2009, 20h48
  4. erreur ea...
    Par VOL344 dans le forum Programmation
    Réponses: 1
    Dernier message: 14/05/2009, 15h46
  5. Demande aide MQL4 - Fonction OrderSend
    Par Leo dans le forum Systèmes de Trading Auto
    Réponses: 7
    Dernier message: 18/08/2008, 22h58

Ajouter aux Favoris | Plan du site | Archives | Forex | Contact