Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 728

 
multiplicator:

INIT_PARAMETERS_INCORRECT

Um dem Programmierer einen falschen Satz von Eingabeparametern anzuzeigen, wird der Ergebnisstring mit diesem Rückgabewert in der allgemeinen Optimierungstabelle rot hervorgehoben.

Für diesen Satz von Expert Advisor-Parametern werden keine Tests durchgeführt.



Etwas ist nicht rot hervorgehoben.

Ist das bei allen so?


Hier ist der Code in oninit:


Das Journal erzeugt die folgenden Fehler:



Ist es seltsam, dass er so schreibt?

Sie geben in onInit() ausdrücklich INIT_PARAMETERS_INCORRECT zurück

Was Sie in Ihrem Code geschrieben haben, ist das, was Sie im Terminal/Tester erhalten; wenn Sie INIT_FAILED zurückgeben, bedeutet das eine falsche Initialisierung und kein Testen ... was Sie also geschrieben haben, erhalten Sie, also was ist die Frage?

 
multiplicator:

INIT_PARAMETERS_INCORRECT

Um dem Programmierer einen falschen Satz von Eingabeparametern anzuzeigen, wird der Ergebnisstring mit diesem Rückgabewert in der allgemeinen Optimierungstabelle rot hervorgehoben.

Für diesen Satz von Expert Advisor-Parametern werden keine Tests durchgeführt.



Etwas ist nicht rot hervorgehoben.

Ist das bei allen so?


Dies ist der Code in OnInit:


Das Journal erzeugt Fehler wie diese:



Wo ist die Optimierungstabelle selbst, die zeigt, wonach Sie fragen?

 
Igor Makanu:

Ist es seltsam, dass er so schreibt?

Sie speziell in onInit() und geben INIT_PARAMETERS_INCORRECT zurück

Was Sie in den Code geschrieben haben, ist das, was Sie im Terminal/Tester erhalten; wenn Sie INIT_FAILED zurückgeben, bedeutet das eine falsche Initialisierung und keinen Test... was Sie geschrieben haben, ist das, was Sie erhalten haben, was ist also die Frage?

die Frage ist nicht rot unterlegt. )
 
multiplicator:
Frage ist nicht rot hervorgehoben. )

Ich verstehe, ich habe kein Terminal zur Hand, aber es scheint, dass nur Fehlerprotokolle im Meta-Editor rot hervorgehoben werden, während im Terminal und im Tester nur das Symbol rot ist, und der Text selbst scheint nicht zu "röten"

 
Igor Makanu:

Ich sehe, ich habe kein Terminal zur Hand, aber es scheint, dass nur die Fehlerprotokolle im Meta-Editor rot hervorgehoben werden, während im Terminal und im Tester nur das Symbol rot ist, und der Text selbst scheint nicht "rot" zu sein

Ich bin noch nie rot geworden, weder aus Verlegenheit, noch aus Stress.

 
Guten Tag. Bitte helfen Sie mir, den Indikator in meinen EA zu integrieren. In welche Abschnitte sollte ich sie kopieren?
//+------------------------------------------------------------------+
//|                                                    atrValues.mq4 |
//|                                    Copyright 2015, Mohit Marwaha |
//|                                                marwaha1@gmail.com|
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, Mohit Marwaha"
#property link      "marwaha1@gmail.com"
#property version   "1.00"
#property strict
#property indicator_chart_window
//---
extern int atrPeriod=10;
extern int infoCorner=0;
extern int shift=0;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   Comment("Copyright MohitMarwaha");
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   ObjectsDeleteAll();
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---
   double atr1=iATR(Symbol(),1,atrPeriod,shift);
   double atr5=iATR(Symbol(),5,atrPeriod,shift);
   double atr15=iATR(Symbol(),15,atrPeriod,shift);
   double atr30=iATR(Symbol(),30,atrPeriod,shift);
   double atr60=iATR(Symbol(),60,atrPeriod,shift);
   double atr240=iATR(Symbol(),240,atrPeriod,shift);
   double atr1440=iATR(Symbol(),1440,atrPeriod,shift);
   double atr10080=iATR(Symbol(),10080,atrPeriod,shift);
   double atr43200=iATR(Symbol(),43200,atrPeriod,shift);
//---
   ObjectCreate("ObjName1",OBJ_LABEL,0,0,0);
   ObjectSetText("ObjName1","ATR"+IntegerToString(atrPeriod,0)+": M1="+DoubleToStr(atr1,5),8,"Verdana",Red);
   ObjectSet("ObjName1",OBJPROP_CORNER,infoCorner);
   ObjectSet("ObjName1",OBJPROP_XDISTANCE,10);
   ObjectSet("ObjName1",OBJPROP_YDISTANCE,25);
//---
   ObjectCreate("ObjName2",OBJ_LABEL,0,0,0);
   ObjectSetText("ObjName2","ATR"+IntegerToString(atrPeriod,0)+": M5="+DoubleToStr(atr5,5),8,"Verdana",Red);
   ObjectSet("ObjName2",OBJPROP_CORNER,infoCorner);
   ObjectSet("ObjName2",OBJPROP_XDISTANCE,10);
   ObjectSet("ObjName2",OBJPROP_YDISTANCE,40);
//---
   ObjectCreate("ObjName3",OBJ_LABEL,0,0,0);
   ObjectSetText("ObjName3","ATR"+IntegerToString(atrPeriod,0)+": M15="+DoubleToStr(atr15,5),8,"Verdana",Red);
   ObjectSet("ObjName3",OBJPROP_CORNER,infoCorner);
   ObjectSet("ObjName3",OBJPROP_XDISTANCE,10);
   ObjectSet("ObjName3",OBJPROP_YDISTANCE,55);
//---
   ObjectCreate("ObjName4",OBJ_LABEL,0,0,0);
   ObjectSetText("ObjName4","ATR"+IntegerToString(atrPeriod,0)+": M30="+DoubleToStr(atr30,5),8,"Verdana",Red);
   ObjectSet("ObjName4",OBJPROP_CORNER,infoCorner);
   ObjectSet("ObjName4",OBJPROP_XDISTANCE,10);
   ObjectSet("ObjName4",OBJPROP_YDISTANCE,70);
//---
   ObjectCreate("ObjName5",OBJ_LABEL,0,0,0);
   ObjectSetText("ObjName5","ATR"+IntegerToString(atrPeriod,0)+": M60="+DoubleToStr(atr60,5),8,"Verdana",Red);
   ObjectSet("ObjName5",OBJPROP_CORNER,infoCorner);
   ObjectSet("ObjName5",OBJPROP_XDISTANCE,10);
   ObjectSet("ObjName5",OBJPROP_YDISTANCE,85);
//---
   ObjectCreate("ObjName6",OBJ_LABEL,0,0,0);
   ObjectSetText("ObjName6","ATR"+IntegerToString(atrPeriod,0)+": M240="+DoubleToStr(atr240,5),8,"Verdana",Red);
   ObjectSet("ObjName6",OBJPROP_CORNER,infoCorner);
   ObjectSet("ObjName6",OBJPROP_XDISTANCE,10);
   ObjectSet("ObjName6",OBJPROP_YDISTANCE,100);
//---
   ObjectCreate("ObjName7",OBJ_LABEL,0,0,0);
   ObjectSetText("ObjName7","ATR"+IntegerToString(atrPeriod,0)+": M1440="+DoubleToStr(atr1440,5),8,"Verdana",Red);
   ObjectSet("ObjName7",OBJPROP_CORNER,infoCorner);
   ObjectSet("ObjName7",OBJPROP_XDISTANCE,10);
   ObjectSet("ObjName7",OBJPROP_YDISTANCE,115);
//---
   ObjectCreate("ObjName8",OBJ_LABEL,0,0,0);
   ObjectSetText("ObjName8","ATR"+IntegerToString(atrPeriod,0)+": M10080="+DoubleToStr(atr10080,5),8,"Verdana",Red);
   ObjectSet("ObjName8",OBJPROP_CORNER,infoCorner);
   ObjectSet("ObjName8",OBJPROP_XDISTANCE,10);
   ObjectSet("ObjName8",OBJPROP_YDISTANCE,130);
//---
   ObjectCreate("ObjName9",OBJ_LABEL,0,0,0);
   ObjectSetText("ObjName9","ATR"+IntegerToString(atrPeriod,0)+": M43200="+DoubleToStr(atr43200,5),8,"Verdana",Red);
   ObjectSet("ObjName9",OBJPROP_CORNER,infoCorner);
   ObjectSet("ObjName9",OBJPROP_XDISTANCE,10);
   ObjectSet("ObjName9",OBJPROP_YDISTANCE,145);
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+
 
Carcass77:
Guten Tag. Bitte helfen Sie mir, den Indikator in meinen EA zu integrieren. Wo kann ich sie kopieren?

void OnTick()

 
Alekseu Fedotov:

void OnTick()

Versucht

keine Indikatorfenster-Eigenschaft definiert ist, wird indicator_chart_window angewendet 0 0


 
Carcass77:
Guten Tag. Hilfe beim Einfügen des Indikators in den EA. In welche Abschnitte sollte ich sie kopieren?

Kopieren hilft nicht, Sie müssen lesen, hier ist der Artikelhttps://www.mql5.com/ru/articles/1456

Перенос кода индикатора в код эксперта. Строение индикатора.
Перенос кода индикатора в код эксперта. Строение индикатора.
  • www.mql5.com
Предполагается, что читатель знаком с оптимизацией кода индикатора для того, чтобы этот индикатор пересчитывался на новых тиках только на непосчитанных барах. На мой взгляд, начинать изучение программирования на языке MQL4 следовало бы именно с этих вещей. Если вы всерьёз собрались использовать своего эксперта в реальной торговле и доверять...
 
Igor Makanu:

Kopieren wird nicht helfen, Sie müssen lesen, hier ist der Artikelhttps://www.mql5.com/ru/articles/1456

Okay, danke.