mql5 언어의 특징, 미묘함 및 작업 방법 - 페이지 233

 
몇 가지.

트레이딩, 자동매매 시스템 및 트레이딩 전략 테스트에 관한 포럼

오류, 버그, 질문

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));
  }
}

트레이딩, 자동매매 시스템 및 트레이딩 전략 테스트에 관한 포럼

버그, 버그, 질문

fxsaber, 2023.07.19 18:55

히스토리오더겟티켓, 포지션겟티켓, 주문겟티켓 - 유사.

 
때로는 이러한 알림을 만드는 것이 유용할 때가 있습니다.
void Func()
{
  int Доделать;
}
그러면 컴파일러가 알려줍니다.
variable 'Доделать' not used    Test5-3.mq5     516     7
code generated          1       1
0 errors, 1 warnings, 241 msec elapsed, cpu='X64 Regular'               1       2

"마침"을 두 번 클릭하면 올바른 위치로 바로 이동합니다.

 
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 #:
파일 선택 대화 상자

와, 몰랐네요.

FileSelectDialog

언제부터 가능했나요?

 
Aleksey Vyazmikin #:

얼마나 오랫동안 그렇게 할 수 있었나요?

3.5년이 넘었습니다.

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

3.5년 이상.

정말입니다. 한 번도 사용한 적이 없습니다.

 
Aleksey Vyazmikin #:

그렇습니다. 아직 사용해보지 못했습니다.

몇 가지 시나리오에 직접 적용했습니다(그 중 하나 ). 측면에서도 본 적이 없습니다.

Библиотеки: Sequence - Пример советника, который убьет большинство VPS-катастрофы
Библиотеки: Sequence - Пример советника, который убьет большинство VPS-катастрофы
  • 2020.10.12
  • www.mql5.com
Больше 4 Gb памяти потребовал Терминал для запуска этих шести советников. что запускаете Терминал с висящими советниками в нем. На запуске советников удалось уменьшить потребление памяти Терминалом более. но сумел удержать Терминал от огромного потребления ОЗУ
 
주문 전송 동기화는 실행하는 데 5초 이상 걸릴 수 있습니다.
 
fxsaber 주문 전송 동기화는 실행하는 데 5초 이상 걸릴 수 있습니다.

???

어떻게?

 
Maxim Kuznetsov #:

???

어때요?

지속 시간을 측정하고 결과를 얻습니다. TRADE_ACTION_MODIFY에서 이런 일이 발생했습니다.