Новая версия платформы MetaTrader 5 build 5200: расширение OpenBLAS и усиление контроля в MQL5 - страница 14

 
fxsaber #:
Специально для отладки сделать вызов индикатора B в индикаторе A. Наверное, уже пробовали.

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

 
Edgar Akhmadeev #:

Посмотрите программу Warp

Кажется, там даёте доступ к своим папкам с кодом. И есть разные модели, включая Claude.

Хм... Спасибо, Эдгар. Изучу. 

 
Stanislav Korotky #:

Я как раз уточнил начальную неудачную формулировку, что не надо на этих ячейках ничего менять/сглаживать/вычислять. Сейчас они участвуют в расчетах и выдают тот самый inf, хотя на самом деле там пропуск данных.

сейчас они (EMPTY_VALUE) участвуют в расчётах просто как double пусть и самый большой. Inf получается уже в результате расчётов и не всегда. Если бы всегда это полбеды - можно проверить Inf и понять что что-то не так. Но на выходе просто произвольный мусор

наличие EMPTY_VALUE в данных превращает все штатные индикаторы в тыкву. На это и раньше указывалось, но разработчики считают что это фича такая. 

 
По сути, результатом любого математического действия с EMPTY_VALUE должно быть EMPTY_VALUE. Но разработчики MQL почему-то так не считают 
 
Sergey Gridnev #:
По сути, результатом любого математического действия с EMPTY_VALUE должно быть EMPTY_VALUE. Но разработчики MQL почему-то так не считают 

EMPTY_VALUE - это DBL_MAX. Почему DBL_MAX - 100 должно быть DBL_MAX ?

EMPTY_VALUE - условное "пустое" значение для индикаторов. Контролируйте расчёты при написании индикаторов.

 
Artyom Trishkin #:
EMPTY_VALUE - это DBL_MAX. Почему DBL_MAX - 100 должно быть DBL_MAX ?
Потому, что EMPTY_VALUE не должно быть DBL_MAX.
 
Maxim Kuznetsov #:

сейчас они (EMPTY_VALUE) участвуют в расчётах просто как double пусть и самый большой. Inf получается уже в результате расчётов и не всегда. Если бы всегда это полбеды - можно проверить Inf и понять что что-то не так. Но на выходе просто произвольный мусор

наличие EMPTY_VALUE в данных превращает все штатные индикаторы в тыкву. На это и раньше указывалось, но разработчики считают что это фича такая. 

Не вижу проблем. В индикаторах должно быть значение, которое является "пустым", но при этом валидным. Вполне логично, что это самое большое DBL.  Почему EMPTY_VALUE не должно быть DBL_MAX? Где DBL_MAX может активно использоваться так, что это будет мешать отображению индикаторов, где нужен EMPTY_VALUE? 

 
Georgiy Merts #:
Почему EMPTY_VALUE не должно быть DBL_MAX?
Потому что https://www.mql5.com/ru/forum/492248/page14#comment_57792321
 
fxsaber #:
b5214, с неявным конструктором беда.

Почему взята и третья сигнатура - загадка.

Строка для поискаOshibka 141.

Спасибо за сообщение!

Поправил код определения наличия пользовательского конструктора копий - добавил учёт дополнительных параметров со значениями по умолчанию.

 
Georgiy Merts #:

Не вижу проблем. В индикаторах должно быть значение, которое является "пустым", но при этом валидным. Вполне логично, что это самое большое DBL.  Почему EMPTY_VALUE не должно быть DBL_MAX? Где DBL_MAX может активно использоваться так, что это будет мешать отображению индикаторов, где нужен EMPTY_VALUE? 

я (и кстати никто тут) не говорил что EMPTY_VALUE не должно быть DBL_MAX; ровно как и никто не оспаривал полезность спец.значения обозначающего в индикаторах "нету ничего, пропуск данных, не рисовать"

проблема в том что "спец.значение" которым является EMPTY_VALUE в штатных функциях и индикаторах не интерпретируется никак, так и принимается за double и над ним производятся вычисления.

Пропуск в данных обозначаемый EMPTY_VALUE порождает дичайший мусор. 

К сведению модераторов EMPTY_VALUE - 100.0 даёт не ту величину на которую вы рассчитываете.