Merkmale der Sprache mql5, Feinheiten und Techniken - Seite 233

 
Wenige Dinge.

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Fehler, Bugs, Fragen

fxsaber, 2023.07.19 19:10

ulong HistoryDealGetTicket( int ) { return(0); } // Перегрузка в каком-нибудь далеком mqh.

void OnStart()
{      
  if (HistorySelect(0, INT_MAX))
  {
    for (uint i = HistoryDealsTotal(); (bool)i--; ) // Хорошо - потенциальная перегрузка не сломает результат.
      Print(HistoryDealGetTicket(i));
      
    for (int i = HistoryDealsTotal() - 1; i >= 0; i--) // Классика - плохо из-за потенциальной перегрузки.
      Print(HistoryDealGetTicket(i));
  }
}

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Bugs, Fehler, Fragen

fxsaber, 2023.07.19 18:55

HistoryOrderGetTicket, PositionGetTicket, OrderGetTicket - ähnlich.

 
Manchmal ist es sinnvoll, eine solche Erinnerung zu erstellen.
void Func()
{
  int Доделать;
}
Dann wird der Compiler Sie daran erinnern.
variable 'Доделать' not used    Test5-3.mq5     516     7
code generated          1       1
0 errors, 1 warnings, 241 msec elapsed, cpu='X64 Regular'               1       2

Ein Doppelklick auf "Fertigstellen" bringt Sie direkt an die richtige Stelle.

 
Öffnen einer Datei über die grafische Benutzeroberfläche.
// Диалог для открытия файла.
bool GUIOpenFile( const string FileName, const bool Common = false, const ushort Separator = '/' )
{
  const bool Res = FileIsExist(FileName, Common);
  
  if (Res)
  {
    string Str[];  
    const int Size = StringSplit(FileName, Separator, Str) - 1;
    const string File = Str[Size];
    const string Path = Size ? StringSubstr(FileName, 0, StringLen(FileName) - StringLen(File) - 1) : NULL;
    
    FileSelectDialog("Right-click on the file " + File + " and select open.", Path,  
                     File + "|" + File, Common ? FSD_COMMON_FOLDER : 0, Str, File);    
  }

  return(Res);
}

void OnStart()
{
  GUIOpenFile("Reports//Report.htm");
}
 
fxsaber #:
FileSelectDialog

Wow, das wusste ich gar nicht

FileSelectDialog

Wie lange ist das schon möglich?

 
Aleksey Vyazmikin #:

Wie lange können Sie das schon tun?

Über 3,5 Jahre.

MetaTrader 5 build 2340: Управление настройками счета в тестере и расширение интеграции с Python
MetaTrader 5 build 2340: Управление настройками счета в тестере и расширение интеграции с Python
  • 2020.02.21
  • MetaQuotes
  • www.metatrader5.com
Добавлена возможность удобной работы с SQLite базами данных. В предыдущем обновлении платформы мы добавили поддержку работы с базами данных SQLite прямо из MQL5. Теперь основные функции стали доступны и через пользовательский интерфейс MetaEditor: Как это работает Для быстрого создания баз данных воспользуйтесь "Мастером MQL5". Здесь вы можете...
 

Wirklich. Bin auf keine Verwendung gestoßen.

 
Aleksey Vyazmikin #:

Das stimmt. Ich habe noch keine Verwendung dafür gefunden.

Ich selbst habe es in ein paar Szenarien angewandt(eines davon). Ich habe es auch nicht auf der Seite angetroffen.

Библиотеки: Sequence - Пример советника, который убьет большинство VPS-катастрофы
Библиотеки: Sequence - Пример советника, который убьет большинство VPS-катастрофы
  • 2020.10.12
  • www.mql5.com
Больше 4 Gb памяти потребовал Терминал для запуска этих шести советников. что запускаете Терминал с висящими советниками в нем. На запуске советников удалось уменьшить потребление памяти Терминалом более. но сумел удержать Терминал от огромного потребления ОЗУ
 
OrderSendAsync kann länger als fünf Sekunden für die Ausführung benötigen.
 
fxsaber OrderSendAsync kann länger als fünf Sekunden für die Ausführung benötigen.

???

Wie?

 
Maxim Kuznetsov #:

???

Wie war das?

Sie messen die Dauer und erhalten das Ergebnis. Das ist mir bei TRADE_ACTION_MODIFY passiert.

Grund der Beschwerde: