Questions des débutants MQL5 MT5 MetaTrader 5 - page 934

 
Duck est dans l'article sur les signaux. Ce n'est pas ça.
 
void ClosePositions()
  {
   for(int i=PositionsTotal()-1;i>=0;i--) // returns the number of current orders
      if(m_position.SelectByIndex(i))     // selects the position by index for further access to its properties
         if(m_position.Symbol()==m_symbol.Name() && m_position.Magic()==Magic)
            m_trade.PositionClose(m_position.Ticket()); // close a position by the specified symbol
  }
Pouvez-vous me dire comment modifier cette fonction pour trouver etfermer une position qui a un commentaire AAA ?
Совершение сделок - Торговые операции - MetaTrader 5
Совершение сделок - Торговые операции - MetaTrader 5
  • www.metatrader5.com
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением текущими позициями путем их модификации или закрытия. Платформа позволяет удобно просматривать торговую историю на счете, настраивать оповещения о событиях на рынке и многое другое. Открытие позиций...
 
EgorKim:
Pouvez-vous me dire comment modifier cette fonction pour trouver etfermer une position qui a un commentaire AAA ?

Aide :CPositionInfo

Accès aux propriétés du texte ...
 

Merci.

En outre, pourriez-vous me dire pourquoi la conversion implicite de "nombre" à "chaîne" est jurée à la compilation ?

if(m_trade.Buy(InpLots,m_symbol.Name(),m_symbol.Ask(),sl,tp, "AAA")

A quoi doit ressembler la commande d'achat correcte ?

 
EgorKim:

Merci.

En outre, pourriez-vous me dire pourquoi la conversion implicite de "nombre" à "chaîne" est jurée à la compilation ?

if(m_trade.Buy(InpLots,m_symbol.Name(),m_symbol.Ask(),sl,tp, "AAA")

A quoi doit ressembler la commande d'achat correcte ?

Référence :Acheter.

Aide :Instruction conditionnelle if-else

 

Ce n'est pas comme ça que tu as écrit le code.

Voici le code

long     chislo       =5;
if(m_trade.Buy(InpLots,m_symbol.Name(),m_symbol.Ask(),sl,tp,"AAA"+chislo))

Le compilateur se plaint de"AAA "+chislo

 
EgorKim:

Ce n'est pas comme ça que tu as écrit le code.

Voici le code

Le compilateur se plaint de"AAA "+chislo

Référence :IntegerToString


Ajouté : C'est tout pour aujourd'hui. Je suis déjà endormi.

 
EgorKim:

Ce n'est pas comme ça que tu as écrit le code.

Voici le code

Le compilateur se plaint de"AAA "+chislo

long     chislo       =5;
if(m_trade.Buy(InpLots,m_symbol.Name(),m_symbol.Ask(),sl,tp,"AAA"+(string) chislo))
 

Vladimir Karputov, Alexey Viktorov

Merci.

 

Veuillez me conseiller sur le code.

Actuellement, il y a 4 baies ouvertes avec 1 lot chacune et 4 cellules avec 1 lot chacune. Le symbole est le même.

Seulement 1 achat et 1 vente sont fermés dans cette position.

void CloseBy()
  {
   ulong ticket_buy=ULONG_MAX;
   ulong ticket_sell=ULONG_MAX;
   for(int i=0;i<PositionsTotal();i++) // ATTENTION! Here, specially began a detour with "0"
      if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
         {
         if(m_position.PositionType()==POSITION_TYPE_BUY && ticket_buy==ULONG_MAX)
            ticket_buy=m_position.Ticket();

         if(m_position.PositionType()==POSITION_TYPE_SELL && ticket_sell==ULONG_MAX)
            ticket_sell=m_position.Ticket();
        }
   if(ticket_buy!=ULONG_MAX && ticket_sell!=ULONG_MAX)
      m_trade.PositionCloseBy(ticket_buy,ticket_sell);
//---
   return;
  }

Rien n'est fermé du tout dans cette position

void CloseBy()
  {
   ulong ticket_buy=ULONG_MAX;
   ulong ticket_sell=ULONG_MAX;
   for(int i=0;i<PositionsTotal();i++) // ATTENTION! Here, specially began a detour with "0"
      if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
        {
         if(m_position.PositionType()==POSITION_TYPE_BUY && ticket_buy==ULONG_MAX)
            ticket_buy=m_position.Ticket();

         if(m_position.PositionType()==POSITION_TYPE_SELL && ticket_sell==ULONG_MAX)
            ticket_sell=m_position.Ticket();
        }
   if(ticket_buy!=ULONG_MAX && ticket_sell!=ULONG_MAX)
      m_trade.PositionCloseBy(ticket_buy,ticket_sell);
//---
   //return;
  }

Que dois-je faire pour fermer les 4 achats et les 4 ventes en contrepartie ?