Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 1822

 
Tretyakov Rostyslav #:

Il s'agit d'une structure

et ceci est une référence à celui-ci par un symbole spécifique

... et il n'y a pas d'exemple de lecture de la structure. À en juger par la première question, la personne ne la comprendra pas non plus.

 
Tretyakov Rostyslav #:
Affichez la fonction de fermeture et expliquez ce qu'est "-x".

Il n'y a rien d'autre. Et x est une valeur de profit négative sur un ordre ouvert.

 
Tretyakov Rostyslav #:
Affichez la fonction de fermeture et expliquez ce qu'est "-x".

La fonction de fermeture est la suivante : à quelle condition un ordre doit-il être fermé ?

Est-ce que x est une condition ?

Alors qu'ai-je montré ?

Ou, si vous le voulez bien, écrivez plus en détail ce dont vous avez besoin.

En tout cas, merci !

 
законопослушный гражданин prix actuels.

Mais dans l'exemple d'utilisation, il est indiqué :

C'est-à-dire que la fonction qui fait référence à la structure MqlTick est elle-même à l'intérieur de la structure.

Comment est-ce possible ?

La fonction SymbolInfoTick écrit les données tick dans une structure spécialeMqlTick, à partir des champs de laquelle elles peuvent être obtenues.

struct MqlTick
  {
   datetime     time;          // Время последнего обновления цен
   double       bid;           // Текущая цена Bid
   double       ask;           // Текущая цена Ask
   double       last;          // Текущая цена последней сделки (Last)
   ulong        volume;        // Объем для текущей цены Last
   long         time_msc;      // Время последнего обновления цен в миллисекундах
   uint         flags;         // Флаги тиков
   double       volume_real;   // Объем для текущей цены Last c повышенной точностью
  };
Документация по MQL5: Константы, перечисления и структуры / Структуры данных / Структура для получения текущих цен
Документация по MQL5: Константы, перечисления и структуры / Структуры данных / Структура для получения текущих цен
  • www.mql5.com
Структура для получения текущих цен - Структуры данных - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Alexander Avksentyev #:
// профит в пунктах
 int getOrderProfit() {
  switch (OrderType()) {
  case OP_BUY:
    return (int)((Bid - OrderOpenPrice()) / Point);
  case OP_SELL:
    return (int)((OrderOpenPrice() - Ask) / Point);
  default: 
    return 0;
  }
}

Il est obligatoire de sélectionner un ordre (OrderSelect) avant d'appeler.

 
Alexander Avksentyev #:

La fonction de clôture est la suivante : dans quelles conditions un ordre doit-il être clôturé ?

Je n'ai pas remarqué l'éléphant)))) A votre avis, à quoi correspond le prix de clôture de l'ordre ouvert ?

OrderClose(min_ticket,OrderLots(),OrderClosePrice(),iSlippage,clrPink);

Essayez de le faire de cette façon

   int min_ticket=FindTicketOrder();

   if(OrderSelect(min_ticket, SELECT_BY_TICKET,MODE_TRADES)) 
    { 
      if(OrderProfit()<=-x)
        {
         if(OrderType()==OP_BUY)
           {
            if(OrderClose(min_ticket,OrderLots(),Bid,iSlippage,clrPink))
               Print("Buy Order Close");
            else
               Print("Order вернул ошибку - ",GetLastError());
           }
         if(OrderType()==OP_SELL)
           {
            if(OrderClose(min_ticket,OrderLots(),Ask,iSlippage,clrPink))
               Print("Sell Order Close");
            else
               Print("Order вернул ошибку - ",GetLastError());
           }
        }
    } 
 
Mihail Matkovskij #:

Il est obligatoire de sélectionner un ordre (OrderSelect) avant d'appeler.

Si la commande ne provient pas du personnage actuel ?

 
Tretyakov Rostyslav #:

Et je n'ai pas remarqué l'éléphant)))) A votre avis, à quoi correspond le prix de clôture d'un ordre ouvert?

Essayez de cette façon

Symbole de l'offre

 
Tretyakov Rostyslav #:

Et je n'ai pas remarqué l'éléphant)))) A votre avis, à quoi correspond le prix de clôture d'un ordre ouvert ?

Essayez comme ça.

Je l'ai compris comme ça.

OrderClosePrice()

J'ai lu sur le forum que vous pouvez le spécifier à la place de bid et ask et que cela fonctionnera. Je lui ai fait confiance. Je suis un idiot naïf. J'ai essayé un autre Bid || Ask, qui n'a pas fonctionné non plus.
Merci pour votre aide !

 
Artyom Trishkin #:

Si l'ordre ne provient pas du symbole actuel ?

Puis SymbolInfoDouble