Новая версия платформы MetaTrader 5 build 3660: Улучшения и исправления - страница 15

 
MetaQuotes #:

Добавили новый показатель  STAT_COMPLEX_CRITERION в  разлел Статистика тестирования , будет в следующей бете версии.

Изменятся tst/opt-форматы?

 
fxsaber #:

Изменятся tst/opt-форматы?

Нет
 
MetaQuotes #:

Добавили новый показатель  STAT_COMPLEX_CRITERION в  разлел Статистика тестирования , будет в следующей бете версии.

Большое спасибо!
 

Увеличьте, пожалуйста, размер текста, который можно разместить в объект OBJ_EDIT. Сейчас помещается только 64 символа.

Хорошо бы начать от 1024 символов.

 
А можете сделать в SQLite для функций Upper и Lower поддержку кирилицы?
 
Из свернутого положения терминалы нельзя максимизировать CNTRL + 1-2 
 
Aliaksandr Hryshyn #:

Увеличьте, пожалуйста, размер текста, который можно разместить в объект OBJ_EDIT. Сейчас помещается только 64 символа.

Хорошо бы начать от 1024 символов.

вообще было-бы хорошо многострочный ввод и/или с валидацией (хотя-бы элементарной - целые/double в пределах от и до) 

 
Maxim Kuznetsov #:

вообще было-бы хорошо многострочный ввод и/или с валидацией (хотя-бы элементарной - целые/double в пределах от и до) 

Согласен, тоже нужно

 
Aliaksandr Hryshyn #:

Увеличьте, пожалуйста, размер текста, который можно разместить в объект OBJ_EDIT. Сейчас помещается только 64 символа.

Хорошо бы начать от 1024 символов.

+++
 

5.00 build 3661 25 Mar 2023

Maybe it's a bug?

Print("max - min vs 1: ", MathMax(DBL_MIN, 1));

Print("max - min vs 0: ", MathMax(DBL_MIN, 0));

2023.04.19 15:55:37.101 testq (EURUSD,D1) max - min vs 1: 1.0

2023.04.19 15:55:37.101 testq (EURUSD,D1) max - min vs 0: 2.2250738585072014e-308

the code above was run in a simple test script

here is the full test script

   Print("max - min vs min: ", MathMax(DBL_MIN, DBL_MIN));

   Print("max - min vs max: ", MathMax(DBL_MIN, DBL_MAX));

   Print("max - min vs 1: ", MathMax(DBL_MIN, 1));

   Print("max - min vs 0: ", MathMax(DBL_MIN, 0));

   PrintFormat("formatted DBL_MIN: %.2f", DBL_MIN);

   

   const double d1 = DBL_MIN;

   const double d2 = 0;

   Print("DBL_MIN == 0?", d1==d2);

and output

2023.04.19 16:05:33.670 testq (EURUSD,D1) max - min vs min: 2.2250738585072014e-308

2023.04.19 16:05:33.670 testq (EURUSD,D1) max - min vs max: 1.7976931348623157e+308

2023.04.19 16:05:33.670 testq (EURUSD,D1) max - min vs 1: 1.0

2023.04.19 16:05:33.670 testq (EURUSD,D1) max - min vs 0: 2.2250738585072014e-308

2023.04.19 16:05:33.670 testq (EURUSD,D1) formatted DBL_MIN: 0.00

2023.04.19 16:05:33.670 testq (EURUSD,D1) DBL_MIN == 0?false



however I had same problems in my real code

somehow when I printed using %.2f in my real code with StringFormat() using a variable assigned to DBL_MIN, I got this number printed out:

179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368.00 

which is a really, really long number.

However I can't figure out any test code to replicate that.

In MT4 4.00 1380 Mar 24 2023, I get incorrect results also:

2023.04.19 16:12:24.865 testq USDCHF,H4: DBL_MIN == 0?false

2023.04.19 16:12:24.865 testq USDCHF,H4: formatted DBL_MIN: 0.00

2023.04.19 16:12:24.865 testq USDCHF,H4: max - min vs 0: 2.225073858507201e-308

2023.04.19 16:12:24.865 testq USDCHF,H4: max - min vs 1: 1.0

2023.04.19 16:12:24.865 testq USDCHF,H4: max - min vs max: 1.797693134862316e+308

2023.04.19 16:12:24.865 testq USDCHF,H4: max - min vs min: 2.225073858507201e-308



my workaround code


double MathMax_DBL(double value1, double value2) {
  if (value1 == DBL_MIN) return value2;
  if (value2 == DBL_MIN) return value1;
  return MathMax(value1, value2);
}


I did not test to see if other datatypes like long or int have this problem