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

 
Roman Sharanov:
Можно ли каким то образом сделать 2 функции OnTimer с различными периодами?

С какими именно "различными"?

 
Roman Sharanov:
Можно ли каким то образом сделать 2 функции OnTimer с различными периодами?

можно сделать один таймер, и в нём проверять несколько периодов

 
Vitaly Muzichenko:

С какими именно "различными"?

в 1 минуту и 5 минут например

 
Roman Sharanov:

в 1 минуту и 5 минут например

Создать таймер с более мелким периодом, а в нём делать проверку более длительного

datetime Delay;

void OnTimer() {

// Delay
  if(Delay<TimeLocal()) {
   PlaySound("alert.wav");
   Delay=TimeLocal()+300; // 300 сек = 5 минут
  }
//-
}
 
Igor Makanu:

из индикатора получают данные из индикаторных буферов

из графических элементов можно получить все данных из скрипта, эксперта, индикатора, нужно знать имя графического элемента или перебирать все графические элементы

универсальный метод - обмен данными или через глобальные переменные терминала или через файл

просто изменить input переменные из другой MQL-программы нельзя


строкой можно, и потом через запятую вводить числа, но не знаю сколько максимальная длина строки - проверять нужно

Вероятно, это случай тяжелой  и продолжительной болезни и критической безграмотности отвечающего. 

Ты сам то понял, что ты мне написал, чтобы я понял?

В школе, наверное, ты совсем не учился, и русского языка совсем не знаешь.

Цитирую тебе из описания языка:

https://www.mql5.com/ru/docs/basis/variables/global

Инициализация глобальных переменных производится однократно после загрузки программы в память клиентского терминала и перед первой обработкой события Init.

Понимаешь, что означает русское слово  "однократно" - или у тебя с этим тоже "напряженка" ?

Прежде, чем отвечать "новичкам" на форуме, подучи русский язык и язык программирования MQL. И не лезь "со свиным рылом в калашный ряд".

А для форумчан даю ссылку на хорошую статью Алексея Субботина на эту тему:

ПЕРЕДАЧА ДАННЫХ МЕЖДУ ИНДИКАТОРАМИ - ПРОСТОЕ РЕШЕНИЕ НАБОЛЕВШЕЙ ПРОБЛЕМЫ

15 января 2010, 10:35

https://www.mql5.com/ru/articles/19

Вообще говоря, в  языке MQL - как я понял из описания, передача данных между индикаторами и скриптами НЕ ПРЕДПОЛАГАЕТСЯ.

Поэтому нужно изощряться, и  придумывать какие-то свои способы передачи данных из одной секции программы в другую. 

Документация по MQL5: Основы языка / Переменные / Глобальные переменные
Документация по MQL5: Основы языка / Переменные / Глобальные переменные
  • www.mql5.com
Глобальные переменные создаются путем размещения их объявлений вне описания какой-либо функции. Глобальные переменные определяются на том же уровне, что и функции, т. е. не локальны ни в каком блоке. Область видимости глобальных переменных - вся программа, глобальные переменные доступны из всех функций, определенных в программе...
 
neverness:

Вероятно это случай тяжелой  и продолжительной болезни и критической безграмотности отвечающего. 

Ты сам то понял, что ты мне написал, чтобы я понял?

В школе, наверное, ты совсем не учился, и русского языка совсем не знаешь.

Цитирую тебе из описания языка:

https://www.mql5.com/ru/docs/basis/variables/global

Инициализация глобальных переменных производится однократно после загрузки программы в память клиентского терминала и перед первой обработкой события Init.

Понимаешь, что такое "однократно" - или у тебя с этим тоже "напряженка".

Прежде, чем отвечать "новичкам" на форуме, подучи русский язык и язык программирования MQL. И не лезь "со свиным рылом в калашный ряд".


ну ну, у Вас с поиском проблемы и хроническая наглость, граничащая с неадекватностью

https://www.mql5.com/ru/docs/globals

Вы безнадежны, но попробую обучить невоспитанного типа, вот еще для понимания https://www.mql5.com/ru/docs/basis/variables/global

Документация по MQL5: Глобальные переменные терминала
Документация по MQL5: Глобальные переменные терминала
  • www.mql5.com
Глобальные переменные существуют в клиентском терминале 4 недели с момента последнего обращения, после этого автоматически уничтожаются. Обращением к глобальной переменной считается не только установка нового значения, но и чтение значения глобальной переменной.
 
neverness:

Вероятно, это случай тяжелой  и продолжительной болезни и критической безграмотности отвечающего. 

...

Теперь попробуйте без оскорблений и высокомерия.
Хамства на форуме не потерплю.
 
Igor Makanu:

ну ну, у Вас с поиском проблемы и хроническая наглость, граничащая с неадекватностью

https://www.mql5.com/ru/docs/globals

Вы безнадежны, но попробую обучить невоспитанного типа, вот еще для понимания https://www.mql5.com/ru/docs/basis/variables/global

Покажите мне, ГДЕ ЗДЕСЬ ПЕРЕДАЧА ДАННЫХ ИЗ ОДНОГО ИНДИКАТОРА В ДРУГОЙ ?

Глобальные переменные - это общее неизменяемое поле данных, которое обладает свойством видимости из всех областей и запускаемых программ.

И инициализируется это поле всего один-единственный раз при запуске программы.

Где здесь передача данных?

Давайте смоделируем простую ситуацию.

Возьмем два разных индикатора, и опишем в них одни и те же глобальные переменные, но с разными значениями.

Теперь запускаем первый индикатор с инициализацией глобальных значений.

После этого запускаем второй индикатор, тоже с инициализацией но уже с другими значениями.

В результате получаем фатальную ошибку.

И что мы таким образом "передали" ? - Сообщение о фатальной  ошибке ?

 
neverness:

Покажите мне, ГДЕ ЗДЕСЬ ПЕРЕДАЧА ДАННЫХ ИЗ ОДНОГО ИНДИКАТОРА В ДРУГОЙ ?

Глобальные переменные - это общее неизменяемое поле данных, которое обладает свойством видимости из всех областей и запускаемых программ.

И инициализируется это поле всего один-единственный раз при запуске программы.

Где здесь передача данных?

https://www.mql5.com/ru/docs/globals

Группа функций, предназначенных для работы с глобальными переменными.

Не следует путать глобальные переменные клиентского терминала с переменными, объявленными на глобальном уровне mql5-программы.

Глобальные переменные существуют в клиентском терминале 4 недели с момента последнего обращения, после этого автоматически уничтожаются. Обращением к глобальной переменной считается не только установка нового значения, но и чтение значения глобальной переменной.

Глобальные переменные клиентского терминала доступны одновременно из всех mql5-программ, запущенных на клиентском терминале.


дальше самостоятельно, я не собираюсь учить Вас читать техническую информацию, у Вас был вопрос как передать данные между MQL-программами, я написал, теперь можете или читать или биться головой, ну или еще какие методики получения информации существуют у таких мерзких типов как Вы
Документация по MQL5: Глобальные переменные терминала
Документация по MQL5: Глобальные переменные терминала
  • www.mql5.com
Глобальные переменные существуют в клиентском терминале 4 недели с момента последнего обращения, после этого автоматически уничтожаются. Обращением к глобальной переменной считается не только установка нового значения, но и чтение значения глобальной переменной.
 
Igor Makanu:

https://www.mql5.com/ru/docs/globals

дальше самостоятельно, я не собираюсь учить Вас читать техническую информацию, у Вас был вопрос как передать данные между MQL-программами, я написал, теперь можете или читать или биться головой, ну или еще какие методики получения информации существуют у таких мерзких типов как Вы

Я так Вам сразу сказал, что не следует учить других, когда сами не имеете об этом никакого представления.

Помощь должна быть "квалифицированной", а не от "фонаря" !

Причина обращения: