Questions des débutants MQL4 MT4 MetaTrader 4 - page 68

 
J'ai mis le code dans le bon sens et je ne le vois pas.
 

//|                                          9.1.4.5 OrderDelete.mq4 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+1
void OnStart()
{
  string Symb=Symbol();        //Финансовый инструмент
  double Dist=1000000.0;       //Предустановка
  double Price;
  int  Limit_Stop=-1;          // Пока отложенных нет
  int Tip;
  double Win_Price=WindowPriceOnDropped();     //Здесь брошен скрипт
  //-------------------------------------------------------------------+2
  for(int i=1; i<=OrdersTotal(); i++)         // Цикл выбора ордеров
  {  
    if(OrderSelect(i-1, SELECT_BY_POS)==true)    //Eсли ордер выбран
      {
        //------------------------------------------------------------------+3      
        if(OrderSymbol()!=Symb) continue   //не ваш фин. инструмент
        int Tip=OrderType();               //Тип ордера
        if(Tip<2) continue                 //Рыночный ордер
      
        //------------------------------------------------------------+4
        double Price=OrderOpenPrice();     //Цена откр. отлож. ордера
          if(NormalizeDouble(MathAbs(Price-Win_Price),Digits)<
            NormalizeDouble(Dist,Digits))
            {
            Dist=MathAbs(Price-Win_Price);     // Новое значение
            Limit_Stop=Tip;                    //Есть отложенный ордер
            int Ticket=OrderTicket();            // номер ордера
            }
      }
  
  
  //+---------------------------------------------------------------+5
  switch(Limit_Stop)
  {
  case 2: string Texst="BuyLimint ";
         break;
  case 3: Texst="SellLimint ";
         break;
  case 4 Texst="BuyStop ";
         break;
  case 5 Texst="SellStop ";
         break;
  }
  
  //------------------------------------------------------------------+6
  //ЦИКЛ ЗАКРЫТИЯ  ОРДЕРА
  //--------------------------------------------------------------------
  while(true)              // цикл закрытия ордера
  {
  if(Limit_Stop==-1)       //если отложенных нет
    {
    Alert("по ",Symb,"отложенных ордеров");   //если отложенных нет
    break;
    }
    //-----------------------------------------------------------------+7
    Alert("Попытка удалить ","",Ticket,"ожидание ответа..");
    bool  Ans=OrderDelete(Ticket);              //Удаление ордера
    //---------------------------------------------------------------------
    if(Ans==true)
    {
    Alert("Удалён ордер ",Text,"",Ticket);
    break;
    }
    int Error=GetLastError();
    switch(Error)
    {
    case 4:Alert("Торговый сервер занят. Пробуем ещё раз..");
     Sleep(3000);                                 //Обновим данные
     continue;                                     //На следующую итерацию
    case 137:Alert("Брокер занят. Пробуем ещё раз...");
            Sleep(3000);
            continue;
    case 146:Alert("Подсистема торговли занята. Пробуем ещё раз...");
            Sleep(500);
            continue;                             // На следующую итерацию
    }
    switch(Error)                                  //Критические ошибки
     {
     case 2:Alert("Oбщая ошибка.");
            break;                               //Выход из switch
  
     case 64:Alert("Счёт заблокирован.");
            break;                               //Выход из switch                                    
     case 133:Alert("Торговля заблакирована.");
            break;
     case 139:Alert(" Ордер заблакирован и уже обрабатывается.");
            break;
     case 145:Alert("Модификация запрещена.Ордер слишком близок к рынку");
            break;      
     default:Alert("Возникла ошибка.",Error);    //Другие варианты                                                               //Выход из switch      
     }
     break;                                
   }
   //---------------------------------------------------------------------+
   Alert("Скрипт законччил работу-----------------------.");
   return;
}

  
Jetez un coup d'oeil
 
deux erreurs sont apparues sur les parenthèses onstart. il semble qu'il manque une parenthèse dans la boucle for, j'ai mis 11 erreurs, miracle !!!!
 
 
FOTOGRAF14:
J'ai eu deux erreurs sur les parenthèses onstart. Il semble qu'il manque une parenthèse dans la boucle for, j'ai mis 11 erreurs dans la boucle, miracle !!!
Ne pensez pas qu'augmenter le nombre d'erreurs est une erreur ! Le support pour est vraiment nécessaire. C'est juste cette erreur qui doit être corrigée en premier lieu. Après l'avoir réparé, il y a apparemment plus d'erreurs :)
 
FOTOGRAF14:
J'ai eu deux erreurs sur les parenthèses onstart. Il semble qu'il manque une parenthèse dans la boucle for, j'ai mis 11 erreurs, miracle !!!!.
Les miracles n'arrivent pas..."')' - fin inattendue du programme'' - fin inattendue... "'{' - parenthèses non équilibrées" - parenthèses non couvertes... = parenthèses incomplètes, '{' est manquant ou inutile ... il faut vérifier attentivement le code et ajouter là où c'est nécessaire, et non pas simplement ou supprimer un élément supplémentaire. ...
 
FOTOGRAF14:

Pages 25, 27, - point-virgule manquant.

Pages 44, 48, 50, 69, - Texst, le compilateur ne comprend pas ce que c'est, 'Text' n'est pas un identifiant déclaré = il faut faire avec.

Pages 48, 50, - opérande attendu = il manque très probablement un deux-points.

Page 64 - Ticket = identifiant non déclaré.

Et ainsi de suite, faites le tri de vos erreurs.

 
FOTOGRAF14:
Je colle juste le code comme il devrait l'être mais je ne le vois pas.

vous devez taper quelque chose comme

***

problème de forum

 
FOTOGRAF14:

  
Jetez un coup d'oeil

Pourquoi sautez-vous la dernière commande - est-ce l'intention ?

for(int i=1; i<=OrdersTotal(); i++)         // Цикл выбора ордеров
  {  
    if(OrderSelect(i-1, SELECT_BY_POS)==true)    //Eсли ордер выбран
      {


 
dans le terminal - onglet "news". comment puis-je modifier la taille de la fenêtre pop-up et la taille de la police à l'intérieur de celle-ci afin que ces modifications soient conservées lorsque je quitte le terminal et que je me connecte ensuite ?
Raison: