Что нужно сказать: такое бывает и это так же из за каких-то косяков с котировками или это я что-то не так написал?
Вы хотите от меня услышать, что тестер МТ4 работает не корректно? - не услышите, Ваш скрин с ошибками генерации тиков или баров - тестер все сгенерирует из любого возможного младшего ТФ
на такие вопросы как Ваш - разработчики отвечали всегда - пишите коды правильно!
как писать я показал пример, как Вы пишете свой код.... да не видно, да и не интересно уже ))) - занят, читал статьи, займусь своими кодами
Вы хотите от меня услышать, что тестер МТ4 работает не корректно? - не услышите, Ваш скрин с ошибками генерации тиков или баров - тестер все сгенерирует из любого возможного младшего ТФ
на такие вопросы как Ваш - разработчики отвечали всегда - пишите коды правильно!
как писать я показал пример, как Вы пишете свой код.... да не видно, да и не интересно уже ))) - занят, читал статьи, займусь своими кодами
Добрый день, товарищи. Учусь писать простенькие вещи на mql4, сейчас пытаюсь работать с массивами. не могу понять ошибку в этом куске кода:
double d1 = NormalizeDouble(Low[iLowest(NULL, 0, MODE_LOW, MaxLimit, 0)],4);
double d2 = NormalizeDouble(High[iHighest(NULL, 0, MODE_HIGH, MaxLimit, 0)],4);
double CrossBarsNum[][2];
for (double d = d1; d <= d2; d += 0.0001)
{
double a = 0.0;
for(int i = 0; i < MaxLimit; i++)
if(d > Low[i] && d < High[i])
a+=1;
CrossBarsNum[(d-d1)/0.0001,0] = d;
CrossBarsNum[(d-d1)/0.0001,1] = a;
ругается на последние две строчки с формулировкой integer expression expected. Насколько я понял, индекс в массиве можно задавать при помощи формулы. Здесь она нужна для перебора строчек массива и последовательной записи в них котировок и количества баров, в которых такая котировка содержалась. Формула выдаёт целочисленное значение (от 0 и выше с шагом в единицу), так в чём же ошибка?
Добрый день, товарищи. Учусь писать простенькие вещи на mql4, сейчас пытаюсь работать с массивами. не могу понять ошибку в этом куске кода:
ругается на последние две строчки с формулировкой integer expression expected. Насколько я понял, индекс в массиве можно задавать при помощи формулы. Здесь она нужна для перебора строчек массива и последовательной записи в них котировок и количества баров, в которых такая котировка содержалась. Формула выдаёт целочисленное значение (от 0 и выше с шагом в единицу), так в чём же ошибка?
Индекс массива сделайте типа int, а не double. Индекс массива должен быть целым числом.
Спасибо! Я приблизительно всегда так и делал. После загрузки нажимал "Обновить" - котировки отличались. А по поводу того, что сделки не открывались, это я натупил - забыл, что поставил временное ограничение работы для робота... :)
Добрый день, товарищи. Учусь писать простенькие вещи на mql4, сейчас пытаюсь работать с массивами. не могу понять ошибку в этом куске кода:
ругается на последние две строчки с формулировкой integer expression expected. Насколько я понял, индекс в массиве можно задавать при помощи формулы. Здесь она нужна для перебора строчек массива и последовательной записи в них котировок и количества баров, в которых такая котировка содержалась. Формула выдаёт целочисленное значение (от 0 и выше с шагом в единицу), так в чём же ошибка?
Azat0t: Спасибо, ошибку исправил, но результата всё равно нет: массив не заполняется. С чем это может быть связано? переменные d, d1, d2 срабатывают точно
У вас всегда размер массива нулевой в первом измерении. Я не увидел нигде ArrayResize()
Azat0t: Спасибо, ошибку исправил, но результата всё равно нет: массив не заполняется. С чем это может быть связано? переменные d, d1, d2 срабатывают точно
Не забывайте ставить
#property strict
Исправьте все ошибки и может быть всё получится. Научитесь пользоваться отладчиком. С пошаговым выполнением все проблемы выявляются.
Что нужно сказать: такое бывает и это так же из за каких-то косяков с котировками или это я что-то не так написал?
Вы хотите от меня услышать, что тестер МТ4 работает не корректно? - не услышите, Ваш скрин с ошибками генерации тиков или баров - тестер все сгенерирует из любого возможного младшего ТФ
на такие вопросы как Ваш - разработчики отвечали всегда - пишите коды правильно!
как писать я показал пример, как Вы пишете свой код.... да не видно, да и не интересно уже ))) - занят, читал статьи, займусь своими кодами
Вы хотите от меня услышать, что тестер МТ4 работает не корректно? - не услышите, Ваш скрин с ошибками генерации тиков или баров - тестер все сгенерирует из любого возможного младшего ТФ
на такие вопросы как Ваш - разработчики отвечали всегда - пишите коды правильно!
как писать я показал пример, как Вы пишете свой код.... да не видно, да и не интересно уже ))) - занят, читал статьи, займусь своими кодами
Ок! Спасибо
Ок! Спасибо
Может пригодится: https://www.mql5.com/ru/forum/165405#comment_5602248
Добрый день, товарищи. Учусь писать простенькие вещи на mql4, сейчас пытаюсь работать с массивами. не могу понять ошибку в этом куске кода:
ругается на последние две строчки с формулировкой integer expression expected. Насколько я понял, индекс в массиве можно задавать при помощи формулы. Здесь она нужна для перебора строчек массива и последовательной записи в них котировок и количества баров, в которых такая котировка содержалась. Формула выдаёт целочисленное значение (от 0 и выше с шагом в единицу), так в чём же ошибка?
Добрый день, товарищи. Учусь писать простенькие вещи на mql4, сейчас пытаюсь работать с массивами. не могу понять ошибку в этом куске кода:
ругается на последние две строчки с формулировкой integer expression expected. Насколько я понял, индекс в массиве можно задавать при помощи формулы. Здесь она нужна для перебора строчек массива и последовательной записи в них котировок и количества баров, в которых такая котировка содержалась. Формула выдаёт целочисленное значение (от 0 и выше с шагом в единицу), так в чём же ошибка?
Индекс массива сделайте типа int, а не double. Индекс массива должен быть целым числом.
Может пригодится: https://www.mql5.com/ru/forum/165405#comment_5602248
Добрый день, товарищи. Учусь писать простенькие вещи на mql4, сейчас пытаюсь работать с массивами. не могу понять ошибку в этом куске кода:
ругается на последние две строчки с формулировкой integer expression expected. Насколько я понял, индекс в массиве можно задавать при помощи формулы. Здесь она нужна для перебора строчек массива и последовательной записи в них котировок и количества баров, в которых такая котировка содержалась. Формула выдаёт целочисленное значение (от 0 и выше с шагом в единицу), так в чём же ошибка?
Пользуйтесь явным преобразованием типов
Спасибо, ошибку исправил, но результата всё равно нет: массив не заполняется. С чем это может быть связано? переменные d, d1, d2 срабатывают точно
Спасибо, ошибку исправил, но результата всё равно нет: массив не заполняется. С чем это может быть связано? переменные d, d1, d2 срабатывают точно
Не забывайте ставить
Исправьте все ошибки и может быть всё получится. Научитесь пользоваться отладчиком. С пошаговым выполнением все проблемы выявляются.