Вопрос, что я делаю не так? Массивы (СТАТИЧЕСКИЕ) заполняются, а расчет дает 0 (ноль). Подскажите , чего нет у меня в коде. Почему элементы массива не сравнивается и не складываются?... Спасибо
double Open[60],High[60],Lo[60,Close[60]; int to_copy=60;
Вопрос, что я делаю не так? Массивы (СТАТИЧЕСКИЕ) заполняются, а расчет дает 0 (ноль). Подскажите , чего нет у меня в коде. Почему элементы массива не сравнивается и не складываются?... Спасибо
1) В цикле есть выход за рамки массива - если размер буфера 60, то последний индекс будет 59, так как первым индексом является 0
2) Код не полный - например как определяется Tf и чем был инициализирован candle?
* при копировании цен индексация смещается на единицу, так как вы копируете 60 элементов начиная с первого индекса, то есть цены первого закрытого бара уже будут под индексом 0
В справке написано - "Проверяет принудительное завершение работы mql5-программы". То есть она как бы "смотрит" на какое-то количество строк кода вперёд и проверят корректность всего что угодно? Как устанавливается область её ответственности (например на строку или 10 строк)?
Я думал что она только не позволяет циклу выйти за рамки массива, но я увидел её ещё в коде FAMA перед копированием цен High и Low
В справке написано - "Проверяет принудительное завершение работы mql5-программы". То есть она как бы "смотрит" на какое-то количество строк кода вперёд и проверят корректность всего что угодно? Как устанавливается область её ответственности (например на строку или 10 строк)?
Я думал что она только не позволяет циклу выйти за рамки массива, но я увидел её ещё в коде FAMA перед копированием цен High и Low
Никуда она не смотрит... Там же всё чётко написано. Проверяет флаг... Перечитайте.
Возвращает true, если в системной переменной _StopFlag содержится значение, отличное от 0. Ненулевое значение записывается в переменную _StopFlag, если поступила команда завершить...
В справке написано - "Проверяет принудительное завершение работы mql5-программы". То есть она как бы "смотрит" на какое-то количество строк кода вперёд и проверят корректность всего что угодно? Как устанавливается область её ответственности (например на строку или 10 строк)?
Я думал что она только не позволяет циклу выйти за рамки массива, но я увидел её ещё в коде FAMA перед копированием цен High и Low
если происходит остановка MQL-программы, то будет выставлен флаг _StopFlag , который можно проверить как используя предопределенную переменную так и ф-цию IsStopped() - разницы нет, что удобно то и используйте
после выставления флага _StopFlag , MQL-программе дается незначительное время на остановку, затем терминал принудительно выгрузит ее
самое распростаренненое исполльзование - зацикленные скрипты, пишется не
while(true)
{
...
}
а лучше написать так:
while(!IsStopped())
{
...
}
ну бывает еще в затратных расчетах или в больших в циклах используют
1) В цикле есть выход за рамки массива - если размер буфера 60, то последний индекс будет 59, так как первым индексом является 0
2) Код не полный - например как определяется Tf и чем был инициализирован candle?
* при копировании цен индексация смещается на единицу, так как вы копируете 60 элементов начиная с первого индекса, то есть цены первого закрытого бара уже будут под индексом 0
СПАСИБО за ответ. Полный код. Увеличил статический размер массива. Запись контроля нуля в операторах убрал... Общая "болванка". Пока хочу понять ПОЧЕМУ НЕ СЧИТАЕТ сложение. Чего теперь в моем коде нет? Спасибо за подсказки. Со статическими массивами в mql5 еще не работал.....
Допускается объявление не более чем 4-мерного массива. При объявлении динамического массива (массива с неуказанным значением в первой паре квадратных скобок) компилятор автоматически создает переменную указанной выше структуры (объект динамического массива) и обеспечивает код для правильной инициализации. Статические массивы При явном...
Полный код. Увеличил статический размер массива. Запись контроля нуля в операторах убрал... Общая "болванка". Пока хочу понять ПОЧЕМУ НЕ СЧИТАЕТ сложение. Чего теперь в моем коде нет? Спасибо за подсказки. Со статическими массивами в mql5 еще не работал.....
Допускается объявление не более чем 4-мерного массива. При объявлении динамического массива (массива с неуказанным значением в первой паре квадратных скобок) компилятор автоматически создает переменную указанной выше структуры (объект динамического массива) и обеспечивает код для правильной инициализации. Статические массивы При явном...
СПАСИБО за ответ. Полный код. Увеличил статический размер массива. Запись контроля нуля в операторах убрал... Общая "болванка". Пока хочу понять ПОЧЕМУ НЕ СЧИТАЕТ сложение. Чего теперь в моем коде нет? Спасибо за подсказки. Со статическими массивами в mql5 еще не работал.....
КОД ОБНОВИЛ . Вопрос тот же...
Я с индикаторами на ВЫ, но это просто лишнее. Это уже есть )))
intOnCalculate(constint rates_total,
constint prev_calculated,
constdatetime &time[],
constdouble &open[],
constdouble &high[],
constdouble &low[],
constdouble &close[],constlong &tick_volume[],
constlong &volume[],
constint &spread[])
{
//+------------------------------------------------------------------+//| Поиск события и установка меток на графике |//+------------------------------------------------------------------+if(CopyOpen(NULL,PERIOD_H4,0,to_copy,Open)<to_copy)
return(0);
if(CopyHigh(NULL,PERIOD_H4,0,to_copy,High)<to_copy)
return(0);
if(CopyLow(NULL,PERIOD_H4,0,to_copy,Low)<to_copy)
return(0);
if(CopyClose(NULL,PERIOD_H4,0,to_copy,Close)<to_copy)
return(0);int indexmass=ArraySize(Open);
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Доброго всем интернета и здоровья.
Вопрос, что я делаю не так? Массивы (СТАТИЧЕСКИЕ) заполняются, а расчет дает 0 (ноль). Подскажите , чего нет у меня в коде. Почему элементы массива не сравнивается и не складываются?... Спасибо
double Open[60],High[60],Lo[60,Close[60]; int to_copy=60;Comment(High[10],". ",candle);candle дает результат 0 нольДоброго всем интернета и здоровья.
Вопрос, что я делаю не так? Массивы (СТАТИЧЕСКИЕ) заполняются, а расчет дает 0 (ноль). Подскажите , чего нет у меня в коде. Почему элементы массива не сравнивается и не складываются?... Спасибо
1) В цикле есть выход за рамки массива - если размер буфера 60, то последний индекс будет 59, так как первым индексом является 0
2) Код не полный - например как определяется Tf и чем был инициализирован candle?
* при копировании цен индексация смещается на единицу, так как вы копируете 60 элементов начиная с первого индекса, то есть цены первого закрытого бара уже будут под индексом 0
Как работает функция
IsStopped();... и какой перечень задач выполняет?
В справке написано - "Проверяет принудительное завершение работы mql5-программы". То есть она как бы "смотрит" на какое-то количество строк кода вперёд и проверят корректность всего что угодно? Как устанавливается область её ответственности (например на строку или 10 строк)?
Я думал что она только не позволяет циклу выйти за рамки массива, но я увидел её ещё в коде FAMA перед копированием цен High и Low
Как работает функция
... и какой перечень задач выполняет?
В справке написано - "Проверяет принудительное завершение работы mql5-программы". То есть она как бы "смотрит" на какое-то количество строк кода вперёд и проверят корректность всего что угодно? Как устанавливается область её ответственности (например на строку или 10 строк)?
Я думал что она только не позволяет циклу выйти за рамки массива, но я увидел её ещё в коде FAMA перед копированием цен High и Low
Никуда она не смотрит... Там же всё чётко написано. Проверяет флаг... Перечитайте.
Как работает функция
... и какой перечень задач выполняет?
В справке написано - "Проверяет принудительное завершение работы mql5-программы". То есть она как бы "смотрит" на какое-то количество строк кода вперёд и проверят корректность всего что угодно? Как устанавливается область её ответственности (например на строку или 10 строк)?
Я думал что она только не позволяет циклу выйти за рамки массива, но я увидел её ещё в коде FAMA перед копированием цен High и Low
если происходит остановка MQL-программы, то будет выставлен флаг _StopFlag , который можно проверить как используя предопределенную переменную так и ф-цию IsStopped() - разницы нет, что удобно то и используйте
после выставления флага _StopFlag , MQL-программе дается незначительное время на остановку, затем терминал принудительно выгрузит ее
самое распростаренненое исполльзование - зацикленные скрипты, пишется не
а лучше написать так:
ну бывает еще в затратных расчетах или в больших в циклах используют
Всем по привету.
Подскажите возможно ли перебрать в цикле переменные с именами: L1, L2, L3 ... Ln для записи в двухмерный массив
1) В цикле есть выход за рамки массива - если размер буфера 60, то последний индекс будет 59, так как первым индексом является 0
2) Код не полный - например как определяется Tf и чем был инициализирован candle?
* при копировании цен индексация смещается на единицу, так как вы копируете 60 элементов начиная с первого индекса, то есть цены первого закрытого бара уже будут под индексом 0
СПАСИБО за ответ. Полный код. Увеличил статический размер массива. Запись контроля нуля в операторах убрал... Общая "болванка". Пока хочу понять ПОЧЕМУ НЕ СЧИТАЕТ сложение. Чего теперь в моем коде нет? Спасибо за подсказки. Со статическими массивами в mql5 еще не работал.....
КОД ОБНОВИЛ . Вопрос тот же...
Comment("indexmass ",indexmass," Open ",Open[10]," candle ",candle," averpips ",averpips);Всем по привету.
Подскажите возможно ли перебрать в цикле переменные с именами: L1, L2, L3 ... Ln для записи в двухмерный массив
удалил пост - Вы знаете про массивы
но все равно нельзя
как вариант макроподстановку написать, конкретный пример напишите - может кто напишет макрос под Вашу задачу, я плохо макроподстановки пишу
Люди!!! Подскажите ... )))
Полный код. Увеличил статический размер массива. Запись контроля нуля в операторах убрал... Общая "болванка". Пока хочу понять ПОЧЕМУ НЕ СЧИТАЕТ сложение. Чего теперь в моем коде нет? Спасибо за подсказки. Со статическими массивами в mql5 еще не работал.....
КОД ОБНОВИЛ . Вопрос тот же...
СПАСИБО за ответ. Полный код. Увеличил статический размер массива. Запись контроля нуля в операторах убрал... Общая "болванка". Пока хочу понять ПОЧЕМУ НЕ СЧИТАЕТ сложение. Чего теперь в моем коде нет? Спасибо за подсказки. Со статическими массивами в mql5 еще не работал.....
КОД ОБНОВИЛ . Вопрос тот же...
Я с индикаторами на ВЫ, но это просто лишнее. Это уже есть )))