Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 695
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Почему-то не получается выловить в цикле бар, который начинается в 15 часов.
Если в качестве условия пишу if(i<24) в лог выводится время каждого бара за сутки, а нужное условие не выполняется:
А индикатор на каком таймфрейме запускаете?
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Любые вопросы новичков по MQL4, помощь и обсуждение по алгоритмам и кодам
Artyom Trishkin, 2018.11.17 20:33
А индикатор на каком таймфрейме запускаете?
Часовик в обоих случаях.
Часовик в обоих случаях.
Работает:
Спасибо, но так мудрёно пишите для того кто не отягощен опытом и знаниями просто капец :-)
BufferHour[i]=(hour==hour_req ? (hour>0 ? hour : 0.1) : 0);
Для чего при передаче данных в буфер делать проверку hour>0? И если не выполняется, почему назначается 0.1?
Я хотел делать подсветку на основном чарта, но не линией, а порядковым днем недели пн, вт, ср... через SetIndexArrow(0, 140); (может конечно есть более простой способ, но пока ничего другого не придумалось), но почему-то не могу заставить ваш код работать в четверке в основном окне, а в пятерке такого свойства уже нет.
Спасибо, но так мудрёно пишите для того кто не отягощен опытом и знаниями просто капец :-)
Для чего при передаче данных в буфер делать проверку hour>0? И если не выполняется, почему назначается 0.1?
Я хотел делать подсветку на основном чарта, но не линией, а порядковым днем недели пн, вт, ср... через SetIndexArrow(0, 140); (может конечно есть более простой способ, но пока ничего другого не придумалось), но почему-то не могу заставить ваш код работать в четверке в основном окне, а в пятерке такого свойства уже нет.
Буфер же заполняется значением часа. И если час равен нулю, то гистограмма не нарисуется. Значит нужно проверить равен ли час нулю (в настройках задали искать нулевой час), и если он равен нулю, то вводить в буфер не значение часа (ноль), а 0.1 - чтобы отобразить столбец гистограммы. При этом в окне данных значение будет показано не 0.1, а 0, так как Digits индикатора задан нулевым.
Спасибо, но так мудрёно пишите для того кто не отягощен опытом и знаниями просто капец :-)
Для чего при передаче данных в буфер делать проверку hour>0? И если не выполняется, почему назначается 0.1?
Я хотел делать подсветку на основном чарта, но не линией, а порядковым днем недели пн, вт, ср... через SetIndexArrow(0, 140); (может конечно есть более простой способ, но пока ничего другого не придумалось), но почему-то не могу заставить ваш код работать в четверке в основном окне, а в пятерке такого свойства уже нет.
PlotIndexSetInteger(0,PLOT_ARROW,140);
Но вам нужно создать количество буферов, равных количеству недель. И каждому буферу задать код стрелки от 140 до 149 - 1,2,3,4,5,6,7,8,9,10 - десять недель разве хватит на год? Это же всего 70 дней. Или как вы хотели?
то терминал вешается и приходится его перезапускать.
Помогите пожалуйста советом почему это происходит а то не могу понять куда копать.
И может быть кто нибудь подскажет методу как вычислять места в программах которые медленно выполняются?
Заранее благодарен за советы!
Это оригинал.А ещё ниже он же с моими изменениями.
//================
то терминал вешается и приходится его перезапускать.
Помогите пожалуйста советом почему это происходит а то не могу понять куда копать.
И может быть кто нибудь подскажет методу как вычислять места в программах которые медленно выполняются?
Заранее благодарен за советы!
Это оригинал.А ещё ниже он же с моими изменениями.
//================
Верните все назад, не мучайте компьютер
iBandsOnArray, iStdDevOnArray рассчитанные на данных, хранящихся в массиве
Массив же, заполняется в 1 цикле
Верните все назад, не мучайте компьютер
iBandsOnArray, iStdDevOnArray рассчитанные на данных, хранящихся в массиве
Массив же, заполняется в 1 цикле
1. Верните все назад, не мучайте компьютер .
Извините но вернуть не получиться,необходимо что бы индикатор считал слева на право.
А я его и не мучаю, я его использую по прямому назначению.
2.iBandsOnArray, iStdDevOnArray рассчитанные на данных, хранящихся в массиве
Ну да они рассчитываются на данных из массива bbMacd[] и что далее?
3.Массив же, заполняется в 1 цикле
В одном или в первом?
Вы хотите сказать что для заполнения одного массива нужен персональный цикл в котором этот
массив заполняется и более никакие операции производить нельзя?
Для меня важно выяснить почему происходит замедление работы индикатора и как вычислять те места где это происходит.
Вопросов стало больше а ответов нет.
К сожалению Вы так и не подсказали.
Как отключить переинициализацию при смене таймфрема советника?
тут есть такое:
https://www.mql5.com/ru/forum/170952/page61#comment_6132824
Для mql4 это тоже верно?