Fehler, Irrtümer, Fragen - Seite 2994

 
Alexandr Bryzgalov:

der Verweis gibt die Reihenfolge der Parameter nicht korrekt an.


Was sind Ihre Beweise?

 
Vladimir Karputov:

Was ist Ihr Beweis?

/

 
Vladimir Karputov:

Was sind Ihre Beweise?

Nein. Das ist kein Irrtum.

Der Auftrag selbst hat mich verwirrt. Und die Tatsache, dass er nicht 0 annimmt, sondern immer eine Variable braucht.


 
Alexandr Bryzgalov:

Nein. Das ist kein Irrtum.

Die Reihenfolge selbst ist verwirrend. Und dass es nicht 0 nimmt, sondern unbedingt eine Variable braucht.

So steht es in der Hilfe - es braucht eine VARIABLE

   int&           sub_window,   // The number of the subwindow 
 
Vladimir Karputov:

So steht es im Merkblatt - VARIABLE wird benötigt

 

Freunde, helft mir hier. Ich bin völlig verblüfft, was hier vor sich geht.

#property indicator_chart_window
#property indicator_plots 0

int                      ma_handle;
bool FirstStart;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
   if(ChartPeriod()!=PERIOD_M1)
     {
      ChartSetSymbolPeriod(0,_Symbol,PERIOD_M1);
     }
   ma_handle=iCustom(Symbol(),PERIOD_H1,"Indicator For Search Data");
   FirstStart = true;
   return(INIT_SUCCEEDED);
  }

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
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[])
  {
   ulong tmpTimeCopy = GetMicrosecondCount();
   if(FirstStart)
     {
      double tmp[];
      datetime DateStart=D'2018.07.19', DateEnd=D'2021.01.19 23:59:59';
      int DataCopy=-1;
      while(true)
        {
         DataCopy=CopyBuffer(ma_handle,0,DateStart,DateEnd,tmp);
         if(DataCopy<0)
            Print("Return");
         else
           {
            IndicatorRelease(ma_handle);
            FirstStart=false;
           }
         if(!FirstStart)
            break;
        }
      Print("Time Copy Buffer: ", GetMicrosecondCount() - tmpTimeCopy);
      Print("Data to Copy: ", DataCopy, " ", tmp[0], " ", tmp[1], " ", tmp[2], " ", tmp[3], " ", tmp[4]);
      Print(datetime(tmp[0])," ",datetime(tmp[1])," ",datetime(tmp[ArraySize(tmp)-1]));

     }
   return(rates_total);
  }

Hier ist der gesamte Indikator. Wenn er anspringt, gibt er

Bildschirmfoto

Warum dieser Optimismus? Wenn ich auf Pause oder Stopp drücke, erhalte ich immer noch Werte auf der Registerkarte Expert Advisor im Toolbox-Fenster. Das Fenster mit dem Indikator ist bereits geschlossen, aber die Werte werden erfolgreich angezeigt.

Wie kann das geschehen? Wer kann etwas erklären?

 
ROMAN KIVERIN:

Freunde, helft mir hier. Ich bin völlig verblüfft, was hier vor sich geht.

Hier ist der gesamte Indikator. Wenn er anspringt, gibt er

Warum dieser Optimismus? Wenn ich auf Pause oder Stopp drücke, erhalte ich immer noch Werte auf der Registerkarte Expert Advisor im Toolbox-Fenster. Das Fenster mit dem Indikator ist bereits geschlossen, aber die Werte werden erfolgreich angezeigt.

Wie kann das geschehen? Kann jemand etwas erklären?

Wer hat gesagt, dass CopyBuffer() mindestens einmal erfolgreich sein wird?

Wer hat gesagt, dass iCustom() erfolgreich sein wird ?

"Fehler können Zyklen bilden. Der hartnäckigste von ihnen ist unendlich". Fehlertheorie.
 

Seit dem letzten Updatefunktioniert die FunktionEnumToString je nach dem aufgerufenen Code nicht mehr korrekt. Ein separater Aufruf vonEnum_ führt nicht zu diesem Fehler.

template<typename T>

int Enum_(T enum_value)
  {
   ...
         s1=EnumToString(T(i1));

   ...

   }

Im Debugger:

GetLastError gibt zurück:

ERR_INVALID_PARAMETER.

4003

Fehlerhafter Parameter beim Aufruf einer Systemfunktion

 

Hilfe Kopie von mt4 Magazin

sell 0.20 CL-MAY21 at 59.36 sl: 0.00 tp: 0.00 -> sl: 0.00 tp: 58.00
14:07:13.521 Trade: '50223437': order #5595882 sell 0.20 CL-MAY21 at 59.36 was modified -> sl: 0.00 tp: 58.00
15:56:34.215 Startup: MetaTrader 4 for Android
15:56:34.223 Startup: Copyright 2001-2021, MetaQuotes Software Corp.
15:56:34.223 Startup:
15:56:34.223 Startup: Device: samsung a41 (QP1A.190711.020.A415FXXU1BUC3) 10(REL) 29SDK
15:56:34.223 Startup: Kernel: 4.14.141-20194519
15:56:34.239 Terminal: Native library initialized. Version 400 Build 1334
15:56:34.259 Chat: initialization success
15:57:43.276 Terminal: Codepage for current language (ru_RU) is 'CP1251'
15:57:43.277 Terminal: Using 'windows-1251' for server strings
15:57:43.284 Terminal: Terminal instance created
15:57:43.641 Terminal: Connecting to PinedaIntl-Trader through 'Main'
15:57:43.793 Terminal: Connected to PinedaIntl-Trader through Main
15:57:43.993 Chat: connected to msg.mql5.com:443
15:57:44.088 Network: '50223437': login successfull [connection type: unknown]
15:58:02.749 GL: Texture size: 256x256
15:59:35.745 Trade: '50223437': modify order #5595882 sell 0.20 CL-MAY21 at 54.19 sl: 0.00 tp: 58.00 -> sl: 0.00 tp: 52.0015:59:36.073 Trade: '50223437': order #5595882

Wie ist das passiert?

 
JRandomTrader:

Wer sagt, dass CopyBuffer() jemals erfolgreich sein wird?

Wer sagt, dass iCustom() erfolgreich sein wird ?

"Fehler können Zyklen bilden. Der hartnäckigste von ihnen ist unendlich". Fehlertheorie.

Das Interessante daran ist, dass diese Funktion erfolgreich ausgeführt wird. Sie wird ausgeführt und erzeugt Werte. Danach geht das Terminal nur noch in einen unverständlichen Zustand über.

Die Funktion iCustom() wird ebenfalls erfolgreich ausgeführt.