Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 578
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Не сам придумал "Только обязательно в OnTimer() делай обновление данных чтобы работал ваш код."
Как нужно?
У вас оффлайн-график?
Подскажите, как получить донные индикатора с таймфрейма, отличного от того, на котором висит сова?
1. Вы зачем птичку повесили? Не жалко?
2. Справку хоть раз открывали? Получить данные индикатора в советнике с любого таймфрейма не представляет никакой проблемы, так как первые два параметра функций получения данных индикатора как раз и служат для указания символа и периода графика, с которых необходимо получать значения.
Ведь даже когда вы набираете код в редакторе, то вам весьма навязчиво открывается список формальных переменных функции - и там во всплывающей подсказке видно - символ и таймфрейм. Странно, что вы не обратили на них внимания.
У вас оффлайн-график?
Нет.
Нет.
Для чего тогда постоянный рефреш без надобности?
Вам нужно время? Время можете получить либо последнего тика: TimeCurrent(), либо последнее локальное время: TimeLocal()
Если будете получать время последнего тика в выходные, то таймер тут не поможет - время будет последнего тика пятницы, ну или последнего тика последнего рабочего дня. А TimeLocal() не даст вам время сервера - нужно пересчитывать со смещением.
Впрочем, я не знаю что именно вы хотите получить в итоге.
1. Вы зачем птичку повесили? Не жалко?
2. Справку хоть раз открывали? Получить данные индикатора в советнике с любого таймфрейма не представляет никакой проблемы, так как первые два параметра функций получения данных индикатора как раз и служат для указания символа и периода графика, с которых необходимо получать значения.
Ведь даже когда вы набираете код в редакторе, то вам весьма навязчиво открывается список формальных переменных функции - и там во всплывающей подсказке видно - символ и таймфрейм. Странно, что вы не обратили на них внимания.
2018.07.04 22:17:38.398 2016.11.10 13:00:00 Arap01 EURUSD,H1: Округляем 44.53781512605145 45.0 Это данные стохастика в "нормальном" режиме. т.е так:
2=iStochastic(NULL,0,K,D,slowing,Average_method,price_field,MODE_MAIN,2);
здесь я прошу М5 2=iStochastic(NULL,5,K,D,slowing,Average_method,price_field,MODE_MAIN,2);
получаю 2018.07.04 22:23:05.680 2016.11.10 13:00:00 Arap01 EURUSD,H1: Округляем 0.0 0.0
Впрочем, я не знаю что именно вы хотите получить в итоге.
Алерт, хочу, за две секунды до закрытия бара. Выходные не буду работать.
Так мне без тика нужен алерт за две секунды до закрытия бара.
Это не сделать просто, нужно запускать более точный таймер (хотя бы 500 мс) и предварительно делать синхронизацию локального времени и серверного.
Вот я вам уже рассказывал:
в момент прихода тика считаем разницу TimeCurrent()-TimeLocal()
(это делается один раз для синхронизации времени локального и серверного)
- это смещение относительно брокера, если это смещение в дальнейшем изменится, значит нужно пересчитывать время заново;
- при старте советника, (или появлении бара Д1) пересчитываем все нужные времена заново, в локальное время, учитывая смещение;
- ждём то что "насчитали" в таймере, попутно проверяя рассинхронизацию, пропадание связи с брокером, перевод локальных стрелок.
Это не сделать просто, нужно запускать более точный таймер (хотя бы 500 мс) и предварительно делать синхронизацию локального времени и серверного.
при этом можно ловить +/- 1 секундуВот я вам уже рассказывал:
Спасибо. Как сделать чтобы время было в секундах, до закрытия бара М5. Сейчас отображает Н1.