错误、漏洞、问题 - 页 2175

 
Artyom Trishkin:

我是唯一一个在这个帖子中的 图片没有在新的弹出窗口中打开的人吗?Mozilla FireFox 59.0.2 (64bit)

就是说,引用中的图片没有打开。

我把它保存在一个com上,然后看了看。它看起来像论坛的截图,已经有了一个缩放图标。

 
Konstantin Nikitin:

我把它保存在一个com上,然后看了看。它看起来像论坛的截图,已经有了一个缩放图标。

不,这是一张普通的图片--如果你在PKM中选择在新标签/窗口中打开,图片会以全尺寸打开。

 
Artyom Trishkin:

我是唯一一个在这个帖子中的 图片没有在新的弹出窗口中打开的人吗?Mozilla FireFox 59.0.2 (64bit)

我的意思是,报价中的图片没有打开。

打不开,而我用的是chrome,它能打开所有的东西!

 
Vitaly Muzichenko:

打不开,而我用的是chrome,它能打开所有的东西!


这不是Chrome浏览器的问题,而是网站上的脚本问题。

 

先生们,有一个错误,我不明白。如果你知道问题出在哪里,请帮助我。

当编译下面的代码时,我们得到一个错误:'ORDER_TYPE_BUY' - 不能转换枚举;'ORDER_TYPE_SELL' - 不能转换枚举。

类似的代码在mql4中编译得很好。我在其他使用mql5的EA中看到过类似的例子。但目前还没有编译。我不知道为什么会这样,也不知道什么是必须要解决的。

//+------------------------------------------------------------------+
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' - 不能转换枚举;'ORDER_TYPE_SELL' - 不能转换枚举。

类似的代码在mql4中编译得很好。我在其他使用mql5的EA中看到过类似的例子。但目前还没有编译。我不知道为什么会这样,也不知道什么是必须要解决的。


请正确粘贴代码。


你的代码已经在你的帖子中为你纠正了

 
Sergiy Riehl:

先生们,有一个错误,我不明白。如果你知道问题出在哪里,请帮助我。

当编译下面的代码时,我们得到一个错误:'ORDER_TYPE_BUY' - 不能转换枚举;'ORDER_TYPE_SELL' - 不能转换枚举。

类似的代码在mql4中编译得很好。我在其他使用mql5的EA中看到过类似的例子。但目前还没有编译。我不知道为什么会这样,也不知道什么是必须要解决的。



 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' - 不能转换枚举;'ORDER_TYPE_SELL' - 不能转换枚举。

类似的代码在mql4中编译得很好。我在其他使用mql5的EA中看到过类似的例子。但目前还没有编译。我不知道为什么会这样,也不知道有什么需要解决的。


你混淆了MQL5中的订单(旧语言)和仓位。

职位类型可以是 (ENUM_POSITION_TYPE)

识别器

描述

购货类型

购买

销量

出售


即OR "POSITION_TYPE_BUY" OR "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);
 
谢谢大家。得到了这一切。
原因: