Массивы Bars_Bulls и Bars_Bears имеют нулевой размер (нет в них элементов). Поэтому любое обращение к их элементам приводит к выходу за пределы массива.
Перед использованием массивов необходимо задать их размер при помощи ArrayResize или путем связывания массива с буфером индикатора (SetIndexBuffer).
<Спасибо, кажется понял. В PHP полегче с массивами.
О! Походу кто подскажет, можно ли имя массива генерить динамически, что-то так:
string ArrName = "ИМЯ" + IntegerToString(123456789);
double &ArrName [ ][20];
ArrayResize( &ArrName, 10);
Какие варианты? А то не охота с бинарными файлами париться.
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Еще вчера индикатор отлично работал, рисовал линии себе. Сегодня заново скомпилировал - не работает. Линий не рисует, а ошибку выдает "array out of range".
Обычный себе код (примерно написано):
Ошибку говорит, на строке (Bars_Bulls[i] = 1;)
Почему это появляется, я не так работаю с массивами? Вчера еще все работало. Массивы всех стандартных индикаторов, кажется, так и написаны.