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

 
Sergey Voytsekhovsky:

Falls Sie das Logbuch auf dem Bild nicht sehen können, hier sind einige der jüngsten Einträge

Entschuldigung, es gab einen Fehler in Print() für den Abwärtspfeil, die Zeit des Aufwärtspfeils wurde ersetzt, ich habe es korrigiert, aber das macht jetzt nichts mehr.

 
Sergey Voytsekhovsky:

Falls Sie das Logbuch auf dem Bild nicht sehen können, hier ein paar der letzten Einträge

Ist der Zeitpunkt der ganz rechten Kerze 10:00 Uhr auf dem Stundenchart?

 
Alexey Viktorov:

Ist der Zeitpunkt der ganz rechten Kerze 10:00 Uhr auf dem Stundenchart?

Das ist, was ich spreche über, die Expert Advisor kann nicht sehen, die Kante Kerze, und ich kann nicht auf den Fehler, so dass ich um Hilfe schreien

https://www.mql5.com/ru/forum/160683/page848#comment_11761231

Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам
Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам
  • 2019.05.20
  • www.mql5.com
В этой ветке я хочу начать свою помощь тем, кто действительно хочет разобраться и научиться программированию на новом MQL4 и желает легко перейти н...
 

Hier ist ein Bild des korrigierten Print() für den Abwärtspfeil


 
void OnTick()
  {
   if (CopyBuffer(CrossAD, 1, 0, period_find, Buf_Arrow_Buy) != period_find)
      {  
         Print("НЕ удалось правильно скопировать данные из 1-го буфера индикатора iCrossAD, error code %d",GetLastError());
         return;
      }
         for(int n=0; n<(int)period_find; n++)
            {
               if(Buf_Arrow_Buy[n]!=EMPTY_VALUE)
               {
                  Last_Arrow_Buy_volume = iOpen(_Symbol,_Period,n);
                  Last_Arrow_Buy_time   = iTime(_Symbol,0,n);
                  Last_Arrow_Buy_index  = n;
                  Print("Last_Arrow_Buy_volume = ",Last_Arrow_Buy_volume,", Last_Arrow_Buy_index = ",Last_Arrow_Buy_index,", Last_Arrow_Buy_time = ",Last_Arrow_Buy_time);
                  break;
               }   
            }
         
   if (CopyBuffer(CrossAD, 2, 0, period_find, Buf_Arrow_Sell) != period_find)
      {  
         Print("НЕ удалось правильно скопировать данные из 2-го буфера индикатора iCrossAD, error code %d",GetLastError());
         return;
      }
         for(int n=0; n<(int)period_find; n++)
            {
               if(Buf_Arrow_Sell[n]!=EMPTY_VALUE)
               {
                  Last_Arrow_Sell_volume = iOpen(_Symbol,_Period,n);
                  Last_Arrow_Sell_time   = iTime(_Symbol,0,n);
                  Last_Arrow_Sell_index  = n;
                  Print("Last_Arrow_Sell_volume = ",Last_Arrow_Sell_volume,", Last_Arrow_Sell_index = ",Last_Arrow_Sell_index,", Last_Arrow_Sell_time = ",Last_Arrow_Sell_time);
                  break;
               }
            }
      
Comment("-------------------------", 
         "\n Last_Arrow_Buy_volume     = ",Last_Arrow_Buy_volume,
         "\n Last_Arrow_Buy_index        = ",Last_Arrow_Buy_index,
         "\n Last_Arrow_Buy_time         = ",Last_Arrow_Buy_time,
         "\n ---------------------- ",
         "\n Last_Arrow_Sell_volume     = ",Last_Arrow_Sell_volume,
         "\n Last_Arrow_Sell_index        = ",Last_Arrow_Sell_index,
         "\n Last_Arrow_Sell_time         = ",Last_Arrow_Sell_time
         ); 
  }
Dateien:
 
Sergey Voytsekhovsky:

Haben Sie ArraySetAsSeries() auf beide Arrays angewendet?

Документация по MQL5: Операции с массивами / ArraySetAsSeries
Документация по MQL5: Операции с массивами / ArraySetAsSeries
  • www.mql5.com
//| Custom indicator initialization function                         | //| Custom indicator iteration function                              |
 
Artyom Trishkin:

Haben Sie ArraySetAsSeries() auf beide Arrays angewendet?

Ja, zu beidem.

int OnInit()
  {
   ArraySetAsSeries(Buf_Arrow_Buy, true);
   ArraySetAsSeries(Buf_Arrow_Sell, true);
//---
   CrossAD = iCustom(asymbol.Name(), _Period, "iCrossAD");
   if (CrossAD == INVALID_HANDLE)
   {
      Print("Не удалось создать описатель индикатора iCrossAD!");
      return(INIT_FAILED);
   }
      else Print("Хендл iCrossAD = ",CrossAD);
//---
   return(INIT_SUCCEEDED);
  }

Ich habe festgestellt, dassdie Pfeile im Hauptdiagramm nicht angezeigt werden, wenn deriCustom-Indikator parallel zum Diagramm aktiviert ist.Kann das der Grund sein?

 
Sergey Voytsekhovsky:

Ja, zu beidem.

Ich habe festgestellt, dassdie Pfeile im Hauptdiagramm nicht angezeigt werden, wenn deriCustom-Indikator parallel zum Diagramm aktiviert ist.Kann das der Grund sein,...?

Drucken Sie in der Schleife bei n==0 den Zeitpunkt des Taktes n aus - Sie werden sofort verstehen, wo die Schleife beginnt.

 
Sergey Voytsekhovsky:

Ja, zu beidem.

Mir ist aufgefallen, dassdie Pfeile im Hauptdiagramm nicht angezeigt werden, wenn deriCustom-Indikator parallel im Diagramm aktiviert ist.Kann dies der Grund sein?

Ich habe den Indikator entfernt und wieder angebracht, Pfeile erschienen, EA sieht den Pfeil immer noch nicht

 
Sergey Voytsekhovsky:

Ich habe ihn heruntergenommen und den Indikator wieder hochgezogen, die Pfeile erschienen, EA sieht den Pfeil am Ende immer noch nicht

Ich habe den Expert Advisor kompiliert - die Pfeile des parallel laufenden Indikators auf dem Hauptdiagramm sind verschwunden. Eine Art Kobold hat angefangen, oder was?