Не хватает буферов для расчета

 
Добрый день
Хочу сделать индикатор, вычисляющий по некой формуле переменную на основе нескольких Custom-формул. Каждая формула использует отдельный массив для хранения рассчитанных значений. Эти массивы я описываю как

SetIndexBuffer(0,ArrayBuffer1);



В результате массив ArrayBuffer1 определяется длиной равной Bars

Так вот столкнулся с тем, что IndicatorBuffers не может быть более 8. Можно ли определить скажем многомерные массивы с применением SetIndexBuffer ?
Например сделать его четырехмерным (согласно вашей документации) таким образом, чтобы одно из измерений автоматически приняло бы размерность равной Bars - это решило бы проблему - я бы ттуда посчитал значения четырех формул для каждого бара

Сделать часть расчетов в отдельном индикаторе, а потом дергать его через iCustom не хочу - в MQL2 с этой функцией были связаны сплошные тормоза и зависания, с тех пор у меня к этому решению недоверие :-) Отдельно сочинять расчет в DLL - конечно же вариант, но хотелось бы все-таки как-то выкрутиться оригинальным решением

 
Похоже, что создается стандартное заблуждение с буферами индикаторов.
8 указанных буферов - это _отображаемые_ буферы, а не только расчетные. Эти автоматические (размеры автоматически подстраиваются) буферы были введены нами для ускорения вывода графиков. Можно напрямую писать в этот буфер и все будет отображено на экране.

Некоторые думают, что 8 буферов - это все что доступно индикаторам. Но никто не запрещает для временных расчетов (именно расчетов без автоматического отображения на графике) использовать локальные массивы. Только не забывайте их ресайзить перед употреблением.
 
Ренат, спасибо

Действительно похоже что это стандартное заблуждение. Было бы очень хорошо сделать разъяснение в мануале в разделах описания SetIndexBuffer и раздела объявлений массивов о том, что-де массивы для расчетов независят от массивов для отображения
Причина обращения: