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

 
Andrey Dik #:

bild 3323

Почему поведение индикаторов и советников отличается при инициализации?

При инициализации индикатора (первый запуск, смена любого input-параметра, смена TF-чарта) происходит сброс ВСЕХ глобальных переменных индикатора. С какой целью так сделано? Я понимаю сброс буферов индикаторов, но зачем сбрасывать глобальные переменные? Это чрезвычайно неудобно, так как нет возможности сохранять рабочую информацию в переменных.

При инициализации советника всё происходит как и ожидается, глобальные переменные остаются в сохранности.

Убедительная просьба к разработчикам, сделайте пожалуйста поведение индикаторов при инициализации так как в советниках.

Коды индикатора и советника в качестве доказательства:

Это поведение было всегда. И оно правильное, потому что это индикатор.

И такое поведение работает при смене таймфрема. Предпологается что для индикатора должно быть пересчитано все.

 
Vladimir Pastushak #:

Это поведение было всегда. И оно правильное, потому что это индикатор.

И такое поведение работает при смене таймфрема. Предпологается что для индикатора должно быть пересчитано все.

с чего это Вы решили, что такое поведение правильное? аргументации - 0.

если Вам нужно инициализировать глобальные переменные - можете это делать с удовольствием в OnInit (), но вот если же Вам понадобиться, наоборот, хранить какую то информацию в глобальных переменных (а глобальные переменные терминала не всегда могут спасти ситуацию если речь о достаточно больших массивах), то ничего поделать с этим не сможете!. и Да, это как раз таки Индикатор, в котором не допустимы никакие задержки, так как будет остановлен поток и варианты хранения переменных в файлах или где то ещё просто не допустимы, как раз согласно идеологии работы индикаторов в отличии от остальных типов программ.

 
Andrey Dik #:

с чего это Вы решили, что такое поведение правильное? аргументации - 0.

если Вам нужно инициализировать глобальные переменные - можете это делать с удовольствием в OnInit (), но вот если же Вам понадобиться, наоборот, хранить какую то информацию в глобальных переменных (а глобальные переменные терминала не всегда могут спасти ситуацию если речь о достаточно больших массивах), то ничего поделать с этим не сможете!. и Да, это как раз таки Индикатор, в котором не допустимы никакие задержки, так как будет остановлен поток и варианты хранения глобальных переменных в файлах или где то ещё просто не допустимы, как раз согласно идеологии работы индикаторов в отличии от остальных типов программ.

опыт работы: 9+ лет :)))
с добрым утром!
Все уже давно научились жить с этим. На форуме информации об этом вагон и маленькая вагонетка. 
 
Nikolai Semko #:
1. опыт работы: 9+ лет :)))
2. с добрым утром!
3. Все уже давно научились жить с этим. На форуме информации об этом вагон и маленькая вагонетка. 

1. Это типа тонкий подкол? не утруждайтесь ходить ко мне в профиль, живите своей жизнью)))

2. здрасте.

3. если вы давно и упорно входите в дом через окно аки муха, то это не значит что делаете правильно. люди входят в дом через дверь. напомню вам, есть специально предназначенная функция для инициализации OnInit (), в ней и должен программист инициализировать всё что ему нужно. а всё, что делается без ведома программиста и без его согласия - зло!

 
Andrey Dik #:

1. Это типа тонкий подкол? не утруждайтесь ходить ко мне в профиль, живите своей жизнью)))

2. здрасте.

3. если вы давно и упорно входите в дом через окно аки муха, то это не значит что делаете правильно. люди входят в дом через дверь. напомню вам, есть специально предназначенная функция для инициализации OnInit (), в ней и должен программист инициализировать всё что ему нужно. а всё, что делается без ведома программиста и без его согласия - зло!

Извините, огромная просьба, можете скинуть мне bild 3323, спасибо.

 
Vasile Verdes #:

Извините, огромная просьба, можете скинуть мне bild 3323, спасибо.

конечно.

ЗЫ. у Вас в настройках установлено разрешение на получение сообщений только от друзей.
 
Oleksandr Nozemtsev #:

ArraySortStruct2(Rates, high) - это mql5?

Да.

А как в 4й версии отсортировать по хаям? 

Надо либо менять mql5-редакцию, либо брать альтернативные реализации в той ветке.

 
Nikolai Semko #:
Все уже давно научились жить с этим. На форуме информации об этом вагон и маленькая вагонетка. 
Научились костылить код? Это неправильно.
Я тоже считаю, что сброс переменных глобального уровня это - зло.
 
Sergey Gridnev #:
Научились костылить код? Это неправильно.
Я тоже считаю, что сброс переменных глобального уровня это - зло.

Индикатор при смене таймфрейма полностью перезапускается. Переменные не сбрасываются. Это абсолютно новый экземпляр индикатора запускается. А прошлый - удаляется с графика.

 
Пользоваться тем, что глобальные переменные не сбрасываются - вот это костыль. Неужели этим кто-то пользуется?