Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 934

 
Ente steht in dem Artikel über Signale. Das ist nicht alles.
 
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
  }
Können Sie mir sagen, wie ich diese Funktion ändern kann, umeine Position zu finden undzu schließen, die einen AAA-Kommentar hat?
Совершение сделок - Торговые операции - MetaTrader 5
Совершение сделок - Торговые операции - MetaTrader 5
  • www.metatrader5.com
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением текущими позициями путем их модификации или закрытия. Платформа позволяет удобно просматривать торговую историю на счете, настраивать оповещения о событиях на рынке и многое другое. Открытие позиций...
 
EgorKim:
Können Sie mir sagen, wie ich diese Funktion ändern kann, umeine Position zu finden undzu schließen, die einen AAA-Kommentar hat?

Hilfe:CPositionInfo

Zugriff auf Texteigenschaften ...
 

Ich danke Ihnen.

Könnten Sie mir bitte auch sagen, warum die implizite Umwandlung von "Zahl" in "String" bei der Kompilierung geschworen wird?

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

Wie sollte der korrekte Kaufbefehl aussehen?

 
EgorKim:

Ich danke Ihnen.

Könnten Sie mir bitte auch sagen, warum die implizite Umwandlung von "Zahl" in "String" bei der Kompilierung geschworen wird?

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

Wie sollte der korrekte Kaufbefehl aussehen?

Referenz:Kaufen.

Hilfe:Bedingte if-else-Anweisung

 

So haben Sie den Code nicht geschrieben.

Hier ist der Code

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

Der Compiler beschwert sich über"AAA "+chislo

 
EgorKim:

So haben Sie den Code nicht geschrieben.

Hier ist der Code

Der Compiler beschwert sich über"AAA "+chislo

Referenz:IntegerToString


Hinzugefügt: Das war's für heute. Ich schlafe schon.

 
EgorKim:

So haben Sie den Code nicht geschrieben.

Hier ist der Code

Der Compiler beschwert sich über"AAA "+chislo

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

Wladimir Karputow, Alexej Viktorow

Dankeschön

 

Bitte nennen Sie den Code.

Zurzeit sind 4 Buchten mit je 1 Los und 4 Zellen mit je 1 Los geöffnet. Das Symbol ist dasselbe.

In dieser Position wird nur 1 Kauf und 1 Verkauf abgeschlossen.

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;
  }

In dieser Position ist überhaupt nichts geschlossen

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;
  }

Was muss ich tun, um alle 4 Käufe und 4 Verkäufe gegeneinander abzuschließen?

Grund der Beschwerde: