Ошибки, баги, вопросы - страница 2175

 
Artyom Trishkin:

У меня у одного изображение с этого поста не открывается в новом всплывающем окошке? Mozilla FireFox 59.0.2 (64-бит)

Т.е., то изображение, которое находится в цитате, не открывается получается.

Я его сохранил на ком и посмотрел. Похоже на скрин с форума, уже со значком увеличения.

 
Konstantin Nikitin:

Я его сохранил на ком и посмотрел. Похоже на скрин с форума, уже со значком увеличения.

Нет, там нормальное изображение - если ПКМ и выбрать открыть в новой вкладке/окне, то изображение открывается в полноценном размере.

 
Artyom Trishkin:

У меня у одного изображение с этого поста не открывается в новом всплывающем окошке? Mozilla FireFox 59.0.2 (64-бит)

Т.е., то изображение, которое находится в цитате, не открывается получается.

Не открывается, и у меня хром, который открывает всё!

 
Vitaly Muzichenko:

Не открывается, и у меня хром, который открывает всё!


дело не в Хроме а в скрипте, который на сайте. 

 

Господа, возникла непонятная для меня ошибка. Кто понимает в чем проблема, плииз, отзовитесь.

При компиляции ниже представленного кода возникает ошибка: 'ORDER_TYPE_BUY' - cannot convert enum;  'ORDER_TYPE_SELL' - cannot convert enum

Аналогичный код в mql4 компилируется без проблем. Похожие примеры встречал в других советниках на mql5. Но у меня этот код сейчас не компилируется. Понятия не имею почему так и что нужно исправить.

//+------------------------------------------------------------------+
int Fun()
  {
   int res;

   int total=PositionsTotal(); // количество открытых позиций   
//--- перебор всех открытых позиций
   for(int i=total-1; i>=0; i--)
     {
      //--- параметры ордера
      ulong  position_ticket=PositionGetTicket(i);  // тикет позиции                                  

      ENUM_POSITION_TYPE type=(ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE);  // тип позиции      

      if(type!=ORDER_TYPE_BUY && type!=ORDER_TYPE_SELL) continue;

      switch(type)
        {
         case ORDER_TYPE_BUY:
            res=1;
            break;

         case ORDER_TYPE_SELL:
            res=2;
            break;
        }
      return(res);

     }

   return(3);
  }
//+------------------------------------------------------------------+

 
if (type !=POSITION_TYPE_BUY &&  type!=POSITION_TYPE_SELL) continue;  
 
Sergiy Riehl:

Господа, возникла непонятная для меня ошибка. Кто понимает в чем проблема, плииз, отзовитесь.

При компиляции ниже представленного кода возникает ошибка: 'ORDER_TYPE_BUY' - cannot convert enum;  'ORDER_TYPE_SELL' - cannot convert enum

Аналогичный код в mql4 компилируется без проблем. Похожие примеры встречал в других советниках на mql5. Но у меня этот код сейчас не компилируется. Понятия не имею почему так и что нужно исправить.


Будьте добры, вставляйте код правильно:


Ваш код исправил за вас в вашем посте

 
Sergiy Riehl:

Господа, возникла непонятная для меня ошибка. Кто понимает в чем проблема, плииз, отзовитесь.

При компиляции ниже представленного кода возникает ошибка: 'ORDER_TYPE_BUY' - cannot convert enum;  'ORDER_TYPE_SELL' - cannot convert enum

Аналогичный код в mql4 компилируется без проблем. Похожие примеры встречал в других советниках на mql5. Но у меня этот код сейчас не компилируется. Понятия не имею почему так и что нужно исправить.



 ENUM_POSITION_TYPE type=(ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE);  // тип позиции      

      if(type!=ORDER_TYPE_BUY && type!=ORDER_TYPE_SELL) continue;


Вы присваиваете тип POSITION_TYPE 

и сравниваете с ORDER_TYPE 

 
Sergiy Riehl:

Господа, возникла непонятная для меня ошибка. Кто понимает в чем проблема, плииз, отзовитесь.

При компиляции ниже представленного кода возникает ошибка: 'ORDER_TYPE_BUY' - cannot convert enum;  'ORDER_TYPE_SELL' - cannot convert enum

Аналогичный код в mql4 компилируется без проблем. Похожие примеры встречал в других советниках на mql5. Но у меня этот код сейчас не компилируется. Понятия не имею почему так и что нужно исправить.


Путаете ордера (в старом языке) и позиции в MQL5.

Тип позиции может быть ( ENUM_POSITION_TYPE )

Идентификатор

Описание

POSITION_TYPE_BUY

Покупка

POSITION_TYPE_SELL

Продажа


То есть ИЛИ "POSITION_TYPE_BUY" ИЛИ "POSITION_TYPE_SELL". Другого быть не может.

Следовательно Ваш код примет вид:

   for(int i=total-1; i>=0; i--)
     {
      //--- параметры позиции
      ulong  position_ticket=PositionGetTicket(i);  // тикет позиции                                  

      ENUM_POSITION_TYPE type=(ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE);  // тип позиции      

      switch(type)
        {
         case POSITION_TYPE_BUY:
            res=1;
            break;

         case POSITION_TYPE_SELL:
            res=2;
            break;
        }
      return(res);
     }
   return(3);
 
Всем спасибо. Всё понял. 
Причина обращения: