初学者的问题 MQL5 MT5 MetaTrader 5 - 页 934

 
鸭子在关于信号的文章中。不是这样的。
 
void ClosePositions()
  {
   for(int i=PositionsTotal()-1;i>=0;i--) // returns the number of current orders
      if(m_position.SelectByIndex(i))     // selects the position by index for further access to its properties
         if(m_position.Symbol()==m_symbol.Name() && m_position.Magic()==Magic)
            m_trade.PositionClose(m_position.Ticket()); // close a position by the specified symbol
  }
你能告诉我如何改变这个函数,以找到并关闭一个 有AAA评论的位置 吗?
Совершение сделок - Торговые операции - MetaTrader 5
Совершение сделок - Торговые операции - MetaTrader 5
  • www.metatrader5.com
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением текущими позициями путем их модификации или закрытия. Платформа позволяет удобно просматривать торговую историю на счете, настраивать оповещения о событиях на рынке и многое другое. Открытие позиций...
 
EgorKim:
你能告诉我如何改变这个函数,以找到并关闭一个 有AAA评论的位置 吗?

帮助:CPositionInfo

访问文本属性...
 

谢谢你。

另外,你能不能告诉我,为什么从'数字'到'字符串'的隐式转换在编译时被宣誓了?

如果(m_trade.Buy(InpLots,m_symbol.Name(),m_symbol.Ask(),sl,tp, "AAA")

正确的购买命令应该是什么样子的?

 
EgorKim:

谢谢你。

另外,你能不能告诉我,为什么从'数字'到'字符串'的隐式转换在编译时被宣誓了?

如果(m_trade.Buy(InpLots,m_symbol.Name(),m_symbol.Ask(),sl,tp, "AAA")

正确的购买命令应该是什么样子的?

参考资料:购买

帮助:有条件的if-else语句

 

你的代码不是这样写的。

以下是代码

long     chislo       =5;
if(m_trade.Buy(InpLots,m_symbol.Name(),m_symbol.Ask(),sl,tp,"AAA"+chislo))

编译器抱怨说:"AAA "+chislo

 
EgorKim:

你的代码不是这样写的。

以下是代码

编译器抱怨说:"AAA "+chislo

参考资料:IntegerToString


补充:今天就到这里吧。我已经睡着了。

 
EgorKim:

你的代码不是这样写的。

以下是代码

编译器抱怨说:"AAA "+chislo

long     chislo       =5;
if(m_trade.Buy(InpLots,m_symbol.Name(),m_symbol.Ask(),sl,tp,"AAA"+(string) chislo))
 

Vladimir Karputov, Alexey Viktorov

谢谢你

 

请告知该代码。

目前,有4个海湾开放,每个海湾有1个地段,有4个小区,每个小区有1个地段。符号是一样的。

在这个位置上只有1个买入和1个卖出被关闭。

void CloseBy()
  {
   ulong ticket_buy=ULONG_MAX;
   ulong ticket_sell=ULONG_MAX;
   for(int i=0;i<PositionsTotal();i++) // ATTENTION! Here, specially began a detour with "0"
      if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
         {
         if(m_position.PositionType()==POSITION_TYPE_BUY && ticket_buy==ULONG_MAX)
            ticket_buy=m_position.Ticket();

         if(m_position.PositionType()==POSITION_TYPE_SELL && ticket_sell==ULONG_MAX)
            ticket_sell=m_position.Ticket();
        }
   if(ticket_buy!=ULONG_MAX && ticket_sell!=ULONG_MAX)
      m_trade.PositionCloseBy(ticket_buy,ticket_sell);
//---
   return;
  }

在这个位置上没有任何东西是封闭的

void CloseBy()
  {
   ulong ticket_buy=ULONG_MAX;
   ulong ticket_sell=ULONG_MAX;
   for(int i=0;i<PositionsTotal();i++) // ATTENTION! Here, specially began a detour with "0"
      if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
        {
         if(m_position.PositionType()==POSITION_TYPE_BUY && ticket_buy==ULONG_MAX)
            ticket_buy=m_position.Ticket();

         if(m_position.PositionType()==POSITION_TYPE_SELL && ticket_sell==ULONG_MAX)
            ticket_sell=m_position.Ticket();
        }
   if(ticket_buy!=ULONG_MAX && ticket_sell!=ULONG_MAX)
      m_trade.PositionCloseBy(ticket_buy,ticket_sell);
//---
   //return;
  }

我应该怎样做才能关闭所有4个买入和4个卖出的反关闭?