将开放的职位分成若干组 - 页 2

 
Nikolay Kositsin:

这样的代码太有个性,不可能以现成的形式存在。我们将编写一个结构,为头寸和订单的所有必要属性的变体准备好评论,以及一个分析头寸和订单并改变这些评论的专家顾问。 这种东西要么独立编写,要么委托自由职业者编写。

我当然同意你的观点,但我不是在寻找 "现成的......",我不是在乞求或下订单。我愿意分享我的知识,这些知识可以被应用(并且我自己也会被应用)来实现一个有趣的,在我看来的想法。我也会把执行的代码贴在这里,欢迎任何参与。

 
Sergey Voytsekhovsky:

我当然同意你的观点,但我不是在寻找 "现成的......",我不是在乞求,也不是在订购。我愿意分享我的知识,这些知识可以用来(而且我自己也会用)实现一个有趣的、在我看来是有趣的想法。我也会把我所做的事情贴在这里,欢迎任何参与。

在我的文章中查看。它已经在那里完成了。在哪一个--我不记得了。但你可以在演讲稿中读到它。以两种方式制作。第二个留下作为工作版本--在magik中存储用户ID。
 
Artyom Trishkin:
请看我的文章。它已经在那里完成了。在哪一个--我不记得了。但你可以在演讲稿中读到它。以两种方式制作。第二个留下作为工作版本--在magik中存储用户ID。

谢谢,非常看重你的代码,经常使用,感谢你的辛勤工作,但你有那么多作品,我还没有找到关于这个主题。我将尝试用标签 "自定义标识符 "进行搜索,谢谢你的提示。

 
Sergey Voytsekhovsky:

谢谢,非常看重你的代码,经常使用,感谢你的辛勤工作,但你有这么多作品,我还没有找到关于这个主题。我将尝试用标签 "自定义标识符 "进行搜索,谢谢你的提示。

https://www.mql5.com/ru/articles/7394
 
Artyom Trishkin:
https://www.mql5.com/ru/articles/7394

谢谢你,我已经进入了文本:-()

 
Grigori.S.B:

我不建议使用评论栏。这当然是最简单的方法,但也是最不可靠的,因为这个字段可以随时被DC改变。

那么,跟踪系统的设计是为了在任何时候改变评论,如果它不符合位置或订单的状态。所以对于视觉观察来说,它并没有改变情况。
 
Sergey Voytsekhovsky:

我不明白你的问题

我是说这个https://www.mql5.com/ru/forum/48768

комментарий к ордеру
комментарий к ордеру
  • 2003.03.17
  • www.mql5.com
Общее обсуждение: комментарий к ордеру
 

晚上好。

我快速搜索了一下推荐的链接,得出的结论是,目前我不应该把它搞得太复杂。

我现在会试着用二维数组来做。我创建了它,并将数据写入其中。我决定检查一下它的工作是否正确,结果发现是错的!"。

//+------------------------------------------------------------------+
int Array_Creating_Caste_Positions()
{
   int n = 0;
   int size = PositionsTotal();
   for(int i=0; i<size; i++)
   {
      if(m_position.SelectByIndex(i))
      {
         int profit = (m_position.Profit()+m_position.Commission()+m_position.Swap())>0?1:-1;
         int type   = m_position.Type()==POSITION_TYPE_BUY?0:1;
         ArrayResize(arr_position,size,2);
         
         arr_position[i][0] = m_position.Identifier();
         arr_position[i][1] = m_position.Magic();
         arr_position[i][2] = profit;
         arr_position[i][3] = type;
         arr_position[i][4] = -1; //N_Caste (-1 = нет данных)
         n++;
      }
   }
return(n);
}
//+------------------------------------------------------------------+

要检查临时创建的变量并把它们放在注释 中,它不能正确地工作!

      int N = Array_Creating_Caste_Positions();
      
      int profit_Plus  = 0;
      int profit_Minus = 0;
      int N_Buy        = 0;
      int N_Sell       = 0;
      int size = PositionsTotal();
      
      for(int i=0; i<size; i++)
      {
         if(arr_position[i][2] > 0) profit_Plus++;
            else profit_Minus++ ;
         if(arr_position[i][3] < 1) N_Buy++;
            else N_Sell++ ;
      }
//+--- 
      if(InpCommentLog){
         Comment("Выводим данные \n"
         "всего записей в массиве ",N,"\n"
         "-----------------------: ",0,"\n"
         "profit_Plus:  ",profit_Plus,"\n"
         "profit_Minus: ",profit_Minus,"\n"
         "-----------------------: ",0,"\n"
         "N_Buy: ",N_Buy,"\n"
         "N_Sell: ",N_Sell,"\n"
         );}
//+--- 

谁能建议一下--我在哪里搞砸了,,?

附加的文件:
Sower_1_3.mq5  17 kb
 

如果你在测试器中运行,似乎所有的头寸(开仓)都是盈利的,而且都是买入的

profit_Plus == N_Buy == N  чего в принципе не должно быть.
 

左上角的评论

我不知道如何把它变大,对不起。