Ошибки, баги, вопросы - страница 2605

 

Я извиняюсь за маленький offtop

Igor Makanu:

процессором невозможно просадить линию БП 12В 

если БП неисправен, то не выдает в пике все номиналы (12,5, 3.3) то будут сбои по памяти, потом по процессору, а лишь уже потом по хардам, вентиляторам.... если есть видеокарта, она может начать сбоить если 12 В проседают, а вот чтобы первым просадку по 12 В почувствовал SSD, а остальные устройства без проблем работали... имхо, не бывает так,...хотя....сам думал на хард когда память засбоила, даже Вин7 не смог установить на хард под подозрением, на 30% установки писала не могу скопировать файл... а проблема оказалась в неисправной памяти

ЗЫ: про AIDA64 писал - делали?

Заменил я сейчас блок питания и не узнаю свой комп. Даже интернет стал быстрей. Чудеса.
 
Alexey Viktorov:

Я извиняюсь за маленький offtop

Заменил я сейчас блок питания и не узнаю свой комп. Даже интернет стал быстрей. Чудеса.

Вот и отлично.
Но ничего удивительного нет, блоки питания не вечные,
тем более без стабилизатора конденсаторы проседают быстро,  
в зависимости от качества БП, за год активного пользования могут запросто ушататься.

 

Надо подправить исходник(Math\Stat\Math.mqh) под последний билд, функция MathArctan2 с данными параметрами  уже лишняя:


 
Aliaksandr Hryshyn:

Надо подправить исходник(Math\Stat\Math.mqh) под последний билд, функция MathArctan2 с данными параметрами  уже лишняя:


Исправлено.

Через 2 часа будет доступна новая бета с исправлениями.

 
При вызове CopyTicksRange для истории, которой локально еще нет, функция с точки зрения вызывающего кода MQL5 "подвисает" на неопределенное время, в течение которого видно, как в папку тиков рабочей базы скачиваются файлы, а MQL5 программа при этом "ждет". Когда вся запрошенная история получена, "подвис" сам собой проходит, но как пользователю на этот период дать знать, что программа по факту работает? Есть ли способ получения процента выполнения процесса загрузки? История на несколько лет качается у меня несколько минут. Без наглядного фидбэка обычный пользователь плюнет и снесет программу, не дождавшись результата. Крутить тупые часики тоже не хотелось бы, не имея в MQL подтверждения, что загрузка реально идет.
 
Stanislav Korotky:
При вызове CopyTicksRange для истории, которой локально еще нет, функция с точки зрения вызывающего кода MQL5 "подвисает" на неопределенное время, в течение которого видно, как в папку тиков рабочей базы скачиваются файлы, а MQL5 программа при этом "ждет". Когда вся запрошенная история получена, "подвис" сам собой проходит, но как пользователю на этот период дать знать, что программа по факту работает? Есть ли способ получения процента выполнения процесса загрузки? История на несколько лет качается у меня несколько минут. Без наглядного фидбэка обычный пользователь плюнет и снесет программу, не дождавшись результата.

В КБ-решении Tester делал, вроде, такое. Не помню сути, по коду должно быть понятно. Через индикатор еще можно попробовать. Вроде, там не дожидается выполнения, если не готова история.

 
fxsaber:

В КБ-решении Tester делал, вроде, такое. Не помню сути, по коду должно быть понятно. Через индикатор еще можно попробовать. Вроде, там не дожидается выполнения, если не готова история.

Можно поточнее показать место, а то Tester-ов нашлось несколько? ;-)

Индикаторы не предоставляют прогресс расчета котировок под них - ну будет CopyBuffer все время возвращать один и тот же код ошибки - это ж ситуацию не проясняет.

 
Stanislav Korotky:

Можно поточнее показать место, а то Tester-ов нашлось несколько? ;-)

В этом файле

  static bool HistoryIsReady( const datetime tBeginTime, MqlTick &BeginTick )
  {
    MqlTick Ticks[1];
  
    ::ResetLastError();
  
    if (::CopyTicks(_Symbol, Ticks, COPY_TICKS_ALL, (ulong)tBeginTime * 1000, 1) == 1)
      BeginTick = Ticks[0];
  
    return(!::GetLastError() ||
           (!::TerminalInfoInteger(TERMINAL_CONNECTED) && 
           ((::CopyTicks(_Symbol, Ticks, COPY_TICKS_ALL, (ulong)(tBeginTime - 7 * 24 * 3600) * 1000, 1)) == 1) &&
           (Ticks[0].time < tBeginTime)));
  }

Индикаторы не предоставляют прогресс расчета котировок под них - ну будет CopyBuffer все время возвращать один и тот же код ошибки - это ж ситуацию не проясняет.

Другое имел в виду, но это не важно.

 

Вообще не понимаю что происходит.

   struct myPositionPrepare
   {
      ENUM_ORDER_TYPE      order_type;          // тип устанавливаемого ордера
      ENUM_POSITION_TYPE   position_type;       // тип устанавливаемого ордера
.................
   };
   myPositionPrepare       structPosPrep;       // подготовительная структура для открытия позиции/ордера
.
.
      structPosPrep.position_type         = PositionGetInteger(POSITION_TYPE); // implicit enum conversion

Что не так?

 
Сергей Таболин:

Вообще не понимаю что происходит.

Что не так?

long  PositionGetInteger()

тоже считаю этот момент неудобным: из enum в целочисленные типы и обратно можно бы и автоматом переводить, без принудительного

structPosPrep.position_type = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE);
Причина обращения: