Caratteristiche del linguaggio mql5, sottigliezze e tecniche - pagina 233

 
Poche cose.

Forum sul trading, sui sistemi di trading automatizzati e sulla verifica delle strategie di trading.

Errori, bug, domande

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 sul trading, sui sistemi di trading automatizzati e sul test delle strategie di trading

Errori, bug, domande

fxsaber, 2023.07.19 18:55

HistoryOrderGetTicket, PositionGetTicket, OrderGetTicket - simili.

 
A volte è utile fare questo promemoria.
void Func()
{
  int Доделать;
}
Allora il compilatore ve lo ricorderà.
variable 'Доделать' not used    Test5-3.mq5     516     7
code generated          1       1
0 errors, 1 warnings, 241 msec elapsed, cpu='X64 Regular'               1       2

Facendo doppio clic su "Fine" si arriva direttamente al punto giusto.

 
Apertura di un file tramite GUI.
// Диалог для открытия файла.
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 #:
Finestra di dialogo FileSelect

Wow, non sapevo di

FileSelectDialog

Da quanto tempo è possibile?

 
Aleksey Vyazmikin #:

Da quanto tempo è in grado di farlo?

Da oltre 3,5 anni.

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

Oltre 3,5 anni.

Davvero. Non ho riscontrato alcun utilizzo.

 
Aleksey Vyazmikin #:

Infatti. Non ne ho riscontrato l'uso.

L'ho applicato io stesso in alcuni scenari(uno di questi). Non l'ho mai visto nemmeno a lato.

Библиотеки: Sequence - Пример советника, который убьет большинство VPS-катастрофы
Библиотеки: Sequence - Пример советника, который убьет большинство VPS-катастрофы
  • 2020.10.12
  • www.mql5.com
Больше 4 Gb памяти потребовал Терминал для запуска этих шести советников. что запускаете Терминал с висящими советниками в нем. На запуске советников удалось уменьшить потребление памяти Терминалом более. но сумел удержать Терминал от огромного потребления ОЗУ
 
OrderSendAsync può richiedere più di cinque secondi per essere eseguito.
 
fxsaber OrderSendAsync può richiedere più di cinque secondi.

???

come?

 
Maxim Kuznetsov #:

???

Che te ne pare?

Si misura la durata e si ottiene il risultato. Mi è successo con TRADE_ACTION_MODIFY.

Motivazione: