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

HistoryOrderGetTicket, PositionGetTicket, OrderGetTicket - 類似しています。

 
このようなリマインダーを作っておくと便利なことがある。
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

Finish "をダブルクリックすると、正しい場所に直行します。

 
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年半以上です。

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

本当に。使ったことはない。

 
Aleksey Vyazmikin #:

確かに。まだ使ったことがない。

私自身、いくつかのシナリオで適用した そのうちの1 つ)。サイドでも遭遇したことはない。

Библиотеки: Sequence - Пример советника, который убьет большинство VPS-катастрофы
Библиотеки: Sequence - Пример советника, который убьет большинство VPS-катастрофы
  • 2020.10.12
  • www.mql5.com
Больше 4 Gb памяти потребовал Терминал для запуска этих шести советников. что запускаете Терминал с висящими советниками в нем. На запуске советников удалось уменьшить потребление памяти Терминалом более. но сумел удержать Терминал от огромного потребления ОЗУ
 
OrderSendAsyncの 実行には5秒以上かかることがある。
 
fxsaber OrderSendAsyncの 実行に5秒以上かかることがある。

???

どのように?

 
Maxim Kuznetsov #:

???

どうだ?

時間を測って結果を出す。TRADE_ACTION_MODIFYで こんなことがありました。

理由: