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

 
Sile Si:

Zweifellos verändert der Berater, der si beigefügt ist, vtbr

Wenn Sie einen EA an vtbr anhängen, ändert er si nicht, er arbeitet nur auf seinem eigenen Instrument


Haben Sie eine Erklärung dafür?

Es gibt keine Änderung im Code außer dieser einen:

Fügen Sie die Protokollzeilen an, die die Änderung zeigen (sparen Sie keine Zeilen aus - nehmen Sie + 3 von oben und unten)


Hinzugefügt.

Und OnInit() anzeigen.

 
Vladimir Karputov:

Fügen Sie Protokollzeilen hinzu, die die Änderung zeigen (sparen Sie die Zeilen nicht aus - nehmen Sie + 3 oben und unten)


Hinzugefügt.

Und OnInit() anzeigen.

Situation: Ich lösche T/R manuell, EA stellt es wieder ein.

NDP

int OnInit()
  {
   if(!MQLInfoInteger(MQL_TRADE_ALLOWED))
     {
      //Alert("Automated trading is forbidden in the program settings for ",__FILE__);
      return(false);
     }
   входить=входить_;
   handle_iCustom=iATR(Symbol(),ATRtimeframe,ATRper);
   if(handle_iCustom==INVALID_HANDLE)
     {
      //--- tell about the failure and output the error code 
      PrintFormat("Failed to create handle of the iCustom indicator for the symbol %s/%s, error code %d",
                  m_symbol.Name(),
                  EnumToString(Period()),
                  GetLastError());
      //--- the indicator is stopped early 
      return(INIT_FAILED);
     }

//
   handle_iCustom_2=iATR(Symbol(),ATRtimeframeStep,ATRperStep);

   if(handle_iCustom_2==INVALID_HANDLE)
     {
      //--- tell about the failure and output the error code 
      PrintFormat("Failed to create handle of the iCustom indicator for the symbol %s/%s, error code %d",
                  m_symbol.Name(),
                  EnumToString(Period()),
                  GetLastError());
      //--- the indicator is stopped early 
      return(INIT_FAILED);
     }
//

   handle_iMA=iMA(Symbol(),Time_Frame_MA,Period_MA,0,MODE_SMA,PRICE_CLOSE);
//--- if the handle is not created 
   if(handle_iMA==INVALID_HANDLE)
     {
      //--- tell about the failure and output the error code 
      PrintFormat("Failed to create handle of the iMA indicator for the symbol %s/%s, error code %d",
                  Symbol(),
                  EnumToString(Period()),
                  GetLastError());
      //--- the indicator is stopped early 
      return(INIT_FAILED);
     }

   m_hline_name_buy=Symbol()+" "+m_hline_name_buy;
// m_hline_name_sell=Symbol()+" "+m_hline_name_sell;

   HLineCreate(0,m_hline_name_buy,0,0.0,clrLime,2);
//---
//---
   if(InpLot<=0.0)
     {
      Print("The \"Lot\" can't be smaller or equal to zero");
      return(INIT_PARAMETERS_INCORRECT);
     }
//---
   if(!m_symbol.Name(Symbol())) // sets symbol name
      return(INIT_FAILED);
   RefreshRates();

   string err_text="";
   if(!CheckVolumeValue(InpLot,err_text))
     {
      Print(err_text);
      return(INIT_PARAMETERS_INCORRECT);
     }
//---
   m_trade.SetExpertMagicNumber(m_magic);
//---
   if(IsFillingTypeAllowed(SYMBOL_FILLING_FOK))
      m_trade.SetTypeFilling(ORDER_FILLING_FOK);
   else if(IsFillingTypeAllowed(SYMBOL_FILLING_IOC))
      m_trade.SetTypeFilling(ORDER_FILLING_IOC);
   else
      m_trade.SetTypeFilling(ORDER_FILLING_RETURN);
//---
   m_trade.SetDeviationInPoints(m_slippage);
//--- tuning for 3 or 5 digits
   int digits_adjust=1;
   if(m_symbol.Digits()==3 || m_symbol.Digits()==5)
      digits_adjust=10;
   m_adjusted_point=m_symbol.Point()*digits_adjust;
   ExtZeroLevel=InpZeroLevel*m_adjusted_point;
   ExtTrailingStop=InpTrailingStop*m_adjusted_point;
   ExtTrailingStep=InpTrailingStep*m_adjusted_point;
//-
   ExtTakeProfit=TakeProfit*m_adjusted_point;
   ExtSL=StopLoss*m_adjusted_point;
   ExtStep=InpStep*m_symbol.Point();
//---
   return(INIT_SUCCEEDED);
  }
 
Sile Si:

Situation: Ich lösche T/P manuell, der EA wird wieder aktiviert.

Bitte geben Sie folgende Informationen an: vollständiger Text des EA, auf welchem Server Sie sich verbinden, wie viel Guthaben Sie haben, welche Version des Terminals. Ich würde das gerne überprüfen.

Nur eines: wenn Sie NICHT auf MetaQuotes-Demo, sondern auf Exchange Server testen - hier ohne mich.

 
Vladimir Karputov:

Bitte geben Sie mir einige Informationen: den vollständigen Text des EA, mit welchem Server Sie sich verbinden, wie hoch das Guthaben ist, welche Version des Terminals. Ich würde das gerne überprüfen.

Nur eine Sache: wenn Sie NICHT auf MetaQuotes-Demo, sondern auf einem Exchange-Server testen - hier ohne mich.

Dies ist FORTS. Und wenn das Problem nur an einer Stelle und mit einer bestimmten Zukunft auftritt, ist es vielleicht einfacher, den Debugger zu benutzen? Tut mir leid, ich war verwirrt. Es scheint, dass der Debugger bei Expert Advisors nicht funktioniert.

 
Sergey Savinkin:

Dies ist FORTS. Und wenn das Problem nur an einer Stelle und mit einer bestimmten Zukunft auftritt, ist es vielleicht einfacher, den Debugger zu benutzen?

 
Sile Si:

Situation: Ich lösche das T/P manuell, der Berater fügt es wieder ein.

Bitte führen Sie folgenden Code aus:ListPositions.

Prüfen Sie, ob die Positionsart (KAUFEN oder VERKAUFEN) und der Symbolname übereinstimmen. Außerdem müssen Sie den NAMEN des Handelsservers und das BILD des Terminals angeben.

 
Vladimir Karputov:

Bitte führen Sie folgenden Code aus:ListPositions.

Prüfen Sie, ob die Positionsart (KAUFEN oder VERKAUFEN) und der Symbolname übereinstimmen. Sie müssen auch den NAME des Handelsservers und die BILD des Terminals angeben.

Ergebnis:

rn

open-broker build last, 1881. Auf vtbr wird T/R=0 gesetzt und auf einem anderen Instrument si, wird T/R gesetzt, was auf vtbr sein sollte.

Wladimir Karputow:. Auf dem Exchange-Server - hier ohne mich.

Wen soll ich ansprechen?

 
Sile Si:

Ergebnis:

Open-broker build last.

An wen muss ich mich wenden?

Ich habe ein Konto bei FORTS bx. Können Sie mir den EA und seine Einstellungen schicken? Wenn Sie die Logik des EA nicht "beleuchten" wollen, können Sie mir eine beliebige Schnittversion schicken, solange Sie einen Fehler simulieren können. Und die Forts werden in zwei Stunden geschlossen.

Und eine detaillierte Beschreibung, wie man einen Fehler simuliert.
 
Sergey Savinkin:

Ich habe ein FORTS bx-Konto. Können Sie mir den EA und die Einstellungen schicken. Wenn Sie die Logik des EA nicht "leicht" machen wollen, können Sie eine beliebige Schnittversion einfügen, solange Sie einen Fehler simulieren können. Und Forts wird in zwei Stunden geschlossen.

Was zu verbergen ist, Eingang durch MA, Mittelwertbildung) Sehen Sie sich bitte die PM an.

Darin befindet sich eine Menge zusätzliches Material, das von der Arbeit an einem Hedge-Konto übrig geblieben ist.

 
Sile Si:

Ergebnis:

open-broker build last, 1881. Auf vtbr steht T/P=0 und auf dem Werkzeug eines anderen, si, steht T/P, das auf vtbr stehen sollte.

An wen muss ich mich wenden?

Danke für die Klarstellung.

Wenn Sie einen Code verwenden, der meinen Beispielen sehr ähnlich ist, schicken Sie mir bitte Ihren EA. Ich protokolliere jetzt den Handel detaillierter. Ich werde es mir ansehen und den Code korrigieren. Ich werde es später überprüfen.

Grund der Beschwerde: