Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 910

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Почему у меня некорректно скопированы цены закрытия от указанного времени с указанным количеством. MQL5
Почему у меня некорректно скопированы цены закрытия от указанного времени с указанным количеством. MQL5
А где в mql5 вы нашли Time[] или это пользовательский массив?
А где в mql5 вы нашли Time[] или это пользовательский массив?
Да это пользовательский массив, в который я скопировал время открытия баров того таймфрейма, в окне которого находится индикатор. Или как иначе указывать дату (особенно с учётом того что в будущем она должна будет комбинироваться несколькими вариантами)?
Да это пользовательский массив, в который я скопировал время открытия баров того таймфрейма, в окне которого находится индикатор. Или как иначе указывать дату (особенно с учётом того что в будущем она должна будет комбинироваться несколькими вариантами)?
Да, что-то не так с копированием "чужого" тф. Я начал один индикатор по нескольким тф, и заметил что не сразу происходит копирование CopyRates(). Видимо из-за неподготовленных данных по периоду. Просто повторное компилирование исправляет ситуёвину. Получается, что надо сначала "дёрнуть" период, а потом копировать. Но до этого руки не дошли. Завтра буду проверять. Но надеюсь, что я прав.
И вопрос на засыпку: зачем копировать время открытия баров того таймфрейма, в окне которого находится индикатор если вместо этого можно использовать time[]. И не следует забывать о направлении индексирования.
И вопрос на засыпку: зачем копировать время открытия баров того таймфрейма, в окне которого находится индикатор если вместо этого можно использовать time[]. И не следует забывать о направлении индексирования.
Time используется за рамками OnCalculate. Направление индексации ArraySetAsSeries(...,true) во всех буферах
Зачем это? - я сделал индикатор тренда (выложил в CodeBase), он "шумный". Я сделал замедление - недостаточно. Теперь хочу сделать так чтобы значения на каждой свече младшего таймфрейма вычислялись от баров старшего таймфрейма
Что ты имел ввиду под словом "дёрнуть"?
Time используется за рамками OnCalculate. Направление индексации ArraySetAsSeries(...,true) во всех буферах
Зачем это? - я сделал индикатор тренда (выложил в CodeBase), он "шумный". Я сделал замедление - недостаточно. Теперь хочу сделать так чтобы значения на каждой свече младшего таймфрейма вычислялись от баров старшего таймфрейма
Что ты имел ввиду под словом "дёрнуть"?
"Дёрнуть" это не моё выражение. Так я читал на этом форуме периодическое обращение к данным нужного периода.
Помню, даже я в гневе от того, что не получается, выражался "дёргал период как кота за причинное место", но не помогает. После многих обсуждений проблемы завернул копирование в цикл do while. Если скопировалось с первой попытки, ну и слава Богу. Если-же нет, то даём N попыток через пустой цикл for на 200-500 итераций, кажется этого достаточно. Можно увеличить...
А тот индикатор, о котором я сказал чуть раньше, ещё в стадии самого начала. Потому и не сделано как надо. Просто проверял сколько баров старшего тф нужно на доступные бары текущего периода. У меня получилось, что на 5000 баров М5 приходится 17 дневных. А если это не учитывать, то копируются 5000 текущего М5 периода, 5000 4х часов и 5000 дневных. Слишком много лишних...
Ещё немаловажное замечание: Некоторое время назад можно было один раз перевернуть индексацию массива, а теперь приходится на каждом чихе перенаправлять. Где-то я об этом уже писал. По этому я предпочитаю работать в умолчательном варианте. Привыкнуть не сложно.
GlobalVariable по умолчанию может быть только double
Если значение close мне необходимо без дробной части, будет ли правильно писать так:
"Дёрнуть" это не моё выражение. Так я читал на этом форуме периодическое обращение к данным нужного периода.
Помню, даже я в гневе от того, что не получается, выражался "дёргал период как кота за причинное место", но не помогает. После многих обсуждений проблемы завернул копирование в цикл do while. Если скопировалось с первой попытки, ну и слава Богу. Если-же нет, то даём N попыток через пустой цикл for на 200-500 итераций, кажется этого достаточно. Можно увеличить...
А тот индикатор, о котором я сказал чуть раньше, ещё в стадии самого начала. Потому и не сделано как надо. Просто проверял сколько баров старшего тф нужно на доступные бары текущего периода. У меня получилось, что на 5000 баров М5 приходится 17 дневных. А если это не учитывать, то копируются 5000 текущего М5 периода, 5000 4х часов и 5000 дневных. Слишком много лишних...
Ещё немаловажное замечание: Некоторое время назад можно было один раз перевернуть индексацию массива, а теперь приходится на каждом чихе перенаправлять. Где-то я об этом уже писал. По этому я предпочитаю работать в умолчательном варианте. Привыкнуть не сложно.
Подожди, мы что-то пропустили или неправильно друг друга поняли, ведь
Alert(copied);
... возвращает у меня 5, что правильно, а вот значения в буфере у меня все одинаковые
Подожди, мы что-то пропустили или неправильно друг друга поняли, ведь
... возвращает у меня 5, что правильно, а вот значения в буфере у меня все одинаковые
Тогда надо разобраться с размерностью массива MPI и его направлением индексации, если копируешь 5 элементов, то почему цикл до 100?
Я в таких случаях предпочитаю пользоваться отладчиком. Получил массив и проверяй без перезапуска все поля массива до одури...
Тогда надо разобраться с размерностью массива MPI и его направлением индексации, если копируешь 5 элементов, то почему цикл до 100?
Я в таких случаях предпочитаю пользоваться отладчиком. Получил массив и проверяй без перезапуска все поля массива до одури...
100-ку я поставил потому-что думал что то что мне нужно с 59 начнётся, но при 6-ке то-же самое