Fehler, Irrtümer, Fragen - Seite 1227

 

MT4. Demo-Server MetaQuotes-Demo.Loch vom 30.08.2012 bis 10.09.2012. Bestätigt.

Bohrung vom 30.08.2012 bis 10.09.2012

 
Renat:

Ich kann es nicht glauben.

Ich habe dreimal absichtlich den gesamten Verlauf auf dem Laufwerk gelöscht und alle drei Zugangspunkte dreimal durch einen Neustart überprüft. Die ganze Geschichte ist noch da.

Sie brauchen nicht mit dem Archiv der Angebote zu spielen, sondern überprüfen den regulären Verlauf sauber.

Ich habe absichtlich den MT4 von MQ eingesetzt, um mit der regulären Geschichte zu spielen.

Wenn ich die Home-Taste drücke, wird der Verlauf nach dem Löschen vom Laufwerk heruntergeladen, was im Verbindungsstatus zu sehen ist. Es ist wie auf dem Bildschirmfoto.

Dies ist ein weiterer Broker zum Vergleich, er schaltet und lädt


ps auf Home Download "bis zum Ende" funktioniert nicht automatisch, ich erinnere mich nicht, war es so vor?

 
barabashkakvn:

MT4. Demo-Server MetaQuotes-Demo.Loch vom 30.08.2012 bis 10.09.2012. Bestätigt.

Es scheint sich um 2012 zu handeln, nicht um 2014.

Ja, es gibt dort ein Loch. Laden Sie einen Minutenverlauf aus dem History Center und stimmen Sie zu, die Zeiträume neu zu berechnen. Das Loch wird sich füllen.

Verwenden Sie die Server der Broker oder wechseln Sie zu MT5, wo die Historie dank der einminütigen Historie für alle Zeitrahmen viel besser ist.

 

Warum antwortet niemand auf die Anfrage im Service Desk #1073960 vom 30.09.2014 bezüglich MQL4?

Ошибка в файлах стандартной библиотеки при попытке использовать метод GetData классов CiForce и CiOBV

'm_applied' - improper enumerator cannot be used Oscilators.mqh   494 60

'm_applied' - improper enumerator cannot be used Volumes.mqh      241 34

И ещё ошибка в классе CiATR:

'GetData' - function must have a body Oscilators.mqh   25 22


Über die gleichen Fehler habe ich vor 3 Monaten hier geschrieben:https://www.mql5.com/ru/forum/1111/page1190#comment_993762

Ich erhalte keine Antwort, ein neuer Build wurde veröffentlicht, aber die Fehler sind immer noch da. Ehrlich gesagt ist es nicht schön, so behandelt zu werden. Sie scheinen ihnen zu helfen, indem Sie auf Fehler hinweisen, aber niemand macht sich die Mühe, zu antworten. Kümmern Sie sich wirklich nicht um die Fehler in Ihren eigenen Bibliotheken?

 

Keine Post - kein Problem?

Der Garten des Kindes.

 
Silent:

Keine Post - kein Problem?

Der Garten des Kindes.

Was soll das heißen? Heute wurden keine Beiträge aus diesem Thema gelöscht.
 
meat:

Es gibt Fehler in der Standardbibliothek für MQL4, insbesondere in Indikatorklassen.

Es gibt keinen GetData-Methodenkörper für die CiATR-Klasse.

Die Methode GetData() ist in der übergeordneten Basisklasse definiert und muss in diesem Fall nicht außer Kraft gesetzt werden.

Bitte beachten Sie, dass Sie vor dem Aufruf von GetData() die Werte in den Indikatorpuffern der Klasse mit der Methode Refresh() aktualisieren müssen

//+------------------------------------------------------------------+
//|                                                   CheckCiATR.mq5 |
//|                        Copyright 2013, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property  copyright "Copyright 2013, MetaQuotes Software Corp."
#property  link      "http://www.mql5.com"
#property  version   "1.00"
#include<Indicators\Oscilators.mqh>

#property  script_show_inputs
input int sleep_debug=10; // пауза в секундах при отладке
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   CiATR iatr;
   bool res=iatr.Create(_Symbol,0,15);
   if(res)
     {
      Sleep(3000);                // дадим время на расчет индикатора
      long handle=iatr.Handle();  // хендл индикатор а
      //--- набросим индикатор на график      
      iatr.AddToChart(0,1);
      //--- количество баров, на которых индикатор рассчитан
      int bars=iatr.BarsCalculated();
      //--- количество буферов в индикаторе    
      int buffers=iatr.BuffersTotal();
      Print("Buffers=",buffers);
      //--- размер индикаторного буфера      
      int size=iatr.BufferSize();  // для экономии по умолчанию установлено 100
      Print("BufferSize=",size);
      //--- покажем как увеличить размер индикаторного буфера      
      bool resized=iatr.BufferResize(bars-1);
      //--- если изменить размер индикаторного буфера не удалось вдруг
      if(!resized)
        {
         PrintFormat("Ошибка при попытке увеличить размер индикаторного буфера!, GetLastError = "
                     ,GetLastError());
        }
      //--- ! обязательно обновляем данные в буфере перед обращением к данным индикатора      
      iatr.Refresh();
      //--- выведем 10 последних значений индикатора и сравних их с DataWindow      
      for(int i=10;i>=0;i--)
        {
         // буфер индикаторя является таймсерией - индекс увеличивается вглубь истории
         PrintFormat(" ATR(%d) = %f",i,iatr.GetData(0,i));
        }
     }
//--- пауза на тот случай, если скрипт запустили в отладке
   if(MQLInfoInteger(MQL_DEBUG))
     {
      Sleep(sleep_debug*1000);
     }
  }
//+------------------------------------------------------------------+
 
meat:

Es gibt Fehler in der Standardbibliothek für MQL4, und zwar in den Indikatorklassen.

Bei Indikatoren, die den Parameter ENUM_APPLIED_VOLUME verwenden(CiForce, CiOBV), tritt ein Fehler auf: Unzulässiger Enumerator kann nicht verwendet werden


Hier sind einige Beispiele, die kompiliert werden und funktionieren.

//+------------------------------------------------------------------+
//|                                                Check_CiForce.mq5 |
//|                        Copyright 2013, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property  copyright "Copyright 2013, MetaQuotes Software Corp."
#property  link      "http://www.mql5.com"
#property  version   "1.00"
#include<Indicators\Oscilators.mqh>

#property  script_show_inputs
input int sleep_debug=10; // пауза в секундах при отладке
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   CiForce iforce;
   bool res=iforce.Create(_Symbol,0,15,MODE_SMA,VOLUME_TICK);
   if(res)
     {
      Sleep(3000);                // дадим время на расчет индикатора
      long handle=iforce.Handle();  // хендл индикатор
      //--- набросим индикатор на график      
      iforce.AddToChart(0,1);
      //--- ! обязательно обновляем данные в буфере перед обращением к данным индикатора      
      iforce.Refresh();
      //--- выведем 10 последних значений индикатора и сравних их с DataWindow      
      for(int i=10;i>=0;i--)
        {
         // буфер индикаторя является таймсерией - индекс увеличивается вглубь истории
         PrintFormat(" %s(%d) = %f",iforce.Name(),i,iforce.GetData(0,i));
        }
     }
//--- пауза на тот случай, если скрипт запустили в отладке
   if(MQLInfoInteger(MQL_DEBUG))
     {
      Sleep(sleep_debug*1000);
     }
  }
//+------------------------------------------------------------------+

и

//+------------------------------------------------------------------+
//|                                                  Check_CiOBV.mq5 |
//|                        Copyright 2013, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property  copyright "Copyright 2013, MetaQuotes Software Corp."
#property  link      "http://www.mql5.com"
#property  version   "1.00"
#include<Indicators\Volumes.mqh>

#property  script_show_inputs
input int sleep_debug=10; // пауза в секундах при отладке
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   CiOBV indicator;
   bool res=indicator.Create(_Symbol,0,VOLUME_TICK);
   if(res)
     {
      Sleep(3000);                // дадим время на расчет индикатора
      long handle=indicator.Handle();  // хендл индикатор
      //--- набросим индикатор на график      
      indicator.AddToChart(0,1);
      //--- ! обязательно обновляем данные в буфере перед обращением к данным индикатора      
      indicator.Refresh();
      //--- выведем 10 последних значений индикатора и сравних их с DataWindow      
      for(int i=10;i>=0;i--)
        {
         // буфер индикаторя является таймсерией - индекс увеличивается вглубь истории
         PrintFormat(" %s(%d) = %f",indicator.Name(),i,indicator.GetData(0,i));
        }
     }
//--- пауза на тот случай, если скрипт запустили в отладке
   if(MQLInfoInteger(MQL_DEBUG))
     {
      Sleep(sleep_debug*1000);
     }
  }
//+------------------------------------------------------------------+
 
Im Protokoll wird eine Meldung angezeigt, was könnte der Grund dafür sein?
Es tritt sehr selten auf, aber ich möchte trotzdem der Sache auf den Grund gehen - ich brauche die Stabilität des Programms.
3 14:55:11.739 Datei 'D:\progy\mt4\MQL4\\indicators\.ex4' kann nicht geöffnet werden [123]
 
ALXIMIKS:
eine Meldung im Protokoll aufgetaucht ist, was könnte der Grund dafür sein?
Es tritt sehr selten auf, aber ich möchte trotzdem der Sache auf den Grund gehen - ich brauche die Stabilität des Programms.
Unter welchen Bedingungen tritt sie auf? Wie lautet der Name des Indikators?