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

 
кстати имеют ли влияние на время в датах висиокосные секунды(секунды координации)?
 

Итак, ситуация такая: имеется структура даты, из нее на одном из этапов вычитаются либо дни либо часы либо минуты либо месяцы(ну или прибавляются), в итоге получаются отрицательные значения типа -335.05.2012 00:-615:00(или в случае прибавления 650 января 360 часов 250 минут) . Их нужно преобразовать в норм дату. Вот пока что придумал такое

void ReconstructTimeStruct(MqlDateTime &sTime)
  {
   while(sTime.min<0)
     {
      sTime.min=59-fabs(sTime.min);
      sTime.hour--;
     }
   while(sTime.min>=60)
     {
      sTime.min=sTime.min-60;
      sTime.hour++;
     }

   while(sTime.hour<0)
     {
      sTime.hour=23-fabs(sTime.hour);
      sTime.day--;
     }
   while(sTime.hour>=24)
     {
      sTime.hour=sTime.hour-24;
      sTime.day++;
     }

   while(sTime.day<1)
     {
      if(sTime.mon>1)
        {
         sTime.mon--;
         sTime.day=GetDaysInMonthByMonthAndYear(sTime.mon,sTime.year)-fabs(sTime.day); //GetDaysInMonthByMonthAndYear получает количество дней в месяце с учетом  месяца и високосный ли год
        }
      else
        {
         sTime.mon=12;
         sTime.year--;
         sTime.day=GetDaysInMonthByMonthAndYear(sTime.mon,sTime.year)-fabs(sTime.day);
        }
     }
   while(sTime.day>GetDaysInMonthByMonthAndYear(sTime.mon,sTime.year))
     {
      if(sTime.mon<12)
        {
         sTime.mon++;
         sTime.day=sTime.day-GetDaysInMonthByMonthAndYear(sTime.mon,sTime.year);
        }
      else
        {
         sTime.mon=1;
         sTime.year++;
         sTime.day=sTime.day-GetDaysInMonthByMonthAndYear(sTime.mon,sTime.year);
        }
     }
   while(sTime.mon<1)
     {
      sTime.year--;
      sTime.mon=12-fabs(sTime.mon);
     }
   while(sTime.mon>12)
     {
      sTime.year++;
      sTime.mon=sTime.mon-12;
     }
  }

 вобщем не знаю либо я дурак либо лыжи не летают. иногда случаются зацикливания и на месяце работа некорректная.

может кто подскажет в чем косяк?

или же кто то подскажет алгоритм  поиска времени открытия свечи по дате, в том числе не сформированной свечи, с возможностью шифтинга(0-текущая свеча, -1 - свеча слева, 1 - свеча справа)? 

 
leksiq: Не знаю, как сообщить разработчикам об ошибке, попробую здесь...
У Вас в профиле есть раздел СервисДеск.
 
Urain:

Именно, но я бы сделал по другому... так если условие сошлось то следующую проверку уже делать не нужно.

Большая часть годов выйдет по первой проверке как false,

Вообще нормальный компилятор если первое условие false - остальные && проверять не станет 

правда не знаю как с этим у МE5 

 
papaklass:

Сервис "Хранилище" планируют создавать для четверки?

Присоединяюсь к вопросу - не исключено, что 4-ка еще и 5-ку переживет - это как XP и VISTA
 
A100:

Вообще нормальный компилятор если первое условие false - остальные && проверять не станет 

правда не знаю как с этим у МE5 

Так же.  Короткие проверки условий.

// В четвёрке длинные (полные)

 
MetaDriver:

// В четвёрке длинные (полные)

Тогда ясно откуда ноги растут
 

MetaTrader 5 Client Terminal build 712

[...]

8. Terminal: Сигналы. Исправлено отображение информации о сигнале и зависание навигации между сигналами при работе под Wine.

[...]

Что-то в терминале сломали в последней сборке. Теперь через несколько секунд после старта он сам по себе виснет напрочь ( pipe wait ) и убивается только через системный монитор. Сборки 695 и 705 работали небезупречно, но в целом нормально. ОС linux mint 12 ( lisa ), wine-1.4. Лог терминала ОС в прицепе. Может, чем поможет. Сам терминал МТ никаких логов не оставляет -- после умерщвления через монитор папки логов пустые.

Хотелось бы видеть обновляж всё же с возможностью отключения, например, через ключ командной строки вроде '/noupdate'. Тогда хоть как-то можно будет работать до очередного косяка.

Файлы:
crash9log.zip  2 kb
 

OnTesterInit

Функция OnTesterInit() является обработчиком события TesterInit, которое автоматически генерируется перед началом оптимизации эксперта в тестере стратегий.

Так эта функция вызывается только при Оптимизация=CustomMax ?

Я сначала подумал из описания, что она вообще всегда из тестера вызывается... жаль, что это не так...

 
Roffild:

OnTesterInit

Функция OnTesterInit() является обработчиком события TesterInit, которое автоматически генерируется перед началом оптимизации эксперта в тестере стратегий.

Так эта функция вызывается только при Оптимизация=CustomMax ?

Я сначала подумал из описания, что она вообще всегда из тестера вызывается... жаль, что это не так...

Что означает Оптимизация=CustomMax ? 

И опишите, чего Вам не хватает. Что бы Вы хотели получить? 

Причина обращения: