[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 596

 
evillive:
Question : dans le mode de test visuel, les lignes de l'indicateur ne sont dessinées qu'à la fin du test, est-ce le cas pour tout le monde ou est-ce que je fais quelque chose de mal ?

tous.

https://www.mql5.com/ru/forum/131853/page2#463027

 
conseiller comment ouvrir correctement des ordres avec pertes et prises dans un conseiller alpari (code)
 
link1:
conseiller comment ouvrir correctement des ordres avec pertes et prises dans un conseiller alpari (code)

Savez-vous comment ouvrir correctement des ordres avec FST et TP dans un EA (code) ?
 
zxc:

Savez-vous comment "ouvrir correctement des ordres avec pertes et emports" dans une autre société de courtage ?

Et quelle est la différence entre ouvrir un ordre chez Alpari et ouvrir un ordre chez Oanda ou une autre société de courtage ?
 
zxc:

Savez-vous comment "ouvrir correctement des ordres avec pertes et emports" dans une autre société de courtage ?

J'ai travaillé avec d'autres sociétés de courtage, mon EA fonctionne, mais pas avec Alpari, c'est pourquoi je demande, peut-être y a-t-il des particularités ?
 
link1:

J'ai un bon feeling avec les autres sociétés de courtage, mon EA fonctionne, mais pas avec Alpari.


C'est là que vous auriez dû commencer. Dans le terminal, lorsque vous ouvrez un ordre manuellement, pouvez-vous mettre des stops immédiatement ?

Où est indiqué le type de commande ? Exécution immédiate ou exécution sur le marché ?

 
zxc:


C'est là que vous auriez dû commencer. Dans le terminal, lorsque vous ouvrez un ordre manuellement, pouvez-vous mettre des stops immédiatement ?

Où est indiqué le type de commande ? Exécution immédiate ou exécution sur le marché ?


En ce qui concerne Alpari, si vous avez une exécution sur le marché, vous ne pouvez pas placer de SL ou de TP, seulement si vous avez un ordre en attente, vous pouvez le faire sur un compte de démonstration, comme sur un compte micro.

J'ai également prêté attention à ce problème et j'ai décidé de modifier mon EA en plaçant le SL et le TP sans SL et ensuite, de le modifier et de placer le SL et le TP.

Mais comment le modifier ? )) J'ai copié la modification d'un certain Expert Advisor, mais il y avait une erreur dans le code et il n'a pas compilé. Pour être honnête, il n'y a pas d'article sur la modification et l'exemple avec trailing stop dans le tutoriel. Je viens de commencer à apprendre le langage et c'est mon premier EA et je ne sais pas comment modifier les ordres correctement....

Je pense également que le problème se situe peut-être au niveau des 5 chiffres... Qu'en pensez-vous ?

 

Que pensez-vous de ça ? Et pour les prises de bénéfices, à peu près de la même manière...

for(int i = 0; i < total; i++)

     {
       OrderSelect(i, SELECT_BY_POS, MODE_TRADES); 
       // check for symbol & magic number
       if(OrderSymbol()==Symbol() && OrderMagicNumber()== Magic) 
         {
           if(OrderType() == OP_BUY)  // long position is opened
            {

                  if(OrderStopLoss()==0)
                   {
                     OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*sl,OrderTakeProfit(),0,Orange);
                    return(0);
                   }
            } 
           if(OrderType() == OP_SELL)  // short position is opened
            {

                 if(OrderStopLoss()==0)
                  {
                    OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*sl,OrderTakeProfit(),0,Orange);
                    return(0);
                  }
            }
         }
     }

Vous ne pouvez pas du tout modifier l'ordre stop loss dans ce cycle, et fermer l'ordre quand il atteint le niveau stop, pour DC l'ordre ressemblera sans stop loss, mais est fermé par l'EA clairement quand le niveau stop loss est dépassé (variable sl) :

   for(int i = 0; i < total; i++)
     {
       OrderSelect(i, SELECT_BY_POS, MODE_TRADES); 
       // check for symbol & magic number
       if(OrderSymbol()==Symbol() && OrderMagicNumber()== Magic) 
         {
           if(OrderType() == OP_BUY)  // long position is opened
            {
               if((OrderOpenPrice()-Ask)<Point*sl) // stoploss
                 {
                    OrderClose(OrderTicket(),OrderLots(),Ask,slippage,Aqua);
                 }
               if((Bid-OrderOpenPrice())>Point*(ts+minp)) //trail
                 {
                  if(OrderStopLoss()<(Bid-Point*ts))
                   {
                     OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*ts,OrderTakeProfit(),0,Orange);
                   }
                 }
            } 
           if(OrderType() == OP_SELL)  // short position is opened
            {
               if((Bid-OrderOpenPrice())>Point*sl) // stoploss
                 {
                    OrderClose(OrderTicket(),OrderLots(),Bid,slippage,Magenta);
                 }
               if((OrderOpenPrice()-Ask)>Point*(ts+minp)) //trail
                {
                 if(OrderStopLoss()>(Ask+Point*ts))
                  {
                    OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*ts,OrderTakeProfit(),0,Orange);
                  }
                }
            }
         }
     }
 
Je veux créer un tableau à 2 dimensions [ticket][prix d'ouverture]. La question est de savoir quel type de tableau déclarer: int ou duble ?
 
dmmikl86:
Je veux créer un tableau à 2 dimensions [ticket][prix d'ouverture]. La question est de savoir quel type de tableau déclarer : int ou dub ?

le prix d'ouverture est double