Каково оптимальное с точки зрения юзабилити и средней востребованности количество буферов обобщенного индикатора? - страница 2

 

Какой смысл в сотнях буфферов для отображения ?  Человек реально может воспринимать не более десятка индикаторых контролов.

Много буфферов может потребоваться в промежуточных расчетах - но там - никто не мешает их сделать хоть тысячу - лишь бы памяти хватило, да быстродействия для обработки...

 
Stanislav Korotky:

Количество индикаторных буферов не ограничено. Для индикаторов, написанных в обобщенном стиле (например, многовалютных, многопериодных), ничто не мешает поставить в коде произвольное максимальное количество буферов. Насколько мне известно, MQL пока не позволяет задавать количество буферов динамически, как входной параметр, что сняло бы данный вопрос.

Сейчас же получается, что разработчик должен выбрать некий лимит. Если выбрать достаточно большое число, это скажется на бесполезном потреблении памяти (для тех буферов, которые не будут использованы большинством пользователей), захламлении линиями чарта, разрастании строк в окне Обзора Данных.

Каково на ваш взгляд оптимальное число буферов? Речь про видимые буфера, а не про начинку.

Разве память без вызова SetIndexBuffer выделяется?

Можно задать #property indicator_buffers 512, а в коде только "включать" нужные буферы (в том числе, для отображения в окне данных).

 
Andrey Khatimlianskii:

Разве память без вызова SetIndexBuffer выделяется?

Можно задать #property indicator_buffers 512, а в коде только "включать" нужные буферы (в том числе, для отображения в окне данных).

Насчет выделения памяти - точно не могу сказать, но в окне Обзора Данных даже если нет вызова SetIndexBuffer выводится заданное в директиве количество буферов (по крайней мере в МТ4, вопрос для обеих платформ).

 
Dmitry Fedoseev:

Можно сделать выключатели отображения буферов

Как?

 
Stanislav Korotky:

Насчет выделения памяти - точно не могу сказать, но в окне Обзора Данных даже если нет вызова SetIndexBuffer выводится заданное в директиве количество буферов (по крайней мере в МТ4, вопрос для обеих платформ).

Память легко проверить.

А из окна данных можно скрыть (PLOT_SHOW_DATA в 5ке и SetIndexLabel( 0, NULL ) в 4ке).

Надо только убедиться, что это сработает.

 
Andrey Khatimlianskii:

А из окна данных можно скрыть (PLOT_SHOW_DATA в 5ке и SetIndexLabel( 0, NULL ) в 4ке).

Надо только убедиться, что это сработает.

Работает. Спасибо.

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