Ошибка в описании серийности буфера после SetIndexBuffer
Проблема
В справке для SetIndexBuffer (MQL4) указано:
После связывания динамический массив buffer[] будет иметь индексацию как в обычных массивах, даже если для связываемого массива будет предварительно установлена индексация как в таймсериях.
На самом деле индексация будет принудительно изменена на серийную.
Баг древний, в СД давно лежал, всем пофиг.
Решение
Учитывать это в кросс-платформенном коде явно, либо всегда после SetIndexBuffer менять индексацию буфера на обычную в 4, либо на серийную в 5 (в 5 этот кусок справки отражает действительность, вероятно оттуда бездумно скопипастили). Сделать обёртку, функцию или макрос, для привязки буфера.